접근 불가능한 노드를 스웜에서 강제 제거
이 단계에서는 접근할 수 없거나 응답하지 않는 노드를 스웜에서 강제로 제거하는 방법을 배우게 됩니다. 이는 노드에 장애가 발생하여 정상적으로 제거할 수 없는 경우에 필요합니다.
먼저, 노드 ID 를 얻기 위해 스웜의 노드를 다시 나열해 보겠습니다.
docker node ls
강제로 제거하려는 노드의 ID를 식별합니다. 현재 설정에서는 이것이 유일한 노드이며, 매니저입니다.
노드를 강제로 제거하려면 --force 플래그와 노드 ID 를 함께 사용하여 docker node rm 명령을 사용합니다. <node_id>를 실제 ID 로 바꿉니다.
docker node rm --force <node_id>
노드가 제거되었음을 나타내는 출력을 보게 됩니다.
Node <node_id> removed from swarm
이제 스웜의 노드를 다시 나열하여 노드가 제거되었는지 확인합니다.
docker node ls
스웜에서 유일한 노드 (매니저) 를 제거했으므로 오류 메시지가 표시되며, 현재 Docker 데몬은 더 이상 스웜의 일부가 아닙니다.
Error: This node is not a swarm manager. Use "docker swarm init" or "docker swarm join" to connect this node to a swarm.
이는 노드가 매니저 노드였음에도 불구하고 스웜에서 성공적으로 제거되었음을 확인합니다. 다른 매니저가 없는 경우 매니저 노드를 강제로 제거하면 스웜의 가용성에 영향을 미칠 수 있으므로 주의해서 수행해야 합니다.