지금까지 Docker를 활용한 환경은 한 개의 호스트 머신이였습니다. 그러나 실제로 Docker를 사용하는 상용 환경에서는 여러 대의 호스트 머신을 하나의 풀(Pool) 로 엮어서 사용할 때가 많습니다.
일반적인 성능의 머신을 여러 대 준비한 다음, 하나의 컴퓨팅 자원처럼 사용하는 것입니다. 이것이 가져다 주는 장점은 명확합니다.
예를 들어 8GB 메모리를 가지고 있는 3대의 머신으로 Docker를 사용한다면 마치 24GB 메모리를 가진 하나의 컴퓨팅 자원처럼 사용할 수 있습니다. 또한 24GB 메모리를 다 사용하여 더 늘릴 필요가 있을 때에는 기존의 3대에 1대를 추가로 Scale Out(노드 수를 늘림으로써 컴퓨팅 자원을 확장시킴) 하여 유동적으로 자원을 사용할 수 있습니다.
그러나 이를 실제로 구축하는 것은 쉬운 일이 아닙니다. 여러 대의 머신을 하나의 컴퓨팅 자원처럼 사용한다고는 해도 실제로는 물리적인 머신이 각각 구분되어져 있는 것이기 때문에 이들을 관리하는 것은 매우 어려...