elasticsearch 그룹을 정확하게 닫고 다시 시작하는 방식
2513 단어 ElasticStackelasticsearch
elasticsearch 집단에서 집단이 어떤 노드가 닫힌 것을 발견하면 1분 지연(기본값) 후에 이 노드의 조각을 집단의 다른 노드에 복사하기 시작합니다. 이것은 많은 I/O와 관련이 있을 수 있습니다.이 노드는 머지않아 다시 시작될 것이기 때문에 이 I/O는 필요하지 않다.노드를 닫기 전에 복사본 할당을 비활성화함으로써 피할 수 있습니다.
올바른 종료 방법:
첫 번째 단계:
분할 자동 분포 금지
curl -X PUT "localhost:9200/_cluster/settings?pretty" -H 'Content-Type: application/json' -d'
{
"persistent": {
"cluster.routing.allocation.enable": "primaries"
}
}
'
2부:
동기식 새로 고침 수행
curl -X POST "localhost:9200/_flush/synced?pretty"
참고:
동기화 새로 고침을 실행할 때 응답이 실패하지 않았는지 확인하십시오.요청 자체는 200OK 상태로 되돌아갔지만 응답 본문에 색인 해제 작업으로 인해 실패한 동기화 새로 고침 작업이 열거되어 있습니다.실패하면 다시 요청을 보냅니다.
3부:
모든 노드 닫기
Elasticsearch systemd:
sudo systemctl stop elasticsearch.service
SysV Elasticsearch init:
sudo -i service elasticsearch stop
Elasticsearch :
kill $(cat pid.txt)
종료 후 변경 사항을 실행할 수 있습니다
올바른 재부팅 방법:
첫 번째 단계:
작업이 끝나면 노드를 하나씩 시작합니다.
cd $ES_HOME
./bin/elasticsearch -d -p $ES_HOME/pid.txt
2단계:
모든 노드가 시작되면 다음과 같은 요청을 수행하여 클러스터 상태를 볼 수 있습니다.
curl -X GET "localhost:9200/_cat/health?pretty"
curl -X GET "localhost:9200/_cat/nodes?pretty"
상태는
red
,yellow
,green
이다.노드가 집단에 가입할 때, 로컬 저장소의 모든 메인 슬라이스를 복구하기 시작합니다.이 API는 처음에
_cat/health
에서 status
보고되며 모든 기본 조각이 할당된 것은 아님을 나타냅니다.노드가 로컬 블록을 복구하면 그룹red
이 status
로 전환되어 모든 메인 블록이 복구되었지만 모든 복사본 블록이 분배된 것은 아닙니다.할당을 다시 설정하지 않았기 때문에 예상할 수 있습니다.모든 노드 yellow
로 복제본 할당이 지연되면 마스터 서버는 로컬 분할 복제본이 이미 있는 노드에 복제본을 할당할 수 있습니다.3단계:
슬라이스 자동 배포 활성화
모든 노드가 클러스터에 가입되어 주요 조각을 복원한 후 복원
yellow
을 통해 기본값으로 할당을 다시 설정할 수 있습니다.curl -X PUT "localhost:9200/_cluster/settings?pretty" -H 'Content-Type: application/json' -d'
{
"persistent": {
"cluster.routing.allocation.enable": null
}
}
'
분배를 다시 활성화하면 집단은 복사본을 데이터 노드에 분배하기 시작한다.이 때, 색인 복구와 검색은 안전하지만, 모든 메인 슬라이스와 복사본 슬라이스가 성공적으로 분배되고 모든 노드의 상태가 될 때까지 기다릴 수 있다면, 집단은 더욱 빨리 회복될 것입니다
cluster.routing.allocation.enable
.green
및 _cat/health
API를 사용하여 진행 상황을 모니터링할 수 있습니다.curl -X GET "localhost:9200/_cat/health?pretty"
curl -X GET "localhost:9200/_cat/recovery?pretty"
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Elasticsearch 베이스 04 - 매핑된 작업버전 정보 버전 Elasticsearch 버전 JAVA 의존 버전 Elasticsearch 7.x는 이전 버전과 상당히 큰 변화가 있기 때문에 본 편의 내용, 특히 JAVA 코드의 조작은 이전 버전을 사용하는 학우들...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.