[Infra] 오케스트레이션 솔루션이란?

chrisjune
2 min readDec 6, 2019

--

오케스트레이션 솔루션은 컨테이너를 쉽고 빠르게 배포, 확장, 관리를 자동화해주는 플랫폼입니다.

왜 컨테이너 기반의 배포에 오케스트레이션이 필요할까요?

서비스를 컨테이너 기반으로 배포하는 모던한 개발 환경에서는 failover, load balancing, services clustering이 필요합니다. 특히 클라우드 기반의 사용자라면 더욱 더 그렇습니다. 이런 작업을 사람이 일일이 손으로 하는 것은 사실상 불가능 하기 때문에 오케스트레이션 솔루션이 등장하였습니다.

오케스트레이션 솔루션에서 주로 등장하는 용어

스케줄링
컨테이너를 여러 서버중 적합한 서버에 배포해 주는 것을 의미합니다. 서버에 따라서 성능과 진행중인 작업양이 다르기 때문에 이에 맞게 배포를 해주는 역할을 합니다.

클러스터링
여러 개의 서버를 하나의 서버처럼 사용할 수 있도록 합니다. 클러스터에 신규 서버를 추가하거나 기존의 서버를 제거할 수 있습니다.

서비스 디스커버리
서비스를 찾아주는 기능을 합니다. 클러스터 환경에서 컨테이너가 어느 서버에 생성될 지 알 수 없기 때문에, 컨테이너와 통신을 하기 위해 어느 서버에서 실행중인지 알려줍니다. 서버의 위치를 알기 위하여 IP, PORT 정보를 가지고 있으며 key-value 스토리지에 저장하거나 내부 DNS서버를 사용합니다.

로깅, 모니터링
여러 개의 서버를 관리하는 경우 서버 로그와 상태를 한 곳에서 관리하는 것이 당연히 효율적입니다. 오케스트레이터에서 지원하는 경우도 있고, 외부 툴을 설치하여 사용할 수 도 있습니다. 대표적으로는 ELKprometheus가 있습니다.

참고

--

--

No responses yet