1

我按照此链接上的说明在我的 Fedora 服务器上设置 Pound 负载均衡器。一切正常。Pound 在端口 80 上运行。现在我想在不同的端口上配置 Pound 并平衡 2 个其他不同的后端服务器。

我找到了这个其他链接,其中详细说明了如何完成此操作。但该教程路径与 Fedora 22 路径不匹配。

问题是,我想(i)在多个端口上配置 Pound,以平衡每个端口上的不同 IP,或者(ii)运行 2 个不同的 Pound 实例,每个端口都有单独的配置文件

4

2 回答 2

0

只需添加多个ListenHTTP指令:

ListenHTTP
    Address 0.0.0.0
    Port 8879
    Service
        BackEnd
            Address 139.16.00.82
            Port    8879
        End

        BackEnd
            Address 139.16.00.88
            Port    8879
        End
    End
End

ListenHTTP
    Address 0.0.0.0
    Port 80
    Service
        BackEnd
            Address 139.16.00.85
            Port    8080
        End
        BackEnd
            Address 139.16.00.86
            Port    8080
        End
    End
End
于 2021-08-30T17:51:42.510 回答
0

终于自己弄明白了。

最初设定

  1. 使用命令“sudo yum install Pound”安装 Pound。
  2. 启动磅并运行一次“sudo service pound start”。
  3. 检查磅是否与 1 个实例一起正常工作。
  4. 现在停止磅服务,然后再继续创建多个实例“sudo service 磅停止”

步骤1

分别为每个实例创建磅配置文件。默认文件位于 /etc/pound.cfg

sudo cp -p /etc/pound.cfg /etc/pound1.cfg
sudo cp -p /etc/pound.cfg /etc/pound2.cfg

第2步

分别为每个实例创建虚拟 pid 文件。默认文件位于 /var/run/pound.pid

sudo cp -p /var/run/pound.pid /var/run/pound1.pid
sudo cp -p /var/run/pound.pid /var/run/pound2.pid

第 3 步

编辑默认配置文件并为每个实例分配不同的 http 端口。

修改“控制”路径和后端服务器以对每个实例进行负载平衡

sudo nano /etc/pound1.cfg

磅1.cfg

User "pound"
Group "pound"
Control "/var/lib/pound/pound1.cfg"

ListenHTTP
    Address 0.0.0.0
    Port 8879
End

Service
    BackEnd
        Address 139.16.00.82
        Port    8879
    End

    BackEnd
        Address 139.16.00.88
        Port    8879
    End
End

编辑第二个实例的配置

sudo nano /etc/pound2.cfg

磅2.cfg

User "pound"
Group "pound"
Control "/var/lib/pound/pound2.cfg"

ListenHTTP
    Address 0.0.0.0
    Port 80
End

Service
    BackEnd
        Address 139.16.00.85
        Port    8080
    End

    BackEnd
        Address 139.16.00.86
        Port    8080
    End
End

第4步

复制磅服务文件为每个实例创建单独的文件。这将位于 /usr/lib/systemd/system/pound.service

sudo cp -p /usr/lib/systemd/system/pound.service /usr/lib/systemd/system/pound1.service
sudo cp -p /usr/lib/systemd/system/pound.service /usr/lib/systemd/system/pound2.service

编辑服务文件以使用适当的配置和 pid 文件

sudo nano /usr/lib/systemd/system/pound1.service

磅1.服务

[Unit]
Description=Pound Reverse Proxy And Load-balancer
After=syslog.target network.target

[Service]
Type=forking
PIDFile=/var/run/pound1.pid
ExecStart=/usr/sbin/pound -f /etc/pound1.cfg -p /var/run/pound1.pid

[Install]
WantedBy=multi-user.target

英镑2.服务

[Unit]
Description=Pound Reverse Proxy And Load-balancer
After=syslog.target network.target

[Service]
Type=forking
PIDFile=/var/run/pound2.pid
ExecStart=/usr/sbin/pound -f /etc/pound2.cfg -p /var/run/pound2.pid

[Install]
WantedBy=multi-user.target

第 5 步

现在重新加载 systemctl 守护进程并开始运行这两个服务

sudo systemctl daemon-reload
sudo service pound1 start
sudo service pound2 start

如果您遇到任何问题,请使用以下命令检查状态,这有助于我发现一些问题

sudo service pound1 status

注意: 我已经删除了 cfg 文件中的 https 配置,因为我不需要它们

于 2016-02-04T14:33:28.527 回答