A.4. 安装和配置 HAProxy
在两个 HAProxy 节点上执行以下步骤:
- 安装
haproxy。# yum install haproxy - 为 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 - 如果要使用 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 - 如果您打算使用 HTTPS,请为 SSL 生成密钥。如果您没有证书,您可以使用自签名证书。有关生成密钥和自签名证书的详情,请参考 Red Hat Enterprise Linux 系统管理员指南。最后,将证书和密钥放入 PEM 文件中。
# cat example.com.crt example.com.key > example.com.pem # cp example.com.pem /etc/ssl/private/ - 配置 HAProxy.
# vim /etc/haproxy/haproxy.cfghaproxy.cfg的global和defaults部分可能会保持不变。在defaults部分后,您需要配置frontend和backend部分,如下例所示: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 - enable/start haproxy
# systemctl enable haproxy # systemctl start haproxy