docker 스웜

2020. 2. 4. 18:04devops/docker swarm

스웜 클래식과 도커 스웜모드

스웜 클래식과 스웜 모드는 여러 대의 도커 서버를 하나의 클러스터로 만들어 컨테이너를 생성하는 여러 기능을 제공합니다. 유동적으로 서버에 붙여서 확장시킬 수 있고 쉽게 관리할 수 있습니다. 

 

도커 스웜에는 두 가지 종류가 있습니다. 첫 번째는 도커 버전 1.6 이후부터 사용할 수 있는 컨테이너로서의 스웜이고 두번째는 도커 버전 1.12 이후부터 사용할 수 있는 도커 스웜모드이다. 첫 번째를 스웜 클래식, 두 번째를 스웜 모드라고 부르겠습니다. 

 

두 기능은 이럴때 구분하여 실행합니다.

 

스웜 클래식

여러 대의 도커 서버를 하나의 지점에서 사용하도록 단일 접근점을 제공합니다. docker run, docker ps 등 일반적인 도커 명령어와 도커 API로 클러스터의 서버를 제어하고 관리할 수 있다.

 

스웜 모드

마이크로서비스 아키텍처의 컨테이너를 다루기 위한 클러스링 기능에 초점을 맞추고 있습니다. 같은 컨테이너를 동시에 여러 개 생성해 필요에 따라 유동적으로 컨테이넝의 수를 조절 할 수 있으며 컨테이너로의 연결을 분산하는 로드밸런싱 기능을 자체적으로 지원합니다.

 

상황에 맞게 선택하면 되지만 스웜 모드가 확장성과 안정성 등 여러 측면에서 스웜 클래식보다 뛰어나기 때문에 스웜모드를 많이 사용합니다. 

 

차이점

스웜 클래식과 스웜 모드의 다른 차이점은 분산 코디네이터, 에이전트와 같은 클러스터 툴이 별도로 구동되느냐입니다.

여러 개의 도커 서버를 하나의 클러스터로 구성하려면 정보를 저장하고 동기화하는 분산 코디네이터, 클러스터 내의 서버를 관리하려면 제어하는 매니저, 제어하는 에이전트가 반드시 있어야합니다. 스웜 클래식은 별도로 분산 코디네이터와 에이전트 컨테이너가 필요합니다. 스웜 모드는 내부에 필요한 에이전트와 분산 코디네이터가 존재하기 때문에 더욱 쉽게 서버 클러스터를 구축할 수 있습니다. 

 

대규모 클러스터에서 서비스를 운영하는 것을 계획하고 있다면 스웜 클래식보다 스웜 모드를 사용하는 것이 좋습니다. 스웜 모드는 마이크로 서비스 아키텍처 애플리케이션을 컨테이너로 구축할 수 있도록 도와줄 뿐만 아니라, 서비스 장애에 대비한 부하 분산을 막기위한 로드 밸런싱 기능 또한 제공하고 있습니다. 스웜 클래식보다는 훨씬 쉽고 빠르게 구축할 수 있습니다. 

'devops > docker swarm' 카테고리의 다른 글

docker swarm이란??  (0) 2020.02.04