728x90
Elasticsearch 클러스터의 상태를 점검하고 모니터링하는 방법
curl 명령어와 Elasticsearch API 엔드포인트를 사용하면 클러스터의 상태, 노드, 인덱스, 샤드 및 다른 핵심 정보를 확인할 수 있습니다.
클러스터 상태 확인
curl -X GET "http://localhost:9200/_cluster/health"
curl -XGET 'http://elastic_user:elastic_password@localhost:9200/_cluster/health?pretty'
{
"cluster_name" : "es-cluster",
"status" : "yellow",
"timed_out" : false,
"number_of_nodes" : 3,
"number_of_data_nodes" : 3,
"active_primary_shards" : 1933,
"active_shards" : 5673,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 1347,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 0,
"task_max_waiting_in_queue_millis" : 0,
"active_shards_percent_as_number" : 80.81196581196582
}
클러스터의 건강 상태와 기본 정보를 확인할 수 있습니다. "status" 필드를 통해 클러스터 상태를 확인할 수 있습니다.
클러스터 노드 확인
curl -X GET "http://localhost:9200/_cat/nodes?v"
curl -XGET 'http://elastic_user:elastic_password@localhost:9200/_cat/nodes?v'
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
192.168.0.107 88 82 52 15.27 15.69 15.96 cdhilmrstw * es02
192.168.0.106 85 76 3 1.99 2.57 2.84 cdhilmrstw - es01
192.168.0.108 67 76 3 0.74 0.97 1.18 cdhilmrstw - es03
클러스터에 속한 노드의 목록을 확인할 수 있으며, 각 노드의 상태와 정보를 표시합니다.
인덱스 목록 확인
curl -X GET "http://localhost:9200/_cat/indices?v"
curl -XGET 'http://elastic_user:elastic_password@localhost:9200/_cat/indices?v'
curl -s -XGET 'http://elastic_user:elastic_password@localhost:9200/_cat/indices?v&s=creation.date:desc' | head -n 20
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
curl -s -XGET 'http://elastic_user:elastic_password@localhost:9200/_cat/indices?v' | egrep $(date +%Y%m%d)
클러스터에 있는 모든 인덱스의 목록을 확인하고, 각 인덱스의 상태와 기본 정보를 확인할 수 있습니다.
728x90
샤드 및 복제 상태 확인
curl -X GET "http://localhost:9200/_cat/shards?v"
curl -s -XGET 'http://elastic_user:elastic_password@localhost:9200/_cat/shards?v' | head -n 1
index shard prirep state docs store ip node
클러스터의 샤드 및 복제 상태를 확인할 수 있으며, 각 샤드의 할당 정보를 확인할 수 있습니다.
노드 상태 확인
curl -X GET "http://localhost:9200/_nodes/stats"
curl -s -XGET 'http://elastic_user:elastic_password@localhost:9200/_nodes/stats'
각 노드의 상세 정보와 통계 데이터를 확인할 수 있습니다. 노드의 자원 사용 및 활동에 대한 정보를 확인할 수 있습니다.
인덱스 상태 확인
curl -X GET "http://localhost:9200/your_index/_status"
특정 인덱스의 상태를 확인하고 해당 인덱스의 샤드 할당 정보를 확인할 수 있습니다. "your_index"를 확인하려는 실제 인덱스 이름으로 바꿔주세요.
클러스터 상태 상세 정보 확인
curl -X GET "http://localhost:9200/_cluster/state?pretty"
클러스터 상태의 상세 정보를 확인할 수 있으며, 모든 인덱스, 샤드, 복제 등에 대한 정보를 확인할 수 있습니다.
이러한 명령어와 API를 사용하여 Elasticsearch 클러스터의 상태를 주기적으로 모니터링하고 성능 이슈 또는 문제를 조기에 감지할 수 있습니다.
728x90
'리눅스' 카테고리의 다른 글
iotop 명령어 (0) | 2023.11.01 |
---|---|
[draft] CentOS 7 컨테이너 내에서 init를 사용하는 방법 (0) | 2023.11.01 |
System V init(init)와 Systemd의 특징과 주요 차이점 (0) | 2023.10.30 |
OSI 7 계층의 각 계층에 대한 기본 개념과 설명(OSI 7 Layer Model) (0) | 2023.10.29 |
Zabbix를 사용하여 syslog(messages) 로그 파일을 모니터링하는 방법 (0) | 2023.10.27 |