运维服务小笔记

If not now,when?If not me,who?

十月 23rd, 2015

阿里云下配置keepalive,利用HAVIP实现HA

2,106 views, linux, Server, by 川望.

包括阿里云在内的很多云环境,因为不支持浮动IP广受诟病。目前阿里云在VPC网络下发布了HAVIP,能够实现arp宣告IP。这样也就让自己搭建HA成为了可能,有幸拿到了内测权限体验了一下。(classical网络依然不支持)

测试环境:

1

配置完毕后的拓扑如下:

4
环境搭建完毕后,登陆主备ECS服务器,分别配置nginx+keepalived

MASTER服务器(nginx1)配置文件/etc/keepalived/keepalived.conf内容以及解释如下:

BACKUP服务器(nginx2)的配置需要修改:

其它保持一致即可

为了实现nginx服务异常的时候能够自动切换,需要自己写一个脚本,脚本没有硬性的要求,能够实现目标即可,这里 监控nginx进程数为例:

测试:
NGINX1/192.168.1.1的priority 为101,NGINX2/192.168.1.2的priority为100,这时候访问HAVIP绑定的EIP:http://121.43.187.37/可以看到访问到了服务器NGINX1,如下:

5

到HAVIP控制台查看,192.168.1.1的服务器为主服务器

111

这时候我们KILL掉nginx1服务器的nginx服务

查看日志,发送了移除VIP的报文:

这时候访问http://121.43.187.37/,可以看到访问自动切换到了NGINX2

6

到HAVIP控制台查看,192.168.1.2的服务器为主服务器

2222

重新启动nginx1的nginx和keepalive服务
查看日志可以看到keepalive重新发送了IP宣告的报文

重新访问http://121.43.187.37/测试,重新访问到了服务器NGINX1,到HAVIP控制台查看,192.168.1.1的服务器重新夺回了控制权,成为了为主服务器

111
这样就实现了阿里云环境下的HA切换。
实际测试,阿里云的多个HAVIP可以绑定到同样的两台机器,可以配置多组vrrp_instance来实现双主。或者两台服务器同时为两个业务服务,避免资源浪费。同时能够做到主备


Back Top

回复自“阿里云下配置keepalive,利用HAVIP实现HA”

  1. #VIP,在阿里云下就是刚才创建的HAVIP
    virtual_ipaddress {
    192.168.1.4
    }

    这里的ip不是192.168.1.3才对么?

    barbery 回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注

注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。

无觅相关文章插件,快速提升流量