출처
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/cluster-nodes-shutdown.html
elasitcsearch 서버를 재시작하는 방법
es가 장애 발생시에는 자동으로 reallocation이 발생한다. 단순한 설정 변경 이후에 재시작이라면 단순히 이 방식을 사용하면 좋다.
1. relocation
curl -XPUT localhost:9200/_cluster/settings -d '{
"transient" : {
"cluster.routing.allocation.enable" : "none"
}
}'
2. shutdown
curl -XPOST 'http://localhost:9200/_cluster/nodes/_local/_shutdown'
3. background로 실행
./bin/elasticsearch -d
4. reallocation 이 되도록 변경 (원래대로)
curl -XPUT localhost:9200/_cluster/settings -d '{
"transient" : {
"cluster.routing.allocation.enable" : "all"
}
}'
구장비를 반납하고 새 장비를 추가할 때는 다음과 같다.
1. allocation을 하지 않도록 함
curl -XPUT localhost:9200/_cluster/settings -d '{
"transient" : {
"cluster.routing.allocation.enable" : "none"
}
}'
2. 새 장비에서 데몬 실행
bin/elasticsearch -d
3. 반납장비는 데몬 종료
curl -XPOST 'http://localhost:9200/_cluster/nodes/_local/_shutdown'
4. reallocation 실시
curl -XPUT localhost:9200/_cluster/settings -d '{
"transient" : {
"cluster.routing.allocation.enable" : "all"
}
}'
참고로 1대를 빼고, 1대를 추가한다 하더라도 동일한 shard가 반드시 reallocation되지 않는다.
실제 재시작 전의 데이터의 index를 살펴보면 아래와 같았다.
$ ls elasticsearch/nodes/0/indices/movies/
0/ 1/ 10/ 12/ 2/ 5/ 6/ 9/
재시작 후에 살펴보니 샤드가 일부 변경된 것을 확인하면서 reallocation이 예상대로 되지 않음을 확인했다.
$ ls elasticsearch/nodes/0/indices/movies/
0/ 1/ 10/ 12/ 3/ 5/ 6/ 9/
'Elasticsearch' 카테고리의 다른 글
Elasticsearch의 query와 filter의 비교 (0) | 2015.03.04 |
---|---|
[es] property(field)의 index 속성 (0) | 2015.03.03 |
[es] 인덱스 생성/수정/삭제하기 - 예제 (특정 property 삭제/변경은 위험) (0) | 2015.03.03 |
[es] 공부 자료 URL (0) | 2015.02.26 |
[es] and, or보다는 bool 사용하기 (0) | 2015.02.26 |