고가용성을 위한 WebView 서버 구성

MOM당 여러 개의 WebView 서버를 배포하여 WebView 및 APM Team Center의 가용성을 높일 수 있습니다. WebView와 Team Center의 가용성을 높이려면 WebView 서버 앞에서 쿠키 기반 고정 세션을 지원하여 부하 분산 프록시를 구성하십시오. 세션 장애 조치는 지원되지 않습니다. WebView 서버가 종료된 경우 사용자는 부하 분산 장치 목록의 다음 WebView 서버로 라우트됩니다. WebView 서버에서는 세션 복제가 지원되지 않으므로 리디렉션된 사용자는 페이지를 새로 고치고 다시 로그인해야 합니다.
apmdevops104kr
MOM당 여러 개의 WebView 서버를 배포하여 WebView 및 APM Team Center의 가용성을 높일 수 있습니다. WebView와 Team Center의 가용성을 높이려면 WebView 서버 앞에서 쿠키 기반
고정 세션
을 지원하여 부하 분산 프록시를 구성하십시오. 세션 장애 조치는 지원되지 않습니다. WebView 서버가 종료된 경우 사용자는 부하 분산 장치 목록의 다음 WebView 서버로 라우트됩니다. WebView 서버에서는 세션 복제가 지원되지 않으므로 리디렉션된 사용자는 페이지를 새로 고치고 다시 로그인해야 합니다.
HAProxy
를 부하 분산 장치로 구성
다음 예는 RHEL7의 경우이지만 대부분의 다른 RHEL 버전과 다른 Linux 배포에도 적용됩니다. 이 예에서는
HAProxy
가 두 WebView 서버에 대해
라운드 로빈
부하 분산 장치의 역할을 하도록 구성합니다.
  1. root 권한으로
    HAProxy
     패키지를 설치합니다.
    [localhost]# yum -y install haproxy
  2. HAProxy
    가 WebView 서버의 프록시 역할을 하도록 구성합니다. 이 토폴로지에서는 두 개의 WebView 서버를 구성합니다. 
    서버 호스트 이름
    서버 IP 주소
    서버 포트
    wv01
    172.20.20.200
    8080
    wv02
    172.20.27.144
    8080
  3. 텍스트 편집기에서
    /etc/haproxy/haproxy.cfg
    를 편집하여 다음 구성을 추가합니다.
    frontend apm_webview
      bind 0.0.0.0:8080
      default_backend bk_apm_webview
     
    backend bk_apm_webview
      balance roundrobin
      cookie WSESSIONID prefix nocache
      server wv01 172.20.20.200:8080 check cookie wv01
      server wv02 172.20.27.144:8080 check cookie wv02
  4. 첫 번째 섹션인 frontend 섹션에서는 모든 사용 가능한 네트워크 인터페이스에 대해 포트 8080에 수신기를 설정합니다. 사용자는 이 포트에 연결합니다. 두 번째 섹션인 backend 섹션에서는 대상 WebView 서버를 정의합니다. 여기서는 부하 분산 장치가 제대로 작동하는 데 필요한
    고정 세션
    을 지원하기 위해 WSESSIONID 쿠키를 사용합니다.
  5. HAProxy
     구성을 변경한 다음 서비스를 시작합니다.
    [localhost]# systemctl start haproxy
Apache HTTPD를 부하 분산 장치로 구성합니다.
이 구성 예에서는 RHEL7에 있는 Apache HTTPD 2.4를 두 WebView 서버에 대한 부하 분산 장치로 사용합니다. 
서버 호스트 이름
서버 IP 주소
서버 포트
wv01
172.20.20.200
8080
wv02
172.20.27.144
8080
다음 단계를 따르십시오
.
  1. Apache HTTP를 설치합니다.  root 권한으로
    yum
    을 사용하여 httpd 패키지를 설치합니다.
    [localhost]# yum -y install httpd
    If SELinux is enabled, it is necessary to let Apache httpd make connections. The following command changes the SELinux configuration and makes the change persistent to survive restarts.
    [localhost]# /usr/sbin/setsebool -P httpd_can_network_connect 1
  2. 부하 분산 장치를 구성합니다.
    /etc/httpd/conf.d/
    에 다음과 같은 내용으로 at 구성 파일
    00-webview.conf
    를 생성합니다.
    <VirtualHost *:*>
        Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
        ProxyPreserveHost On
        ProxyPass "/" "balancer://mycluster/" nofailover=On
        ProxyPassReverse "/" "balancer://mycluster/"
        ProxyPass "/ApmServer/" "balancer://mycluster/ApmServer/" nofailover=On
        ProxyPassReverse "/ApmServer/" "balancer://mycluster/ApmServer/"
        ServerName webview.example.com
    </VirtualHost>
    <Proxy balancer://mycluster>
        BalancerMember http://172.20.20.200:8080 route=webview01
        BalancerMember http://172.20.27.144:8080 route=webview02
        ProxySet stickysession=ROUTEID
    </Proxy>
  3. <Proxy> 섹션에서
    BalancerMember
     지시문을 사용하여 두 WebView 백엔드 서버를 구성합니다. 부하 분산 장치가 세션 고정성을 유지할 수 있도록 하려면 route 매개 변수에 고유한 값을 선택하십시오. 여기서는 Header 지시문을 사용하여
    BalancerMembers
    에 설정한 route 매개 변수를 사용하는 사용자 지정 쿠키 ROUTEID를 설정합니다.
    ServerNamedirective
    를 사용하여 부하 분산 장치의 호스트 이름을 설정하십시오. Apache를 다시 시작하기 전에 변경된 구성을 확인하십시오.
    [localhost]# apachectl configtest
  4. 구성이 올바르면 httpd를 다시 시작하여 변경 내용을 적용할 수 있습니다.
    [localhost]# /bin/systemctl restart  httpd.service
기타 부하 분산 솔루션
쿠키 기반 고정 세션을 지원하는 대부분의 다른 부하 분산 솔루션도 사용할 수 있습니다. 부하 분산 장치가 WSESSIONID 쿠키를 사용하여 클라이언트 요청을 올바른 WebView 서버 인스턴스로 라우트하거나 사용자 지정 쿠키를 제공하도록 구성하십시오.