Open v5tech opened 8 years ago
软件环境
安装
yum install keepalived yum install haproxy
修改c1上的/etc/keepalived/keepalived.conf
/etc/keepalived/keepalived.conf
global_defs { lvs_id haproxy } vrrp_script check_haproxy { script "killall -0 haproxy" interval 2 weight 2 } vrrp_instance VI { state MASTER interface eth0 virtual_router_id 100 priority 101 virtual_ipaddress { 192.168.64.100 } track_script { check_haproxy } }
修改c2上的/etc/keepalived/keepalived.conf
global_defs { lvs_id haproxy } vrrp_script check_haproxy { script "killall -0 haproxy" interval 2 weight 2 } vrrp_instance VI { state SLAVE interface eth0 virtual_router_id 100 priority 100 virtual_ipaddress { 192.168.64.100 } track_script { check_haproxy } }
分别启动c1、c2的HAProxy、Keepalived
service haproxy start service keepalived start
观察c1上的eth0
c1
eth0
[root@c1 keepalived]# ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:6f:9a:fa brd ff:ff:ff:ff:ff:ff inet 192.168.64.145/24 brd 192.168.64.255 scope global eth0 valid_lft forever preferred_lft forever inet 192.168.64.100/32 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe6f:9afa/64 scope link valid_lft forever preferred_lft forever
停掉c1上的HAProxy或Keepalived
HAProxy
Keepalived
[root@c1 keepalived]# service haproxy stop Redirecting to /bin/systemctl stop haproxy.service [root@c1 keepalived]# ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:6f:9a:fa brd ff:ff:ff:ff:ff:ff inet 192.168.64.145/24 brd 192.168.64.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe6f:9afa/64 scope link valid_lft forever preferred_lft forever
观察c2上的eth0
c2
[root@c2 keepalived]# ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:f8:5a:5b brd ff:ff:ff:ff:ff:ff inet 192.168.64.146/24 brd 192.168.64.255 scope global eth0 valid_lft forever preferred_lft forever inet 192.168.64.100/32 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fef8:5a5b/64 scope link valid_lft forever preferred_lft forever
可见IP192.168.64.100转向到了c2IP192.168.64.100漂移成功
192.168.64.100
测试
mysql --user=root --password=root --host=192.168.64.100 --port=3308 --execute="SELECT @@wsrep_node_name;" +-------------------+ | @@wsrep_node_name | +-------------------+ | c1 | +-------------------+ mysql --user=root --password=root --host=192.168.64.100 --port=3308 --execute="SELECT @@wsrep_node_name;" +-------------------+ | @@wsrep_node_name | +-------------------+ | c2 | +-------------------+ mysql --user=root --password=root --host=192.168.64.100 --port=3308 --execute="SELECT @@wsrep_node_name;" +-------------------+ | @@wsrep_node_name | +-------------------+ | c3 | +-------------------+
pen
启动pen
pen -r -l pen.log -p pen.pid 127.0.0.1:3838 \ 192.168.64.145:3306 \ 192.168.64.146:3306 \ 192.168.64.147:3306
测试负载
mysql --user=root --password=root --host=127.0.0.1 --port=3838 --execute="SELECT @@wsrep_node_name;" +-------------------+ | @@wsrep_node_name | +-------------------+ | c2 | +-------------------+ mysql --user=root --password=root --host=127.0.0.1 --port=3838 --execute="SELECT @@wsrep_node_name;" +-------------------+ | @@wsrep_node_name | +-------------------+ | c3 | +-------------------+ mysql --user=root --password=root --host=127.0.0.1 --port=3838 --execute="SELECT @@wsrep_node_name;" +-------------------+ | @@wsrep_node_name | +-------------------+ | c1 | +-------------------+
http://dasunhegoda.com/how-to-setup-haproxy-with-keepalived/833/
软件环境
安装
修改c1上的
/etc/keepalived/keepalived.conf
修改c2上的
/etc/keepalived/keepalived.conf
分别启动c1、c2的HAProxy、Keepalived
观察
c1
上的eth0
停掉
c1
上的HAProxy
或Keepalived
观察
c2
上的eth0
可见IP
192.168.64.100
转向到了c2
IP192.168.64.100
漂移成功测试
使用
pen
来做负载均衡启动
pen
测试负载
参考文档
http://dasunhegoda.com/how-to-setup-haproxy-with-keepalived/833/