master_not_discovered_exception: master_not_discovered_exception / MasterNotDiscoveredException
Elasticsearch의미
클러스터가 활성 master 노드를 선출하거나 찾지 못했다. master가 없으면 샤드 할당, 매핑 변경, 클러스터 상태 갱신이 불가능해 클러스터가 작업을 처리할 수 없게 된다.
원인
master-eligible 노드의 과반수(quorum)에 도달할 수 없음, 네트워크 파티션(split brain 방지), 잘못된 discovery.seed_hosts / cluster.initial_master_nodes 구성, 신규 설치에서 bootstrap 미수행, 또는 master-eligible 노드 수 부족.
해결 방법
master-eligible 노드가 실행 중이며 서로를 볼 수 있는지 확인한다: GET _cat/nodes?v 및 GET _cluster/state. discovery.seed_hosts와 cluster.initial_master_nodes 설정을 확인한다(최초 설정 시). 네트워크/방화벽과 노드 간(transport 9300) 연결을 확인한다. 충분한 수(가급적 3개)의 master-eligible 노드를 실행 상태로 유지한다. 로그에서 master 선출 메시지를 확인한다.
같은 데이터베이스의 다른 항목
- cluster_health_redcluster health status: RED / unassigned shards (클러스터 상태 RED / 미할당 샤드)
- no_shard_available_action_exceptionno_shard_available_action_exception: No shard available for [...]
- es_rejected_execution_exceptiones_rejected_execution_exception: rejected execution of ... on ... (queue capacity ...) (HTTP 429)
- security_exceptionsecurity_exception: unable to authenticate / action [...] is unauthorized for user [...] (HTTP 401/403)
- validation_exceptionvalidation_exception / illegal_argument_exception: Validation Failed: ...
- task_cancelled_exceptiontask_cancelled_exception: Task was cancelled / TaskCancelledException
- action_request_validation_exceptionaction_request_validation_exception