如何在 Debian 9 上安装 HAProxy

[ad_1]

在本教程中,我们将向您展示如何在您的 Debian 9 上安装 HAProxy。对于那些不知道的人,HAProxy 是一个免费的 HTTP/TCP 高可用性负载平衡器和代理服务器。 它将请求分布在多个服务器之间,以减轻由单个服务器故障引起的问题。 HA Proxy 被许多知名网站使用,包括 GitHub、Bitbucket、Stack Overflow、Reddit、Tumblr、Twitter 和 Tuenti,并用于 Amazon Web Services 的 OpsWorks 产品中。

本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo‘ 到命令以获取 root 权限。 我将向您展示在 Debian 9 (Stretch) 服务器上逐步安装 HAProxy。

在 Debian 9 Stretch 上安装 HAProxy

第 1 步。在我们安装任何软件之前,重要的是通过运行以下命令确保您的系统是最新的 apt-get 终端中的命令:

apt-get update
apt-get upgrade

步骤 2. 网络详细信息。

下面是我们的网络服务器。 有 3 个使用 Apache2 运行并在端口 80 上侦听的 Web 服务器和一个 HAProxy 服务器:

Web Server Details:
  Server 1:    web1.idroot.us     192.168.1.101
  Server 2:    web2.idroot.us     192.168.1.102
  Server 3:    web3.idroot.us     192.168.1.103
HAProxy Server: 
  HAProxy:     haproxy                 192.168.1.18

步骤 3. 安装 HAProxy。

Debian 9 已经附带 HAProxy 1.7(撰写本文时最新的稳定版本),我们可以使用 apt-get 简单地安装它:

apt-get -y install haproxy

安装后,您可以使用以下命令仔细检查已安装的版本号:

haproxy -v

步骤 4. 配置 HAProxy。

我们必须修改HAProxy的配置文件,即 /etc/haproxy/haproxy.cfg 根据我们的要求。 (根据您的网络要求更改此配置)。 有关更多配置详细信息,请检查此 网址.

### nano /etc/haproxy/haproxy.cfg

global
    log /dev/log    local0
    log /dev/log    local1 notice
    chroot /var/lib/haproxy
    stats socket /run/haproxy/admin.sock mode 660 level admin
    stats timeout 30s
    user haproxy
    group haproxy
    daemon

    # Default SSL material locations
    ca-base /etc/ssl/certs
    crt-base /etc/ssl/private

    # Default ciphers to use on SSL-enabled listening sockets.
    # For more information, see ciphers(1SSL). This list is from:
    #  https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/
    ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256::RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS
    ssl-default-bind-options no-sslv3

defaults
    log       global
    mode      http
    option    httplog
    option    dontlognull
    timeout connect 5000
    timeout client  50000
    timeout server  50000
    errorfile 400 /etc/haproxy/errors/400.http
    errorfile 403 /etc/haproxy/errors/403.http
    errorfile 408 /etc/haproxy/errors/408.http
    errorfile 500 /etc/haproxy/errors/500.http
    errorfile 502 /etc/haproxy/errors/502.http
    errorfile 503 /etc/haproxy/errors/503.http
    errorfile 504 /etc/haproxy/errors/504.http

frontend Local_Server
    bind 192.168.1.18:80
    mode http
    default_backend My_Web_Servers

backend My_Web_Servers
    mode http
    balance roundrobin
    option forwardfor
    http-request set-header X-Forwarded-Port %[dst_port]
    http-request add-header X-Forwarded-Proto https if { ssl_fc }
    option httpchk HEAD / HTTP/1.1rnHost:localhost
    server web1.idroot.us  192.168.1.101:80
    server web2.idroot.us  192.168.1.102:80
    server web3.idroot.us  192.168.1.103:80

listen stats *:1936
    stats enable
    stats hide-version
    stats refresh 30s
    stats show-node
    stats auth username:password
    stats uri  /stats

由于您已完成代理服务器的所有必要配置,请在使用以下命令重新启动服务之前验证配置文件:

haproxy -c -f /etc/haproxy/haproxy.cfg

如果上述命令返回“配置文件有效”的输出,则重新启动 HAProxy 服务:

systemctl restart haproxy

步骤 5. 访问 HAProxy。

打开您最喜欢的浏览器并在 Web 浏览器中访问 IP 192.168.0.18(如上配置)上的端口 80,然后点击刷新。 您将看到 HAProxy 正在向后端服务器一一发送请求(根据循环算法)。

恭喜! 您已成功安装 HAProxy。 感谢您使用本教程在 Debian 9 Stretch 服务器上安装最新版本的 HAProxy。 如需更多帮助或有用信息,我们建议您查看 HAProxy 官方网站.

[ad_2]

Related Posts