• Docker Swarm 구성환경 :
- Manager Node 호스트 3개
- Worker Node 2개

 

  • Docker Swarm 구성요소

- Swarm 클러스터는 Manager Node 와 Worker Node 두 종류가 존재.

 

Manager Node

- Swarm과 사용자 간의 Interface로써 Swarm 방식으로 처리되는 모든 기능에 대해 사용자의 명령을 받는 통로 역활 수행

- 자신을 비롯한 모든 Node의 등록과 탈퇴를 처리하고 상태정보 관리를 통하여 가용자원의 상태를 관리

- Task Scheduler로써 사용자가 지시한 일을 여러 Worker가 적절히 수행할 수 있도록 Service의 생명주기 관리를 주관

- 다수의 Manager 간 클러스터 정보를 동기화하고 전체 Swarm클러스터의 가용성을 관리

 

Worker Node

- Manager Node의 지시를 받아 container를 구동하는 노드.

 

  • Docker Swarm 구성방법 :
- docker swarm init --advertise-addr [ip]
(docker swarm 을 구성하기 위한 초기화 명령어 / worker 노드를 추가하는 token 값이 생성된다.) 
- docker swarm join-token worker
(해당 명령어 입력시 Worker 노드를 추가하는 token 값이 생성되며, Worker 노드에 가입을 원하는 호스트에서 결과값 실행시 가입완료) 
- docker swarm join-token manager
(해당 명령어 입력시 아래 결과값처럼 Manager 노드를 추가하는 token 값이 생성되며, Manager 노드에 가입을 원하는 호스트에서 결과값 실행시 가입완료.) 
To add a manager to this swarm, run the following command: docker swarm join --token SWMTKN-1-0ysvt743g5e8gi5n3zmetdgqa449tdp2zgbxbaimmlkhghq9za-6w26kqxyn70ujmphtuw6o5tqr 10.230.102.13:2377

 

 

  • 유지보수 관리 모드
- docker node update --availability drain [node name]
(유지보수 모드로 변경(drain)하게 되면 앞으로 모든 컨테이너는 해당 서버에 할당이 되지 않으며, 현재 구동중인 모든 컨테이너들이 다른 쪽으로 넘어가게됨)

 

  • 유지보수 관리 모드 취소
- docker node update --availability active [node name]
(유지보수 모드를 취소하는 명령어로, 앞으로 해당호스트에도 컨테이너 할당이 가능하게되며, 취소했다고 해도 기존에 해당호스트에서 실행되던 컨테이너들은 다시 넘어오지 않는다.)

 

  • Manager Node로 승격
- docker node promote [WorkerNode Name]
(Worker Node를 Manager Node로 승격)

 

  • Worker Node로 강등
- docker node demote [ManagerNode Name]
(Manager Node를 Worker Node로 강등)

 

  • node 제거
- docker swarm rm [node name]
(Manager 노드에서 해당명령어로 노드를 제거시킬수 있음)

 

  • Cluster 탈퇴방법

- docker swarm leave
(Worker Node가 cluster를 떠날때 사용한다.)

- docker swarm leave --force
(Manager node가 cluster를 떠날때 사용한다.)

 

  • 장애시험
- 매니저 노드 2개를 구성하여 일반 Manager노드 1개가 장애가 날경우 (정상작동) 
- 매니저 노드 2개를 구성하여 리더 Manager노드 1개가 장애가 날경우 (장애)
(The swarm does not have a leader. It’s possible that too few managers are online. Make sure more than half of the managers are online. 의 에러가 발생하며 모든 서버가 마비가 된다.)
- 매니저 노드 3개를 구성하여 일반 Manager노드 1개가 장애가 날경우 (정상작동)
- 매니저 노드 3개를 구성하여 리더 Manager노드 1개가 장애가 날경우 (정상작동) 

 위처럼 장애시험을 통해 얻은 결과는 총 Manager노드 개수의 반 이상이 정상인 상태여야 정상작동을 한다는 것이다. 위 같은 이유로 보통 Manager Node 의 개수는 3, 5, 7 처럼 홀수개의 갯수로 구성해야 가용성이 보장된다.

Posted by 실력키우기

블로그 이미지
공 부 하 는 직 장 인
실력키우기

태그목록

공지사항

Yesterday
Today
Total

최근에 달린 댓글