2017-02-15 1 views
2

누구든지 Elastic Search에서 노드 간 통신을 중지 한 다음 다시 시작하는 방법을 알고 있습니까? 내 시스템에서 특정 조건이 될 때까지 멈추라 고 말하고 싶습니다 (데이터 동기화)ElasticSearch 클러스터 설정

답변

0

노드 간 통신이란 데이터 동기화 및 샤드 재배치를 의미합니까?

예인 경우 클러스터 설정 API를 사용하여 cluster.routing.allocation.enablenone으로 설정하면됩니다.

데이터 동기화를 의미하는 것이 아니라면 포트 9300 (또는 포트 ES가 내부 통신에 사용하는 포트)을 차단하여이 작업을 수행 할 수 있습니다.

0

클러스터를 나가는 노드가 있으면 elasticsearch가 샤드와 복제본의 균형을 다시 조정합니다. 클러스터가 기존 데이터를 나머지 노드에 복사하여 샤드 및 복제 설정을 수행해야하므로 노드가 손실되면 전체 클러스터로드가 증가합니다. 따라서 작업이 자주 발생하면 추가 샤드 및 복제본에 상당한 공간이 소비됩니다.

영향을 완전히 이해 한 경우에는 샤드 할당 필터링을 시도 할 수 있습니다. 예를 들어, 클러스터에서 호스트 IP 10.0.0.1을 제외 : IP보다는

PUT _cluster/settings 
{ 
    "transient" : { 
    "cluster.routing.allocation.exclude._ip" : "10.0.0.1" 
    } 
} 

기타, 당신은뿐만 아니라 노드를 제외 할 노드 이름 또는 호스트 이름을 사용할 수 있습니다.

여기에서 전체 설명서를 확인할 수 있습니다. https://www.elastic.co/guide/en/elasticsearch/reference/current/allocation-filtering.html

관련 문제