Redis Visual Manager Octo #9
Cluster Configuration V Delslots

<< Cluster Configuration IV Expand/Collapse Cluster Configuration VI Stable Slots >>

레디스 클러스터 슬롯 삭제

동영상 설명이 준비되어있습니다.


Video Time: 1min(No sound)

슬롯 삭제

  1. 'Cluster Assign Slots' 탭에서 노드를 선택하고 슬롯 범위를 입력하고 'Delete'버튼을 클릭한다.
    Cluster Delslots 1: Delete
  2. 슬롯 삭제 확인
    Cluster Delslots 2: Confirm
  3. 슬롯 삭제 완료
    Cluster Delslots 3: Completed
  4. 삭제된 슬롯 확인
    Cluster Delslots 4: Check

키가 있을 경우

  • 삭제하려는 슬롯에 키가 있을 경우, "먼저 키를 삭제하세요" 메시지가 나온다. 'Flushall' 명령으로 키를 삭제한 후 슬롯을 삭제한다.
    Cluster Delslots: Has keys

Redis-cli에서 슬롯 삭제시 주의할 사항 I : 키가 있을 경우

  • 키가 있는데 delslots 명령으로 키를 삭제했다면, dbsize 명령을 실행하면 보유하고 있는 키 개수가 나오고 keys 명령을 실행하면 키 리스트가 나온다.   하지만 get key를 하면 아래와 같이 에러가 발생한다.
    Cluster Delslots Get Error
  • 이런 이상한 현상을 팬텀(Phantom) 현상이라고 한다. 키를 복구하려면 슬롯을 다시 할당하면 된다.
  • 대량 슬롯 할당(추가) 방법: src/redis-cli -p 7000 cluster addslots {0..5461}
  • 대량 슬롯 삭제 방법: src/redis-cli -p 7000 cluster delslots {0..5461}
  • 옥토에서는 이런 현상을 방지하기 위해서 슬롯 삭제 전에 삭제될 슬롯이 키를 가지고 있는지 확인해서 있으면 키를 삭제하도록 합니다.

Redis-cli에서 슬롯 삭제시 주의할 사항 II : 다른 노드 확인

  • delslots 명령으로 슬롯을 삭제했을 경우 해당 노드에서는 슬롯이 삭제된 것으로 나오지만, 클러스터 내 다른 노드를 확인하면 그대로 있다는 것을 확인할 수 있다.   그리고 삭제한 노드에서 cluster info 명령으로 보면 cluster_state:fail 인데 다른 노드에서는 ok로 나온다.
    Cluster Delslots state: fail Cluster Delslots state: ok
  • 이것은 cluster-require-full-coverage 설정을 yes로 했을 경우에도 발생한다.
  • 이 경우 슬롯을 보유한 노드뿐만 아니라 클러스터 내 모든 마스터에서 delslots 명령을 실행해야 한다.
  • 옥토에서는 이런 이상한 현상이 발생하지 않게 하기 위해서 'Delete'를 실행하면 클러스터 내 모든 마스터에 접속해서 delslots 명령을 실행한다.



<< Expand/Collapse Delete Slots Stable Slots >>

질문하거나 댓글을 보려면 클릭하세요.  댓글수 :    조회수 :

Email 답글이 올라오면 이메일로 알려드리겠습니다.