在RHEL / CentOS上使用'POUND'设置Web服务器负载平衡

POUND是一种轻量级的开源反向代理工具,可以用作Web服务器负载均衡器,在多个服务器之间分配负载。

英镑由ITSECURITY公司研制的负载均衡方案。 它是一个轻量级的开源反向代理工具,可以用作Web服务器负载均衡器在多个服务器之间分配负载。 POUND给最终用户有几个优点,这些优点非常方便,而且工作正确。

  1. 支持虚拟主机。
  2. 可配置。
  3. 当后端服务器发生故障或从故障中恢复时,它会自动检测后端服务器,并根据此情况进行负载平衡决策。
  4. 它拒绝不正确的请求。
  5. 没有指定的浏览器或网络服务器。

让我们看看如何可以得到这个黑客做。

首先,你需要一个场景,以便更好地了解如何做到这一点。 因此,我将使用一个场景,其中有两个Web服务器和一个网关服务器,需要平衡到网关服务器到Web服务器的请求。

Pound Gateway Server : 172.16.1.222
Web Server 01 : 172.16.1.204
Web Server 02 : 192.168.1.161
在Linux中安装磅负载平衡器

Pound Web服务器负载平衡器

第1步:在网关服务器上安装磅负载平衡器

1.安装英镑的最简单方法是使用预编译的RPM包,你可以找到在RedHat的基于RPM的分发:

  1. http://www.invoca.ch/pub/packages/pound/

可替代地,英镑可容易地从已安装EPEL软件库 ,如下所示。

# yum install epel-release
# yum install Pound

安装Pound后,您可以通过发出此命令验证是否安装。

# rpm –qa |grep Pound
安装磅负载平衡器

安装磅负载平衡器

2.其次,你需要两个网络的服务器进行负载平衡,并确保你有明确的标识,以测试英镑配置工作正常。

在这里,我有两个服务器承载IP地址172.16.1.204192.168.1.161。

为了易于使用,我创建了python SimpleHTTPServer在两个服务器上创建即时网络服务器。 阅读关于pythonSimpleHTTPServer

在我的方案,我有172.16.1.204运行通过端口8888webserver01并通过端口5555上的192.168.1.161 webserver02运行。

Pound Webserver 1

Pound Webserver 1

Pound Webserver 2

Pound Webserver 2

第2步:配置磅负载平衡器

3.现在是时候做出完成配置。 一旦你已经成功安装了一斤,它会在/ etc下 ,即英镑的配置文件pound.cfg

我们必须编辑服务器和后端详细信息才能平衡网络服务器之间的负载。 进入到/ etc并打开pound.cfg文件进行编辑。

# vi /etc/pound.cfg

按照以下建议进行更改。

ListenHTTP
Address 172.16.1.222
Port 80
End
ListenHTTPS
Address 172.16.1.222
Port    443
Cert    "/etc/pki/tls/certs/pound.pem"
End
Service
BackEnd
Address 172.16.1.204
Port    8888
End
BackEnd
Address 192.168.1.161
Port    5555
End
End

这是我pound.cfg文件的样子。

配置负载均衡器

配置负载均衡器

“ListenHTTP”“ListenHTTPS”标签,则必须输入您已经安装砸向服务器的IP地址

默认状态下的服务器处理,虽然80端口的HTTP请求和HTTPS通过端口443请求。 在“ 服务 ”标签,你可以添加一个名为“ 后端 ”子标签的数量。 BackEnd标签包含运行Web服务器的IP地址和端口号。

现在保存文件正确编辑程序后,并通过发出以下命令之一重启英镑的服务。

# /etc/init.d/pound restart 
OR
# service pound restart
OR
# systemctl restart pound.service
开始磅负载平衡器

开始磅负载平衡器

4,现在是时候来检查。 打开两个Web浏览器以检查我们的配置是否正常。 在地址栏中键入您的庞德网关的IP地址,看看出现。

首先请求应该加载从其他网络浏览器的第一个webserver01和第二请求应该载入第二webserver02。

检查磅负载平衡

检查磅负载平衡

此外,这样想,如果你有两个Web服务器进行负载均衡和服务器的性能的一个是好的,其他的表现也不是那么好一个场景。

所以当他们之间的负载平衡,你将不得不考虑哪个服务器,你必须放更多的重量。 显然对于具有良好性能规格的服务器。

为了平衡这样的负荷,你只需要添加在里面一个参数pound.cfg文件。 让我们来看看它。

想想服务器192.168.1.161:5555是更好的服务器。 然后,您需要向该服务器放置更多请求流。 在其下设置为192.168.1.161服务器“ 后端 ”的标记,结束标记之前添加参数“ 优先级 ”。

看下面的例子。

磅负载平衡优先级

磅负载平衡优先级

我们可以使用“ 优先 ”参数的范围是1-9之间。 如果我们不把它定义为5默认值将被分配。

然后负载将平衡。 如果我们定义优先级编号, 英镑将更多oftenly加载服务器具有更高的优先级编号。 因此,在这种情况下,192.168.1.161:5555将往往比服务器172.16.1.204:8888加载。

第3步:规划紧急故障

紧急标签 :此标签用于加载服务器的情况下,所有的后端服务器都死了。 您可以按如下pound.cfg最后结束标记之前添加。

“Emergency
Address 192.168.5.10
Port        8080
End”

6.庞德始终跟踪哪些后端服务器是活的,哪些不是。 多少秒庞德应由pound.cfg加入“ 活着 ”参数检出后端服务器后,我们可以定义。

您可以使用该参数,因为“ 活着30”为将其设置为30秒。 Pound将暂时禁用不响应的后端服务器。 当我们说不响应服务器可能死了或不能建立连接在那一刻。

英镑将检查你在pound.cfg文件中定义的情况下,如果服务器可以建立一个连接每个时间段后禁用后端服务器,然后POUND可以回去与服务器一起工作。

7.庞德守护进程会被poundctl命令来处理。 通过让我们并不需要编辑pound.cfg文件,我们可以通过一个简单的命令发出听者服务器后端服务器和会话等。

Syntax: poundctl -c /path/to/socket [-L/-l] [-S/-s] [-B/-b] [-N/-n] [-H] [-X]
  1. -c定义你的套接字路径。
  2. -L / -l定义您的架构的监听器。
  3. -S / -s定义服务。
  4. -B / -b定义的后端服务器。

更多信息请参见poundctl手册页。

希望你喜欢这个黑客,并发现更多的选择。 请随时在下面评论任何建议和想法。 保持与Howtoing的联系方便和最新的如何。

另请阅读用于Web服务器上安装XR十字路口负载平衡器