여러 개의 host를 clustering해 다수의 container를 orchestration하는 tool
manager
‘지휘자’에 비유된다.
worker $i$
지휘자는 worker들을 묶어 관리한다.
manager와 worker는 모두 node다.
manager는 worker의 성능에 따라 어떤 worker에 어떻게 container를 배치할 것인지 결정한다. 예를 들어 worker1과 worker2가 있을 때 worker1의 성능이 더 좋다면 worker1에는 2개의 컨테이너를, worker2에는 1개의 컨테이너를 배치할 수 있다.
worker1에서 문제가 발생하면 worker1에 배치된 컨테이너는 다른 worker로 migrate될 수 있다.
적절한 분산 배치로 부하를 분산할 수 있다.
이와 같이 resource 상황에 맞게 컨테이너를 분산 배치하는 등의 작업을 오케스트레이션 orchestration이라 한다.