HAProxy 是一个开源负载均衡器代理,用于以高性能运行不同的 Web 应用程序,并通过将负载分布在不同的服务器上来提高速度。此外,如果任何服务器发生故障,HAProxy 会检测到它并将该服务器的 Web 流量重新路由到其他服务器,这样客户端就不会遇到任何中断。
在 Ubuntu 22.04 LTS Jammy Jellyfish 上安装 HAProxy
apt
步骤 1. 首先,通过在终端中运行以下命令,确保所有系统包都是最新的。
sudo apt update sudo apt upgrade sudo apt install wget apt-transport-https gnupg2 software-properties-common
步骤 2. 在 Ubuntu 22.04 上安装 Apache HTTP 服务器。
现在运行以下命令将最新版本的 Apache 安装到您的 Ubuntu 系统:
sudo apt install apache2
成功安装后,启用 Apache(系统启动时自动启动),启动,并使用以下命令验证状态:
sudo systemctl enable apache2
sudo systemctl start apache2
sudo systemctl status apache2
您可以使用以下命令确认 Apache2 版本:
apache2 -v
步骤 3. 将 Apache Web 服务器设置为后端服务器。
现在我们设置两个 Apache Web 服务器作为后端服务器来执行教程:
- 第一个后端服务器,安装 Apache 包并使用以下命令创建一个示例 Apache 索引页面:
echo "<H1>Welcome to the first Apache Server</H1>" | tee /var/www/html/index.html
- 第二个后端服务器,安装 Apache 包 使用以下命令创建一个示例 Apache 索引页面:
echo "<H1>Welcome to the second Apache Server</H1>" | tee /var/www/html/index.html
步骤 4. 在 Ubuntu 22.04 上安装 HAProxy。
默认情况下,HAProxy 在 Ubuntu 22.04 基础存储库中可用。现在运行以下命令将最新稳定版本的 HAProxy 安装到您的 Ubuntu 系统:
sudo apt install haproxy
成功安装后,启用 HAProxy(系统启动时自动启动),启动并使用以下命令验证状态:
sudo systemctl enable haproxy
sudo systemctl start haproxy
sudo systemctl status haproxy
确认安装并检查已安装的 HAProxy 构建版本:
haproxy -v
步骤 5. 配置 HAProxy。
现在编辑 HAProxy 默认配置文件并使用您喜欢的文本编辑器定义后端 Web 服务器:
nano /etc/haproxy/haproxy.cfg
添加两个后端 Apache 服务器:
frontend apache_front # Frontend listen port - 80 bind *:80 # Set the default backend default_backend apache_backend_servers # Enable send X-Forwarded-For header option forwardfor # Define backend backend apache_backend_servers # Use roundrobin to balance traffic balance roundrobin # Define the backend servers server backend01 192.168.77.200:80 check server backend02 192.168.77.201:80 check
保存并关闭文件,然后使用以下systemctl
命令重新启动 HAProxy 的服务:
sudo systemctl restart haproxy
步骤 6. 配置防火墙。
现在,我们使用 Apache 设置了一个简单防火墙 (UFW),以允许对 HTTP 和 HTTPS 的默认 Web 端口进行公共访问:
sudo ufw allow OpenSSH sudo ufw allow 'Apache Full' sudo ufw enable
步骤 7. 测试 HAProxy。
成功配置和安装后,现在打开您的 Web 浏览器并输入 URL 。您将看到 HAProxy 在每次刷新后都向后端服务器发送请求。http://your-haproxy-ip-address
感谢您使用本教程在 Ubuntu 22.04 LTS Jammy Jellyfish 系统上安装 HAProxy 高性能 TCP/HTTP 负载均衡器。如需其他帮助或有用信息,我们建议您查看HAProxy 官方网站。