본문 바로가기

DevOps

OpenSearch Performance Analyzer: 클러스터 성능 최적화를 위한 필수 도구

728x90
반응형

https://opensearch.org/docs/latest/monitoring-your-cluster/pa/dashboards/

OpenSearch는 뛰어난 성능과 안정성을 제공하는 오픈 소스 검색 및 분석 엔진입니다. OpenSearch를 사용하는 과정에서 클러스터의 성능을 모니터링하고 문제의 근본 원인을 파악하기 위해 Performance Analyzer라는 강력한 도구를 사용할 수 있습니다. 이번 포스트에서는 Performance Analyzer의 기능과 설치 및 사용 방법을 살펴보겠습니다.

반응형

Performance Analyzer란?

Performance Analyzer는 OpenSearch의 클러스터 성능을 모니터링할 수 있는 플러그인으로, 다양한 클러스터 성능 지표를 조회할 수 있는 REST API를 제공합니다. 이를 통해 관리자들은 시스템 성능을 실시간으로 파악하고, 문제가 발생했을 때 그 원인을 보다 쉽게 추적할 수 있습니다.

Performance Analyzer는 OpenSearch 2.0 이상 버전에 기본적으로 설치되어 있으며, 클러스터 성능 문제의 근본 원인을 파악하는 Root Cause Analysis (RCA) 기능도 지원합니다.

주요 기능 및 설치 방법

1. 설치 및 활성화

Performance Analyzer는 OpenSearch 설치 시 기본적으로 포함되어 있으며, 사용자가 직접 활성화할 수 있습니다.

플러그인을 활성화하려면 다음 명령어를 사용합니다:

curl -XPOST localhost:9200/_plugins/_performanceanalyzer/cluster/config -H 'Content-Type: application/json' -d '{"enabled": true}'

2. 디스크 공간 요구사항

Performance Analyzer는 /dev/shm을 임시 저장소로 사용하며, 최대 1GB의 공간을 사용할 수 있습니다. 만약 Docker에서 OpenSearch를 실행 중이라면 /dev/shm 기본 크기인 64MB를 늘려야 할 수 있습니다. 다음과 같이 Docker 실행 시 옵션을 추가해 설정할 수 있습니다:

docker run --shm-size 1gb

3. 보안 설정

Performance Analyzer는 전송 중 데이터 암호화를 지원하며, 이를 위해 performance-analyzer.properties 파일을 수정해야 합니다. 해당 파일에서 https-enabledtrue로 설정하고, SSL 인증서 경로를 지정합니다.

https-enabled = true
certificate-file-path = specify_path
private-key-file-path = specify_path

4. 사용 예시

Performance Analyzer는 REST API를 통해 클러스터 성능 데이터를 조회할 수 있습니다. 예를 들어, 클러스터의 메트릭 정보를 얻기 위해 다음과 같은 요청을 보낼 수 있습니다:

GET localhost:9600/_plugins/_performanceanalyzer/metrics/units

이 요청을 통해 디스크 사용률, 스레드 풀 큐 크기, 인덱싱 압력 등의 다양한 메트릭 정보를 얻을 수 있습니다.

Root Cause Analysis (RCA)

RCA는 Performance Analyzer가 제공하는 강력한 기능으로, 클러스터 성능 및 가용성 문제의 근본 원인을 파악할 수 있습니다. RCA 기능을 활성화하려면 다음 명령어를 사용합니다:

curl -XPOST localhost:9200/_plugins/_performanceanalyzer/rca/cluster/config -H 'Content-Type: application/json' -d '{"enabled": true}'

이렇게 활성화된 RCA는 성능 문제를 자동으로 분석하고, 클러스터에서 발생할 수 있는 문제를 사전에 탐지하여 관리자에게 정보를 제공합니다. 예를 들어, 메모리 사용률이 비정상적으로 높은 경우 RCA는 해당 노드와 관련된 리소스의 사용 현황을 보여주고, 문제 해결에 필요한 인사이트를 제공합니다.

Performance Analyzer 설정 변경

성능 모니터링 요구사항에 맞게 performance-analyzer.properties 파일을 수정하여 Performance Analyzer를 구성할 수 있습니다. 예를 들어, 웹 서비스의 바인딩 호스트를 설정하거나 메트릭 데이터의 저장 위치를 지정할 수 있습니다.

webservice-bind-host = 0.0.0.0
metrics-location = /dev/shm/performanceanalyzer/
metrics-deletion-interval = 1

위와 같이 설정하여 클러스터의 성능 데이터를 실시간으로 모니터링하고 관리할 수 있습니다.

728x90

마무리

OpenSearch의 Performance Analyzer는 클러스터 성능을 최적화하고 문제의 근본 원인을 빠르게 파악할 수 있는 강력한 도구입니다. 특히 RCA 기능을 통해 성능 이슈를 미리 감지하고 해결 방안을 마련할 수 있어, 대규모 클러스터 운영 시 매우 유용합니다. OpenSearch와 함께 Performance Analyzer를 잘 활용하여 시스템의 안정성을 더욱 높여보세요.

728x90
반응형