Keepalived+LVS实现IPVS的高可用

一、IPVS相关配置

1、虚拟服务器配置结构

virtual_server IP port {
   ...
 real_server {
 ...
 }
 real_server {
 ...
 }
 …
}

2、virtual server (虚拟服务器)的定义格式

virtual_server IP port     #定义虚拟主机IP地址及其端口
virtual_server fwmark int #ipvs的防火墙打标,实现基于防火墙的负载均衡集群
virtual_server group string #使用虚拟服务器组

3、虚拟服务器配置

virtual_server IP port { #VIP和PORT
 delay_loop <INT> #检查后端服务器的时间间隔
 lb_algo rr|wrr|lc|wlc|lblc|sh|dh #定义调度方法
 lb_kind NAT|DR|TUN #集群的类型,注意要大写
 persistence_timeout <INT> #持久连接时长
 protocol TCP|UDP|SCTP #指定服务协议,一般为TCP
 sorry_server <IPADDR> <PORT> #所有RS故障时,备用服务器地址
 real_server <IPADDR> <PORT> {          #RS的IP和PORT
 weight <INT>   #RS权重
 notify_up <STRING>|<QUOTED-STRING>   #RS上线通知脚本
 notify_down <STRING>|<QUOTED-STRING> #RS下线通知脚本
 HTTP_GET|SSL_GET|TCP_CHECK|SMTP_CHECK|MISC_CHECK { ... } #定义当前主机健康状
态检测方法
 }
}
#注意:括号必须分行写,两个括号写在同一行,如: }} 会出错

4、应用层检测

应用层检测:HTTP_GET|SSL_GET

HTTP_GET|SSL_GET {
 url {
   path <URL_PATH> #定义要监控的URL
   status_code <INT> #判断上述检测机制为健康状态的响应码,一般为 200
 }
 connect_timeout <INTEGER> #客户端请求的超时时长, 相当于haproxy的timeout server
 nb_get_retry <INT> #重试次数
 delay_before_retry <INT> #重试之前的延迟时长
 connect_ip <IP ADDRESS> #向当前RS哪个IP地址发起健康状态检测请求
 connect_port <PORT> #向当前RS的哪个PORT发起健康状态检测请求
 bindto <IP ADDRESS> #向当前RS发出健康状态检测请求时使用的源地址
 bind_port <PORT> #向当前RS发出健康状态检测请求时使用的源端口
}

 5、TCP监测

传输层检测:TCP_CHECK

TCP_CHECK {
     connect_ip <IP ADDRESS> #向当前RS的哪个IP地址发起健康状态检测请求
     connect_port <PORT> #向当前RS的哪个PORT发起健康状态检测请求
     bindto <IP ADDRESS> #发出健康状态检测请求时使用的源地址
     bind_port <PORT> #发出健康状态检测请求时使用的源端口
     connect_timeout <INTEGER> #客户端请求的超时时长
     #等于haproxy的timeout server   
}

二、IPVS高可用实现步骤

1、准备两台后端RS主机,完成配置

[root@realserver1 ~]# yum install httpd -y

[root@realserver1 ~]# echo RS1 - 172.25.254.110 > /var/www/html/index.html

[root@realserver2 ~]# yum install httpd -y

[root@realserver2 ~]# echo RS2 - 172.25.254.120 > /var/www/html/index.html

开启httpd服务:

systemctl start httpd

2、ka1、ka2配置keepalived

vim /etc/keepalived/keepalived.conf

策略:

 3、测试

(1)本地客户端测试:

(2)模拟故障:

 关闭rs1的httpd服务:

第一台RS1故障,自动切换至RS2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

new不出对象来

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值