综合案例:keepalived+LVS

it2026-08-02  4

LVS-nat 和LVS-DR模式都存在单点故障点,当调度器挂掉后,服务就无法正常提供了,为了解决单点故障点,就有了新的技术keepalived。

这里来介绍一个keepalived+LVS的案例,拓扑图如下

漂移地址(VIP):20.0.0.101 主调度器:20.0.0.100 辅调度器:20.0.0.34 WEB服务器1:20.0.0.31 WEB服务器2:20.0.0.32 存储服务器:20.0.0.33 主调度器 通过keepalived工具来配置管理调度,虚拟vip地址也直接在配置文件中配好 从调度器 和主调度器一样,只有在keepalived配置文件中修改id号和主不一样,热备状态为BACKUP ,优先级比主低 web站点服务器配置虚拟vip地址 lo:0 储存服务器配置nfs共享

###配置主调度器 20.0.0.100 ####### 关闭防火墙

【1】调整/proc响应参数

[root@localhost network-scripts]# vi /etc/sysctl.conf net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.default.send_redirects = 0 net.ipv4.conf.ens33.send_redirects = 0 [root@localhost network-scripts]# sysctl -p ###生效

【2】清除负载分配策略

[root@localhost /]# ipvsadm -C

【3】调整keepalived参数

[root@localhost ~]# yum -y install keepalived ipvsadm [root@localhost ~]# cd /etc/keepalived/ [root@localhost keepalived]# cp keepalived.conf keepalived.conf.bak [root@localhost keepalived]# vi keepalived.conf global_defs { router_id HA_TEST_R1 ####本路由器的服务器名称 HA_TEST_R1 } vrrp_instance VI_1 { ####定义VRRP热备实列 state MASTER ####热备状态,master表示主服务器 interface ens33 ####表示承载VIP地址的物理接口 virtual_router_id 1 ####虚拟路由器的ID号,每个热备组保持一致 priority 100 ####优先级,优先级越大优先级越高 advert_int 1 ####通告间隔秒数(心跳频率) authentication { ####认证信息,每个热备组保持一致 auth_type PASS ####认证类型 auth_pass 123456 ####认证密码 } virtual_ipaddress { ####漂移地址(VIP),可以是多个 20.0.0.101 } } virtual_server 20.0.0.101 80 { ####虚拟服务器地址(VIP)、端口 delay_loop 15 ####健康检查的时间间隔(秒) lb_algo rr ####轮询调度算法 lb_kind DR ####直接路由(DR)群集工作模式 persistence 60 ####连接保持时间(秒),若启用请去掉!号 protocol TCP ####应用服务采用的是TCP协议 real_server 20.0.0.31 80 { ####第一个WEB站点的地址,端口 weight 1 ####节点的权重 TCP_CHECK { ####健康检查方式 connect_port 80 ####检查端口目标 connect_timeout 3 ####连接超时(秒) nb_get_retry 3 ####重试次数 delay_before_retry 4 ####重试间隔(秒) } } real_server 20.0.0.32 80 { weight 1 TCP_CHECK { connect_port 80 connect_timeout 3 nb_get_retry 3 delay_before_retry 4 } } } [root@localhost keepalived]# systemctl start keepalived ####启动keepalived [root@localhost keepalived]# systemctl enable keepalived ####开机启动keepalived [root@localhost keepalived]# ip addr show dev ens33 ####查看主控制IP地址和漂移地址

###配置辅调度器 20.0.0.34 ####### 关闭防火墙

配置和主服务器一模一样,只需要更改配置文件中的以下3项内容 router_id HA_TEST_R2 ####本路由器的服务器名称 HA_TEST_R1 state BACKUP ####热备状态,master表示主服务器 priority 99 ####优先级,优先级越大优先级越高 此时可以在主备服务器上查看vip地址在哪台服务器上 ip addr show dev ens33 当关闭主服务器上的keepalived 服务,在备 服务器上查看,发现vip地址漂到备服务器上了,配置成功

#配置节点服务器:20.0.0.31 20.0.0.32#### 配置过程相同,就注意ip地址以及挂载路径不同即可

##配置存储服务器:20.0.0.33####

过程和####案列:LVS-DR 负载均衡集群搭建####的一模一样

最新回复(0)