Docker Swarm 기본 개념
Docker Swarm 소개
Docker Swarm 은 Docker 컨테이너를 위한 기본적인 클러스터링 및 오케스트레이션 솔루션입니다. 개발자는 Docker 노드 클러스터를 생성하고 관리하여 여러 개의 물리적 또는 가상 머신을 단일하고 강력한 가상 시스템으로 변환하여 컨테이너 배포 및 관리를 수행할 수 있습니다.
Docker Swarm 의 주요 개념
Docker Swarm 은 컨테이너 오케스트레이션을 위해 몇 가지 중요한 개념을 소개합니다.
| 개념 |
설명 |
| Swarm 모드 |
Docker 의 기본 클러스터링 모드 |
| 매니저 노드 |
Swarm 클러스터를 제어 및 관리하는 노드 |
| 작업자 노드 |
컨테이너 작업 부하를 실행하는 노드 |
| 서비스 |
배포할 컨테이너화된 애플리케이션을 정의하는 개체 |
아키텍처 개요
graph TD
A[매니저 노드] --> B[작업자 노드 1]
A --> C[작업자 노드 2]
A --> D[작업자 노드 3]
Swarm 클러스터 초기화
Docker Swarm 클러스터를 시작하려면 Ubuntu 22.04 에서 다음 명령어를 사용합니다.
## Docker 설치
sudo apt-get update
sudo apt-get install docker.io
## Swarm 모드 초기화
docker swarm init
## 클러스터 상태 확인
docker info | grep Swarm
노드 관리
노드를 Swarm 에 가입하려면 매니저에서 생성한 가입 토큰이 필요합니다.
## 매니저 노드에서: 가입 토큰 생성
## 작업자 노드에서: Swarm에 가입
서비스 배포 기본 사항
Swarm 전체에 간단한 서비스를 생성하고 배포합니다.
## 3개의 복제된 nginx 서비스 배포
docker service create --replicas 3 --name web nginx
이 명령은 Swarm 클러스터 전체에 분산된 동일한 nginx 컨테이너 인스턴스 3 개를 생성하여 Docker Swarm 의 핵심 컨테이너 오케스트레이션 기능을 보여줍니다.