你好,
在单击的情况,我们是在宿主机上安装了一个节点的keepalived,但是如果是集群,我的所有应用可能不和这个mysql集群在一个网络中,那安装单节点的keepalived,是不是高可用也没法保证,需要安装双节点的keepalived来保证数据库的高可用?
如果是安装双机的keepalived节点,ha中的keepalived是不是可以不用了安装了,直接在宿主机上对keepalived
进行配置,我设想的配置是如下,不知道是否正确:第一台宿主机上安装的keepalived的配置文件如:
vrrp_instance VI_1 {
state MASTER
interface ens33
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.99.150
}
}
virtual_server 192.168.99.150 8888 {
delay_loop 3
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 172.18.0.201 8888 {
weight 1
}
}
virtual_server 192.168.99.150 3306 {
delay_loop 3
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 172.18.0.201 3306 {
weight 1
}
}
第二台宿主机上keepalived的配置文件如下:vrrp_instance VI_1 {
state MASTER
interface ens33
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.99.150
}
}
virtual_server 192.168.99.150 8888 {
delay_loop 3
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 172.18.0.202 8888 {
weight 1
}
}
virtual_server 192.168.99.150 3306 {
delay_loop 3
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 172.18.0.202 3306 {
weight 1
}
}配置大体的意思,第一个宿主机上的keepalived,转发第一台上的haproxy(docker-swarm中的ip172.18.0.201)的负载,第二个宿主机上的keepalived转发第二台上的haproxy(docker-swarm中的ip172.18.0.202)的负载,然后两个keepalived抢占一个宿主机网段的一个“192.168.99.150”IP
不知以上配置是否合适,非常期待老师的解答。