在 Debian 11/Debian 10 上安装和配置 HAProxy在 Debian 11/Debian 10 上安装和配置 HAProxy在 Debian 11/Debian 10 上安装和配置 HAProxy在 Debian 11/Debian 10 上安装和配置 HAProxy
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

在 Debian 11/Debian 10 上安装和配置 HAProxy

发表 admin at 2025年2月28日
类别
  • 未分类
标签

本指南将讨论如何在 Debian 11/Debian 10 上安装和配置 HAProxy 负载均衡器。HAProxy 是一个开源、可靠且高性能的 TCP/HTTP 负载均衡器和代理服务器,可在 Linux、FreeBSD 和 Solaris 上运行。 HAProxy 用 C 语言编写,它为在多个服务器上运行的基于 TCP 和 HTTP 的应用程序提供高可用性负载均衡器。

在我的设置中,我将有两个后端 Web 应用程序,并配置 HAProxy 以对这些 HTTP 服务器的流量进行负载平衡。本演示使用的服务器如下所示。

第 1 步:更新 Debian 系统

将您将使用的所有服务器更新为最新的可用软件包。

sudo apt update && sudo apt -y upgrade
sudo reboot

第 2 步:配置 Apache 后端服务器

在本演示中,我们将使用 Apache Web 服务器作为 HAProxy 前端代理的后端。我将使用以下命令在我的两台 Debian 10 服务器上安装 Apache。

在服务器 1 上

sudo apt update
sudo apt -y install apache2
echo "<H1>Hello from Server1</H1>" | sudo tee /var/www/html/index.html 

在服务器2上

sudo apt update
sudo apt -y install apache2
echo "<H1>Hello from Server2</H1>" | sudo tee /var/www/html/index.html 

您可以尝试访问 Server1 和 Server2 Web URL 并查看响应。

步骤 3:在 Debian 11/Debian 10 上安装 HAProxy

要在 Debian 11/Debian 10 上安装 HAProxy,请在终端上运行以下命令。

sudo apt -y install haproxy 

配置 HAProxy。

$ sudo vim /etc/haproxy/haproxy.cfg
# Add to the end
# Define frontend
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.10.11:80 check
        server             backend02 192.168.10.12:80 check

重启haproxy服务

sudo systemctl restart haproxy

验证配置是否正常工作以访问前端 HAProxy 服务器。

再次重新加载页面,您应该会收到来自 server2 的响应。

对于 TCP 后端,您的配置将如下所示。

frontend rserve_frontend
    bind *:80
    mode tcp
    option tcplog
    timeout client  1m
    default_backend rserve_backend

backend rserve_backend
    mode tcp
    option tcplog
    option log-health-checks
    option redispatch
    log global
    balance roundrobin
    timeout connect 10s
    timeout server 1m   
    server rserve1 <rserve hostname1>:6311 check
    server rserve2 <rserve hostname2>:6311 check
    server rserve2 <rserve hostname3>:6311 check

配置 SSL

结合证书和私钥。

cat fullchain.pem privkey.pem > haproxy.pem

然后配置 HAProxy 以在前端使用 SSL 证书。

frontend apache-frontend
        bind *:80
        bind *:443 ssl crt /etc/letsencrypt/live/webapp.computingforgeeks.com/haproxy.pem 

阅读有关 HAProxy 文档的更多信息。

类似指南:

  • 如何从 Web 界面管理 HAProxy 服务器
  • Ubuntu 18.04/CentOS 7 上使用 HAProxy 的 Galera 集群高可用性
  • 如何使用 HAProxy 在 Ubuntu 18.04 上设置 MariaDB Galera 集群
  • Linux 上的安全 HAProxy 入门
©2015-2025 Norria support@norria.com