도커 vs 스웜 모드
도커 명령어의 제어 단위 ≫ 컨테이너
스웜 모드 명령어의 제어 단위 ≫ 서비스
서비스
같은 이미지에서 생성된 컨테이너의 집합
서비스를 제어하면 해당 서비스 내의 컨테이너에 같은 명령이 실행됨
서비스 내에 컨테어너는 한 개 이상 존재할 수 있으며, 컨테이너들은 각 워커 노드와 매니저 노드에 할당됨
각 노드에 할당된 컨테이너들을 태스크(task)라고 함
#1 서비스 생성
#2 서비스 조회
#3 서비스 상세 정보 조회
#4 서비스 삭제
docker rm과 달리 서비스의 상태에 관계 없이(중지 여부와 관계 없이) 서비스의 컨테이너를 바로 삭제할 수 있음
#5 nginx 웹 서버 서비스 생성
#6 스웜 클러스터 내의 어떤 노드로 접근해도 서비스에 접근이 가능
nginx 컨테이너가 없는 노드로 접근해도 서비스에 접근할 수 있음
swarm-manager node → http://192.168.xxx.100
swarm-worker1 node → http://192.168.xxx.101
swarm-worker2 node → http://192.168.xxx.102
#7 레플리카셋 추가
컨테이너 수를 늘린 뒤 서비스 내의 컨테이너 목록 확인
서비스 모드
1) 복제(replicated) 모드
- 레플리카 셋의 수를 정의해 그 만큼의 같은 컨테이너를 생성
- 실제 서비스 제공에 일반적으로 사용하는 모드
2) 글로벌(global) 모드
- 스웜 클러스터 내에서 사용할 수 있는 모든 노드에 컨테이너를 반드시 하나씩 생성
- 레플리카 셋의 수를 별도로 지정하지 않음
- 스웜 클러스터를 모니터링하기 위한 에이전트 컨테이너 등을 생성해야 할 때 유용
- docker service create --mode global 명령으로 생성
글로벌 모드 서비스 생성 및 확인
'컨테이너 > 도커' 카테고리의 다른 글
03 서비스 컨테이너에 설정 정보 전달 (0) | 2020.09.17 |
---|---|
02 스웜 모드의 서비스 장애 복구 (0) | 2020.09.17 |
도커로 MySQL 설치 및 실행 (0) | 2020.05.28 |
09 docker container network (0) | 2019.05.20 |
08 docker image 생성 (0) | 2019.05.20 |
댓글