검색

6장. HAProxy를 사용하여 트래픽 부하 분산

download PDF

HAProxy 서비스는 고가용성 클러스터의 컨트롤러 노드에 대한 트래픽 부하 분산과 로깅 및 샘플 구성을 제공합니다.

haproxy 패키지에는 동일한 이름의 systemd 서비스에 해당하는 haproxy 데몬이 포함되어 있습니다. Pacemaker는 HAProxy 서비스를 haproxy-bundle 이라는 고가용성 서비스로 관리합니다.

HAProxy에 대한 자세한 내용은 로드 밸런서 관리 가이드의 HAProxy 구성 장을 참조하십시오.

HAProxy가 올바르게 구성되었는지 확인하는 방법에 대한 자세한 내용은 KCS 문서 How can I verify my haproxy.cfg is correctly configured to load openstack services?.

6.1. HAProxy 작동 방식

director는 HAProxy 서비스를 사용하도록 대부분의 Red Hat OpenStack Platform 서비스를 구성할 수 있습니다. director는 /var/lib/config-data/haproxy/etc/haproxy/haproxy.cfg 파일에서 이러한 서비스를 설정하여 HAProxy가 각 오버클라우드 노드의 전용 컨테이너에서 실행되도록 지시합니다.

다음 표는 HAProxy에서 관리하는 서비스 목록을 보여줍니다.

표 6.1. HAProxy에서 관리하는 서비스

aodh

cinder

glance_api

gnocchi

haproxy.stats

heat_api

heat_cfn

Horizon

keystone_admin

keystone_public

mysql

Neutron

nova_metadata

nova_novncproxy

nova_osapi

nova_placement

haproxy.cfg 파일의 각 서비스에 대해 다음 속성을 볼 수 있습니다.

  • listen: 요청을 수신 대기 중인 서비스의 이름입니다.
  • bind: 서비스가 수신 대기 중인 IP 주소 및 TCP 포트 번호입니다.
  • server: HAProxy, IP 주소 및 수신 대기 포트, 서버에 대한 추가 정보를 사용하는 각 컨트롤러 노드 서버의 이름입니다.

다음 예제는 haproxy.cfg 파일의 OpenStack Block Storage(cinder) 서비스 구성을 보여줍니다.

listen cinder
  bind 172.16.0.10:8776
  bind 192.168.1.150:8776
  mode http
  http-request set-header X-Forwarded-Proto https if { ssl_fc }
  http-request set-header X-Forwarded-Proto http if !{ ssl_fc }
  option httpchk
  server overcloud-controller-0 172.16.0.13:8777 check fall 5 inter 2000 rise 2
  server overcloud-controller-1 172.16.0.14:8777 check fall 5 inter 2000 rise 2
  server overcloud-controller-2 172.16.0.15:8777 check fall 5 inter 2000 rise 2

이 예제 출력에서는 OpenStack Block Storage(cinder) 서비스에 대한 다음 정보를 보여줍니다.

  • 172.16.0.10:8776: 오버클라우드에서 사용할 내부 API 네트워크(VLAN201)의 가상 IP 주소 및 포트입니다.
  • 192.168.1.150:8776: 외부 네트워크(VLAN100)의 가상 IP 주소 및 포트로, 오버클라우드 외부에서 API 네트워크에 액세스할 수 있습니다.
  • 8776: OpenStack Block Storage(cinder) 서비스가 수신 대기 중인 포트 번호입니다.
  • Server: 컨트롤러 노드 이름 및 IP 주소입니다. HAProxy는 해당 IP 주소로 이루어진 요청을 서버 출력에 나열된 컨트롤러 노드 중 하나로 보낼 수 있습니다.
  • httpchk: 컨트롤러 노드 서버에서 상태 점검을 활성화합니다.
  • fall 5: 서비스가 오프라인 상태인지 확인하는 데 실패한 상태 점검 수입니다.
  • 2000년 간: 연속된 두 개의 상태 점검 간격(밀리초)입니다.
  • up 2: 서비스가 실행 중인지 확인하는 데 성공한 상태 점검 수입니다.

haproxy.cfg 파일에서 사용할 수 있는 설정에 대한 자세한 내용은 haproxy 패키지가 설치된 모든 노드의 /usr/share/doc/haproxy-[VERSION]/configuration.txt 파일을 참조하십시오.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.