本文介绍在CentOS 8/RHEL 8操作系统上安装和配置LVS(Linux Virtual Server)负载均衡器的方法,Linux Virtual Server是在真实服务器集群上构建的高度可扩展且高度可用的服务器,负载平衡器在Linux操作系统上运行。我们将在我们的CentOS 8/RHEL 8计算机上安装Linux Virtual Server软件包,然后将其配置为后端服务器的负载平衡器。
一、安装Linux Virtual Server(在CentOS 8/RHEL 8上安装LVS)
通过在服务器上运行以下命令来安装Linux Virtual Server:
$ sudo yum install ipvsadm

二、启用IP转发并启用服务
软件包安装后,在计算机中启用服务和IP转发:
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
确认它已变成1:
$ sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1
现在启动ipvsadm服务,ipvsadm命令用于在Linux内核中配置、维护或检查虚拟服务器表:
sudo touch /etc/sysconfig/ipvsadm
sudo systemctl enable --now ipvsadm
服务状态应显示为以下状态:
$ systemctl status ipvsadm

三、将LVS配置为负载均衡器
现在,我们已经安装并启动了管理LVS防火墙所需的服务,现在是时候将LVS配置为实际后端应用程序的负载平衡器了。
首先清除IP表规则:
sudo ipvsadm -C
四、添加虚拟服务(virtual service)
使用以下语法添加虚拟服务:
ipvsadm -A -t (ServiceIP:Port) -s (Distribution method)
支持的分发方法:
rr:Round Robin-后端服务器之间的平均负载分配。
wrr:Weighted Round Robin-基于实际服务器权重的循环分配。
lc:Least-Connection–优先处理活动较少的服务器以分配新的负载
wlc:Weighted Least-Connection–将jobs分配给具有较少jobs且相对于实际服务器权重(Ci/Wi)的服务器,这是默认的分发方法。
我们将根据下图进行配置:

在LVS服务器上,我将其设置为在192.168.122.52端口80上侦听:
sudo ipvsadm -A -t 192.168.122.52:80 -s wlc
add添加后端服务器,语法为:
audo ipvsadm -a -t (ServiceIP:Port) -r (BackendServerIP:Port) -m
就我而言,我的配置如下所示:
sudo ipvsadm -a -t 192.168.122.52:80 -r 192.168.122.178:80 -m
sudo ipvsadm -a -t 192.168.122.52:80 -r 192.168.122.6:80 -m
列出当前规则:
$ sudo ipvsadm -l

打开防火墙上的http端口:
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload
如果现在从浏览器加载LVS服务器IP或域名,则应在其中一台后端服务器上获取页面:

重新加载,应该显示后端服务器2页面:

至此,在CentOS 8和RHEL 8 Linux系统上安装和配置LVS完成。
相关主题