原作者:http://www.verydemo.com/demo_c152_i78807.html
摘要: 使用 rhel5.8,mysql,keepalived,haproxy 搭建一个集高可用、负载均衡的集群;也有使用到 mysql 的二进制复制来保持数据一致性;避免了单节点故障,也提供设备的利用率;虽然这个实验只有两台设备,但可以此为例,理解概念后再放大到其它环境也可以;
目标:使用两台主机实现 Mysql 的负载均衡及冗余,并做到双主互备;
环境:rhel5.8,mysql-5.0.77,keepalived-1.2.7,haproxy-1.4.20;
说明:
keepalived 实现通过 vrrp协议,通过使一个虚拟IP地址(或称浮动IP)在主备设备间的切换来达到主机冗余;
而客户机通过访问这个虚拟IP 来获取服务;
haproxy 是一款负载均衡软件,用于将请求按策略转发给不同主机,达到负载均衡的效果;
可以实现网络层或应用层上的判断分配;
mysql 开启二进制日志,做到数据库之间的双向复制,保持数据一致性;
#提醒一下,实际生产环境没人会这样搭建的,仅通过这个实验来理解这些概念,希望阅者能有所获;
server1_ip=192.168.5.11
server2_ip=192.168.5.12
server_vip=192.168.5.111
================================================
#此处关闭了防火墙,开启则另配置相应规则
service iptables stop
chkconfig iptables off
ls /opt/soft/ #提取准备软件到此处
haproxy-1.4.20.tar.gz keepalived-1.2.7.tar.gz
mkdir /opt/keepalived
mkdir /opt/scripts/ #此实验用到脚本目录
mkdir /opt/log/ #此实验日志文件夹
=================================================
[install_mysql]
#在两台主机上安装 mysql ,此处使用 rpm 包安装,yum环境可以搭本地源;
yum install -y mysql-server
service mysqld start
=======================================================
[create_mysql_test_table]
#分别创建一张相同名称和字段的…………………………………………………………………………