在CentOS 8 / RHEL 8上设置LVS(Linux虚拟服务器)负载均衡器

欢迎来到有关如何在CentOS 8和RHEL 8 Linux系统上安装和配置LVS(Linux虚拟服务器)负载均衡器的指南。 Linux虚拟服务器是在真实服务器集群上构建的高度可扩展且高可用性的服务器,在Linux操作系统上运行负载平衡器。

在CentOS 8 / RHEL 8计算机上安装Linux虚拟服务器软件包,并将其配置为后端服务器的负载平衡器。此设置假定您已安装CentOS / RHEL 8服务器或工作站版本。

Linux虚拟服务器(在CentOS 8 / RHEL 8上安装LVS

在服务器上运行以下命令以在CentOS 8 / RHEL 8上安装Linux虚拟服务器(LVS):

$ sudo yum install ipvsadm 
Last metadata expiration check: 0:11:56 ago on Thu 05 Dec 2019 09:17:32 AM EAT.
Dependencies resolved.
===================================================================================================================================================
 Package                           Arch                             Version                              Repository                           Size
===================================================================================================================================================
Installing:
 ipvsadm                           x86_64                           1.29-8.el8                           AppStream                            57 k

Transaction Summary
===================================================================================================================================================
Install  1 Package

Total download size: 57 k
Installed size: 83 k
Is this ok [y/N]: y

步骤2:启用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 

服务状态将显示为acitve:

$ systemctl status ipvsadm 
● ipvsadm.service - Initialise the Linux Virtual Server
   Loaded: loaded (/usr/lib/systemd/system/ipvsadm.service; enabled; vendor preset: disabled)
   Active: active (exited) since Thu 2019-12-05 09:41:56 EAT; 4s ago
  Process: 2949 ExecStart=/bin/bash -c exec /sbin/ipvsadm-restore < /etc/sysconfig/ipvsadm (code=exited, status=0/SUCCESS)
 Main PID: 2949 (code=exited, status=0/SUCCESS)

Dec 05 09:41:56 centos8.novalocal systemd[1]: Starting Initialise the Linux Virtual Server...
Dec 05 09:41:56 centos8.novalocal systemd[1]: Started Initialise the Linux Virtual Server.

将LVS配置为负载均衡器。

现在,您已经安装并启动了管理LVS防火墙所需的服务。现在,将LVS配置为实际后端应用程序的负载平衡器。

首先清除IP表规则

sudo ipvsadm -C 

添加虚拟服务

使用语法添加虚拟服务。

ipvsadm -A -t (ServiceIP:Port) -s (Distribution method)

支持的分发方式:

  • rr :循环-后端服务器之间的负载均匀分配。
  • wrr:加权轮询-基于实际服务器权重的轮询方差。
  • lc:优先选择活动连接很少的最少连接服务器,以进行新的负载分配
  • wlc:加权最少连接分配作业到比实际服务器(Ci / Wi)权重少的服务器。这是默认的分发方法。

根据下图进行设置。

配置LVS服务器以侦听192.168.122.52上的端口80。

sudo ipvsadm -A -t 192.168.122.52:80 -s wlc 

添加后端服务器。语法如下:

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 
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  cent01:http wlc
  -> cent03:http                  Masq    1      0          0         
  -> cent02:http                  Masq    1      0          0      

打开防火墙的http端口。

sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload

如果从浏览器加载LVS服务器IP或域名,则需要在其中一台后端服务器上获取页面。

在CentOS 8 / RHEL 8上设置LVS(Linux虚拟服务器)负载均衡器

重新加载时,将显示后端服务器2页面。

在CentOS 8 / RHEL 8上设置LVS(Linux虚拟服务器)负载均衡器

描述如何在CentOS 8和RHEL 8 Linux系统上安装和配置LVS。

还要检查:

如何在Debian 10(Buster)上安装和配置HAProxy

在Ubuntu 18.04 / CentOS 7上使用HAProxy获得Galera群集的高可用性

如何从Web界面管理HAProxy服务器

Sidebar