F5 NGINX Plus

고가용성

NGINX Plus를 액티브-패시브 또는 액티브-액티브 고가용성(HA) 클러스터로 구성하여 애플리케이션 가용성을 보장할 수 있습니다. 아래에 설명된 액티브-패시브 HA 클러스터에는 두 개의 NGINX Plus 서버가 있습니다. 즉, 트래픽을 능동적으로 처리하는 기본 서버와 기본 서버의 상태를 모니터링하고 현재 기본 서버에 장애가 발생할 경우 자동으로 기본 서버 역할을 대신하는 백업 서버입니다. 액티브-액티브 HA 클러스터에서는 두 서버가 모두 트래픽을 처리합니다. 액티브-액티브-액티브 및 기타 N+1 구성도 지원됩니다.

액티브-패시브 NGINX Plus HA 클러스터가 VRRP를 사용하여 유동 가상 IP 주소를 관리하므로 IP 주소를 항상 사용할 수 있고 트래픽이 중단되지 않습니다.
액티브-패시브 NGINX Plus HA 클러스터가 VRRP를 사용하여 유동 가상 IP 주소를 관리하므로 IP 주소를 항상 사용할 수 있고 트래픽이 중단되지 않습니다.

NGINX Plus는 클러스터의 HA에 대한 자동 장애 조치 외에 구성 동기화도 지원하므로 한 클러스터에서 하나의 NGINX Plus 서버에 생성한 구성이 다른 서버에 전파됩니다. 상태 공유도 지원되므로 sticky‑learn 세션 지속성, 속도 제한, 키 값 저장소 등 상태 정보를 활용하는 기능이 클러스터링된 환경에서 제대로 작동합니다.

웹 애플리케이션을 위한 HA 아키텍처

NGINX Plus의 고급 로드 밸런싱애플리케이션 상태 모니터링 기능은 업스트림 애플리케이션 서버에 복원력과 확장성을 제공합니다. NGINX Plus를 HA 클러스터로 구성하면 애플리케이션의 복원력이 향상되고 애플리케이션 스택에서 단일 장애 지점이 제거됩니다. NGINX Plus 서버가 트래픽을 처리할 수 없게 되면 다른 서버가 대신합니다.

더 높은 수준의 중복성을 위해 또는 단일 액티브-패시브 쌍이 제공할 수 있는 것보다 더 많은 처리량이 필요한 경우 여러 액티브-패시브 NGINX Plus 인스턴스를 지원하도록 구성을 확장할 수도 있습니다.

HA 솔루션의 작동 방식

NGINX Plus 액티브-패시브 HA 솔루션은 Virtual Router Redundancy Protocol(VRRP) 구현을 사용하는 keepalived를 기반으로 합니다. nginx-ha-keepalived 패키지를 설치하고 keepalived를 구성하면 클러스터의 각 NGINX Plus 서버에서 별도의 프로세스로 실행되고 공유 가상 IP 주소를 관리합니다. 가상 IP 주소는 서비스 또는 애플리케이션에 대한 DNS 레코드 등을 통해 다운스트림 클라이언트에 알려지는 IP 주소입니다.

keepalived는 초기 구성에 따라 기본 서버를 지정하고 해당 서버에 가상 IP 주소를 할당합니다. 기본 서버는 정기적으로 백업 서버에 VRRP 알림 메시지를 보내 백업 서버가 정상인지 확인하고 keepalived 및 NGINX Plus가 모두 실행 중인지 확인합니다. 백업 서버가 3번 연속으로 알림을 받지 못하면 새 기본 서버가 되고 가상 IP 주소를 넘겨받습니다.

HA 솔루션 설치 및 구성

NGINX Plus HA 활성화는 매우 간단합니다. 이는 NGINX Plus 저장소에서 설치하는 nginx-ha-keepalived 패키지에 구현됩니다. 예를 들어 Debian 및 Ubuntu 시스템의 명령은 다음과 같습니다.

$ apt-get install nginx-ha-keepalived

HA 클러스터의 각 NGINX Plus 서버에 패키지를 설치한 다음 포함된 nginx-ha-setup 스크립트를 실행하여 HA 소프트웨어를 구성하고 실행하십시오. 전체 지침은 NGINX Plus Admin Guide를 참조하십시오.

HA 장애 조치는 하드웨어 오류, 운영 체제 종료, NGINX Plus 소프트웨어 종료 등의 심각한 상황으로 인해 기본 NGINX Plus 서버의 작동이 중지되는 경우 발생합니다. 필요한 경우 더 많은 오류 상황을 식별하기 위해 내부 상태 확인을 확장할 수 있습니다.

HA 클러스터 전체에서 구성 동기화

클러스터의 NGINX Plus 서버 전체에서 구성을 동기화할 수 있으므로 서버를 개별적으로 관리할 필요가 없습니다. 지정된 "기본" 서버를 변경한 다음 이를 클러스터의 다른 서버로 푸시하면 됩니다.

이 기능은 NGINX Plus R12에 도입되었으며 NGINX Plus 저장소에서 배포된 nginx-sync 패키지에 구현됩니다. Debian 및 Ubuntu 시스템의 명령은 다음과 같습니다.

$ apt-get install nginx-sync

자세한 내용은 NGINX Plus Admin Guide를 참조하십시오.

HA 클러스터 전체에서 상태 공유

클러스터의 NGINX Plus 서버는 영역 동기화 모듈(NGINX Plus R15에 도입됨)에 구현된 대로 상태 정보를 공유할 수 있습니다. 이를 통해 클러스터링된 환경에서 상태를 유지하는 기능이 제대로 작동할 수 있습니다. 다음 NGINX Plus 기능은 클러스터를 인식합니다.

  • Sticky‑learn 세션 지속성
  • 속도 제한
  • 키 값 저장소

자세한 내용은 NGINX Plus Admin Guidezone_sync 모듈에 대한 참조 문서를 확인하십시오.

클라우드 환경의 NGINX Plus를 위한 HA

keepalived 기반 HA 솔루션은 NGINX Plus의 온프레미스 배포에서만 작동하지만 클라우드 환경을 위한 HA 솔루션도 있습니다.

추가 자료

다음 단계