IT评测·应用市场-qidao123.com
标题:
rocky9.2实现lvs(DR模式)+keepalived实现高可用的案例详解(双机热备、lvs负
[打印本页]
作者:
汕尾海湾
时间:
2024-10-27 12:19
标题:
rocky9.2实现lvs(DR模式)+keepalived实现高可用的案例详解(双机热备、lvs负
前言
想必能搜到这个也不是来看知识点的,这里就简朴形貌一下lvs的dr模式的工作原理,其他的就不过多阐述了,直接看操作步调就好,还是很详细的
lvs(DR模式)的工作原理
LVS DR(Direct Routing)模式通过一个负载均衡器的假造 IP 地点(VIP)接收客户端请求,然后将请求转发给后端真实服务器(RIP),而不经过负载均衡器的返回路径,真实服务器直接将相应发回客户端。这也是和nat模式的区别地点,nat模式则必要经过负载均衡器返回。DR这种模式进步了性能和资源使用率,但所有真实服务器必须在同一局域网内。
情况
体系主机名ip服务假造iprocky9.2lvs1192.168.10.11lvs+keepalived192.168.10.111rocky9.2lvs2192.168.10.12lvs+keepalived192.168.10.111rocky9.2web1192.168.10.13httpd无rocky9.2web2192.168.10.14httpd无rocky9.2client192.168.10.11仅访问使用无
必要留意的地方
这篇博文的操作部分是根据原先centos7版本的笔记来做的,改了一些部分,可能有一些多余的操作,但末了结果是没有问题的
实现过程
一、lvs1设置
1.dnf安装ipvsadm和keepalived
yum -y install ipvsadm keepalived
复制代码
2. 加载ip_vs模块
modprobe ip_vs
复制代码
3.修改内核参数,关闭icmp重定向
vim /etc/sysctl.conf
复制代码
net.ipv4.conf.all.send_redirects=0
net.ipv4.conf.default.send_redirects=0
net.ipv4.conf.ens33.send_redirects=0
复制代码
使设置收效
sysctl -p
复制代码
4.设置keepalived
主要有双机热备、lvs负载均衡、对后端服务器康健查抄
vim /etc/keepalived/keepalived.conf
复制代码
global_defs {
router_id LVS_DEVEL1
}
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.10.111
}
}
virtual_server 192.168.10.111 80 {
delay_loop 3
lb_algo rr
lb_kind DR
persistence_timeout 0
protocol TCP
real_server 192.168.10.13 80 {
weight 1
TCP_CHECK {
connect_timeout 10
retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 192.168.10.14 80 {
weight 1
TCP_CHECK {
connect_timeout 10
retry 3
delay_before_retry 3
connect_port 80
}
}
}
复制代码
5.启动keepalived服务
systemctl start keepalived
systemctl enable keepalived
复制代码
不出不测的话ip add
是能看到假造ip的
ip add
复制代码
二、lvs2设置
这里跟lvs1同步,区别仅在于keepalived设置文件
vim /etc/keepalived/keepalived.conf
复制代码
global_defs {
router_id LVS_DEiVEL2
}
vrrp_instance VI_1 {
state BACKUP
interface ens33
virtual_router_id 51
priority 99
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.10.111
}
}
virtual_server 192.168.10.111 80 {
delay_loop 3
lb_algo rr
lb_kind DR
persistence_timeout 0
protocol TCP
real_server 192.168.10.13 80 {
weight 1
TCP_CHECK {
connect_timeout 10
retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 192.168.10.14 80 {
weight 1
TCP_CHECK {
connect_timeout 10
retry 3
delay_before_retry 3
connect_port 80
}
}
}
复制代码
web1设置
1.设置假造ip
由于lvs是dr模式,以是这里也必要设置假造ip才行
本来想设置永世ip地点的,结果总是出问题,以是这里就设置临时ip了
不过更怪的就来了,我重启这个接口后这个ip还会存在
呃呃呃,拼集用吧
ip add
r add 192.168.10.111/32 dev lo
复制代码
2.添加一条到假造ip的路由
route add -host 192.168.10.111 dev lo
复制代码
3.关闭到假造IP的arp相应
vim /etc/sysctl.conf
复制代码
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.default.arp_announce =2
net.ipv4.conf.all.arp_announce =2
net.ipv4.conf.lo.arp_announce = 2
复制代码
使设置收效
sysctl -p
复制代码
4.设置服务(httpd)
yum -y install httpd
echo web1 > /var/www/html/index.html
systemctl start httpd
systemctl enable httpd
复制代码
欣赏器检察
web2设置
同web1
区别仅有web页面内容不一样
echo web2 > /var/www/html/index.html
复制代码
欣赏器检察
结果验证
客户机(client)访问假造ip
在lvs1断开主keepalived检察热备效果
systemctl stop keepalived
ip add
复制代码
可以看到已经没有假造ip了
在lvs2检察
ip add
复制代码
可以看到假造ip地点已经转移过去了
客户机访问
可以看到客户机访问也是没有问题
规复主keepalived
systemctl start keepalived
ip add
复制代码
可以看到假造地点已经回来了
lvs2检察
假造地点已经消失
客户端访问验证
仍旧没有问题
总结
大体就是上面这些操作了
如果能看到这里,提前祝大家
国庆快乐
,吃好玩好
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/)
Powered by Discuz! X3.4