DBMS/Cassandra
[Cassandra] 노드 임시 중지/영구 제거/재 추가 방법
seungh0
2023. 9. 23. 02:51
반응형
노드 임시 중지 (서버 점검 및 재시작 등)
nodetool drain
- 이 명령어는 노드를 일시적으로 비활성 상태로 만들어 클러스터에서 안전하게 제거하지 않고도 유지하는 데 사용됩니다. 일반적으로 노드의 유지 보수 작업이나 장애 복구 작업 중에 사용됩니다
- 노드가 클러스터에서 쿼리 요청을 받지 않도록 하기 위해 읽기 및 쓰기 요청을 중지합니다.
- 노드가 다른 노드로부터 데이터를 받거나 복제하지 않도록 하기 위해 데이터 전송을 중지합니다.
- 노드가 클러스터와의 연결을 끊기 전에 남아 있는 쓰기 작업을 완료합니다.
- nodetool drain 명령어를 실행한 노드는 클러스터에서 제거되지 않고 유지됩니다. 이후 다시 활성화되거나 유지 보수 작업 완료 후 정상적으로 작동할 수 있습니다.
노드를 클러스터에서 영구 제거 방법
nodetool decommission
- 제거할 노드의 데이터 복사본을 다른 노드로 이동시킨다. (이로 인해 데이터의 복제 수준이 유지된다)
- 데이터 이동이 완료되면 클러스터에서 해당 노드를 제거합니다.
현재 클러스터내에서 살아있는 노드를 제거할땐 nodetool decomission을 죽어 있는 노드를 제거할때는 nodetool removenode
노드를 클러스터에 재 추가
- 데이터/로그를 다 삭제하고 카산드라 실행.
- nodetool repair 수행
- 기존 노드들에서 nodetool cleanup 해야지, 리밸런싱 후 남은 찌거기 데이터들이 제거됨.
반응형