帮助文档
专业提供香港服务器、香港云服务器、香港高防服务器租用、香港云主机、台湾服务器、美国服务器、美国云服务器vps租用、韩国高防服务器租用、新加坡服务器、日本服务器租用 一站式全球网络解决方案提供商!专业运营维护IDC数据中心,提供高质量的服务器托管,服务器机房租用,服务器机柜租用,IDC机房机柜租用等服务,稳定、安全、高性能的云端计算服务,实时满足您的多样性业务需求。 香港大带宽稳定可靠,高级工程师提供基于服务器硬件、操作系统、网络、应用环境、安全的免费技术支持。
服务器资讯 / 香港服务器租用 / 香港VPS租用 / 香港云服务器 / 美国服务器租用 / 台湾服务器租用 / 日本服务器租用 / 官方公告 / 帮助文档
keepalived配置虚拟ip(VRRP)实现双机热备以及自动切换主备
发布时间:2024-03-10 07:16:49   分类:帮助文档
keepalived配置虚拟ip(VRRP)实现双机热备以及自动切换主备


需求
1、我有两个服务器,一台A是正常处理数据的,还有一台B是备用机器;A如果网络异常或者崩了,B开启采集技术
2、但是其他人访问的ip地址,如果从A变成B,地址改变了,会影响业务需求的;所以需要A与B共用一个Ip地址,A服务器崩了,B还在,不影响对外的业务

方案实现
我有两台服务器,分别是11.11.1.110 和11.11.1.112
1.安装keepalived,两台机器都要安装
yum install keepalived

 2、两台服务器都安装完毕以后,可以下面的操作了
      修改配置文件        vi  /etc/keepalived/keepalived.conf
     进入以后,删除所有的行,输入命令1000dd  
    
 输入
vrrp_script chk_nginx {
script "/home/keepalived/nginx_check.sh"
interval 2
weight -20
}

vrrp_instance VI_1 {
state BACKUP
interface ens192
virtual_router_id 100
mcast_src_ip 11.11.1.112
priority 99
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}

track_script {
chk_nginx
}
virtual_ipaddress {
11.11.1.116
}
}

耐心解释一下:
vrrp_script chk_nginx 这里是一个执行脚本,定时2S执行一次,这里的演示我没有创建这个脚本,所以它不会执行,也就是这句不会生效了。因此你如果不需要脚本的时候,可以把这句连同track_script 这句一起去掉。留着也不会有什么影响。

state BACKUP 表示这两个服务器都是备用服务器。

interface ens192 表示当前使用的网卡,通过ifconfig可以查看到,这我用的是ens192。

virtual_router_id 100 这个是个分组标记,在一个网内,所有的virtual_router_id为100的服务器自动分到一个组里面,由于这里面我把两台服务器的status都设置成为了BACKUP,那么这两台服务器就会利用priority这个值来决定谁是主服务器,谁是备用服务器,高的那个会抢占当前的vip,也就是它就会变成主服务器。

mcast_src_ip 填写你当前机器的真实ip即可

advert_int 1 没有仔细研究,应该是两台服务器之间的心跳间隔

authentication 就用默认的就可以了。

track_script 和vrrp_script chk_nginx 配合使用的。

virtual_ipaddress 两台机器共有的vip,注意,要和两台服务器在一个网关里面。
根据自己的情况,修改 ,然后保存退出:wq

另一台服务器的设置如下  
vrrp_script chk_nginx {
script "/home/keepalived/nginx_check.sh"
interval 2
weight -20
}

vrrp_instance VI_1 {
state BACKUP
interface ens192
virtual_router_id 100
mcast_src_ip 11.11.1.110
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}

track_script {
chk_nginx
}
virtual_ipaddress {
11.11.1.116
}
}
A与B虚拟的ip地址是11.11.1.116
priority 100比priority 99的级别要高,所以100是主机,99是从机;

两台机器都重启keepalived
systemctl restart keepalived
并且设置开机自重启
systemctl enable keepalived.service

测试配置是否成功!
1、我的两台服务器上都有http服务器,因此只需要用postman请求这个接口;
     打印请求参数,两台机器都完好的情况下,priority 100的肯定是主机,
     会出现打印的信息,priority 99的是从机,不会启用;
2、关闭priority 100的机器;这个时候同样的操作,用postman请求这个接口;
    若priority 99的出现打印的请求参数,说明成功!!!若不出现,说明不成功!!
    因为此时priority 100的机器已经关机了,priority 99就是唯一的主机了!!!

    


香港云服务器租用推荐
服务器租用资讯
·广东云服务有限公司怎么样
·广东云服务器怎么样
·广东锐讯网络有限公司怎么样
·广东佛山的蜗牛怎么那么大
·广东单位电话主机号怎么填写
·管家婆 花生壳怎么用
·官网域名过期要怎么办
·官网邮箱一般怎么命名
·官网网站被篡改怎么办
服务器租用推荐
·美国服务器租用
·台湾服务器租用
·香港云服务器租用
·香港裸金属服务器
·香港高防服务器租用
·香港服务器租用特价