Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

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