Container Orchestration
: 복잡한 컨테이너 환경을 효과적으로 관리하기 위한 도구
- 문서화를 잘하자! 모든 걸 다 캡쳐해두자! → 업데이트가 안 될 수도 있고, 버전이 바뀌면 잘 안 된다.
- Chef, puppet, ansible. 문서화가 아니라 코드로 설정해 둠 → 설치된 것과 충돌날 수도 있음. 이 과정을 공부해야 할 수도 있음. 도구의 난이도가 높아질 수 있음.
- 가상머신. 충돌날 일도 없고 상황 자체를 이미지화할 수 있음 → 클라우드 바뀌면 문제. 느림.
- Docker. 모든 실행 환경을 컨테이너로! 어디서든 동작하고 쉽고 효율적
Docker의 등장
컨테이너
- 가상머신과 비교하여 컨테이너 생성이 쉽고 효율적
- 컨테이너 이미지를 이용한 배포와 롤백이 간단
- 언어나 프레임워크에 상관없이 애플리케이션을 동일한 방식으로 관리
- 개발, 테스팅, 운영 환경은 물론 로컬pc와 클라우드까지 동일한 환경을 구축
- 특정 클라우드 벤더에 종속적이지 않음
컨테이너 짱! 도커 이미지만 잘 만들면 띄우고 관리하는게 너무 쉬움. 관리가 좀 편해졌나? 싶었는데..
컨테이너가 너무 많아지면 결국 수십개, 수백개, 수천개까지 관리가 필요할 수 있음. 여전히 손이 많이 가게 되는 상황이 생기게 됨.