아마존 OpenSearch Service에서 클러스터 안정성 높이기 위한 전용 클러스터 관리자 노드 활용 가이드
도입
OpenSearch는 대규모 검색 및 로그 분석 환경에 적합한 오픈소스 기반 검색 엔진입니다. AWS에서는 OpenSearch Service를 통해 이러한 검색 클러스터를 손쉽게 구축하고 운영할 수 있도록 완전 관리형 서비스를 제공합니다. 클러스터의 성능과 안정성을 최대한 유지하기 위해서는 적절한 노드 구성 전략이 필수이며, 특히 전용 클러스터 관리자 노드의 활용은 핵심적인 역할을 합니다. 이번 글에서는 어떻게(OpenSearch 구성 방법) 전용 클러스터 관리자 노드를 활용하여 클러스터 안정성을 높일 수 있는지 활용 및 배포 가이드를 중심으로 살펴보겠습니다.
본론
- 전용 클러스터 관리자 노드란?
OpenSearch 클러스터에는 다양한 유형의 노드가 존재합니다. 그중 전용 클러스터 관리자 노드(dedicated cluster manager node)는 클러스터 상태를 관리하며, 인덱스 생성, 셤드 위치 추적, 노드 간 통신 및 변경 사항 전파 등 중요한 역할을 담당합니다. 주의할 점은 이 노드는 데이터 저장이나 검색 요청을 처리하지는 않는다는 것입니다. 클러스터 관리자 역할과 데이터 노드 역할을 동일 노드에서 겸직하게 되면 리소스를 경쟁하게 되어 클러스터 안정성이 크게 저하될 수 있습니다. 따라서 독립된 클러스터 관리자 노드를 구성하는 것은 필수적인 설정이라 할 수 있습니다.
- 안정성을 위한 클러스터 관리자 노드 수 계산
OpenSearch에서는 리더 선출을 위해 과반수 기반의 투표(quorum)를 사용합니다. 예를 들어 클러스터 관리자 노드가 3개인 경우, 과반수인 2개의 노드만 살아 있다면 새로운 클러스터 관리자를 선출할 수 있으며 클러스터 운영도 계속됩니다. 이에 따라 운영 환경에서는 반드시 무조건 3개 이상의 전용 클러스터 관리자 노드를 배포하는 것이 안전하며, 단 1개의 노드는 AWS에서 허용하지 않습니다.
5개를 구성하는 것도 가능하지만, 클러스터 전체 중 하나의 노드만 활성으로 동작하고 나머지 4개는 대기 상태이므로 비용 대비 효율 측면에서는 3개 구성이 일반적으로 가장 많이 활용됩니다.
- 배포 시나리오별 노드 구성 방법 비교
AWS OpenSearch Service에서는 도메인을 생성할 때 Easy Create, Standard Create 등 다양한 옵션을 제공합니다. Easy Create를 선택하면 ‘3개의 가용영역(AZ)’에 클러스터 관리자 노드를 자동으로 배포하여 장애 조치가 고려된 구성을 빠르게 설정할 수 있습니다.
Standard Create는 운영(Production) 및 개발/테스트 환경에 맞게 더 세부적으로 설정 가능한 템플릿을 제공합니다. 예를 들어, Production 도메인에서는 대기 스탠바이 여부에 따라 3~5개의 클러스터 관리자 노드를 요구하게 되고, Dev/Test 환경에서는 필요하지 않거나 선택적으로 구성할 수 있습니다.
- 클러스터 관리자용 인스턴스 타입 선택 기준
클러스터 관리자 노드는 데이터 요청은 처리하지 않기 때문에 비교적 적은 리소스를 요구하는 인스턴스를 선택해도 무방합니다. 하지만 클러스터 내 셤드 배치, 인덱스 관리, 상태 정보 반영 등 지속적인 연산이 필요하므로 JVM heap과 CPU 사용률은 반드시 감시해야 합니다. AWS에서는 Amazon CloudWatch를 통해 다음 주요 지표를 감시할 것을 권장합니다:
- ManagerCPUUtilization: 3회 연속 15분간 50% 이상이면 경고
- ManagerJVMMemoryPressure: 1분 동안 3회 연속 95% 이상이면 경고
경고 조건이 자주 발생할 경우 인스턴스 유형 변경 또는 클러스터 관리자 수 증설이 필요합니다.
- 멀티 AZ 구성 시 고려사항
고가용성 환경을 위한 Multi-AZ(with standby)를 사용할 경우, 3개의 클러스터 관리자 노드를 3개의 가용영역에 나누어 배치하며, 하나 이상의 노드 장애 시에도 클러스터 운영이 지속됩니다. Single-AZ나 Multi-AZ(without standby)의 경우에도 3개 이상의 관리자 노드를 구성하는 것이 권장됩니다.
결론
전용 클러스터 관리자 노드는 OpenSearch 운영의 핵심 축으로, 클러스터의 안정성, 확장성, 장애 대응 능력을 크게 향상시킬 수 있습니다. 특히 미션 크리티컬한 생산 환경에서는 필수적인 구성 요소이며, 운영 자동화 및 성능 최적화를 위한 기반이 되기도 합니다. 반면, 개발 및 테스트 목적이라면 비용 절감을 위해 최소한의 구성을 선택할 수 있습니다. AWS OpenSearch Service의 다양한 배포 시나리오를 비교하고 적절한 인스턴스를 선택하여 귀사의 워크로드에 최적화된 클러스터 환경을 구성해보시기 바랍니다.
AI, Cloud 관련한 문의는 아래 연락처로 연락주세요!
(주)에이클라우드
이메일 : acloud@a-cloud.co.kr
회사 번호 : 02-538-3988
회사 홈페이지 : https://www.a-cloud.co.kr/
문의하기