A.4. 安装和配置 HAProxy


在两个 HAProxy 节点上执行以下步骤:
  1. 安装 haproxy
    # yum install haproxy
  2. 为 SELinux 和 HTTP 配置 haproxy
    # vim /etc/firewalld/services/haproxy-http.xml
    添加以下行:
    <?xml version="1.0" encoding="utf-8"?>
    <service>
    <short>HAProxy-HTTP</short>
    <description>HAProxy load-balancer</description>
    <port protocol="tcp" port="80"/>
    </service>
    
    以 root 用户身份,为 haproxy-http.xml 文件分配正确的 SELinux 上下文和文件权限。
    # cd /etc/firewalld/services
    # restorecon haproxy-http.xml
    # chmod 640 haproxy-http.xml
  3. 如果要使用 HTTPS,请为 SELinux 和 HTTPS 配置 haproxy
    # vim /etc/firewalld/services/haproxy-https.xml
    添加以下行:
    <?xml version="1.0" encoding="utf-8"?>
    <service>
    <short>HAProxy-HTTPS</short>
    <description>HAProxy load-balancer</description>
    <port protocol="tcp" port="443"/>
    </service>
    
    以 root 用户身份,为 haproxy-https.xml 文件分配正确的 SELinux 上下文和文件权限。
    # cd /etc/firewalld/services
    # restorecon haproxy-https.xml
    # chmod 640 haproxy-https.xml
  4. 如果您打算使用 HTTPS,请为 SSL 生成密钥。如果您没有证书,您可以使用自签名证书。有关生成密钥和自签名证书的详情,请参考 Red Hat Enterprise Linux 系统管理员指南
    最后,将证书和密钥放入 PEM 文件中。
    # cat example.com.crt example.com.key > example.com.pem
    # cp example.com.pem /etc/ssl/private/
  5. 配置 HAProxy.
    # vim /etc/haproxy/haproxy.cfg
    haproxy.cfgglobaldefaults 部分可能会保持不变。在 defaults 部分后,您需要配置 frontendbackend 部分,如下例所示:
    frontend http_web *:80
        mode http
        default_backend rgw
    
    frontend rgw­-https
      bind <insert vip ipv4>:443 ssl crt /etc/ssl/private/example.com.pem
      default_backend rgw
    
    backend rgw
        balance roundrobin
        mode http
        server  rgw1 10.0.0.71:80 check
        server  rgw2 10.0.0.80:80 check
    
  6. enable/start haproxy
    # systemctl enable haproxy
    # systemctl start haproxy
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.