코드스테이츠_국비교육/[Section4]

74.02_[Cloud] 배포 컨테이너_컨테이너 방식의 장점_22.12.06

생각없이 해도 생각보다 좋다. 2022. 12. 7. 00:07

>컨테이너 방식의 장점
-의존성 충돌 문제 해결
1. 개발과 배포 환경을 일치시킨다.
2. 수평 확장을 쉽게 해준다.
3. 각 서버에 새로운 내용을 배포하기 쉽게 만들어준다.

(1) 개발과 배포 환경을 일치시킨다.


-개발 문제
: 컨테이너 방식을 사용하지 않는다면, 애플리케이션을 개발하는 개발팀은 모두 같은 버전과 같은 개발 도구를 설치하여 개발 환경을 동일하게 구축해야한다.
: 하지만 그럼에도 특정 변수에 의해 어떤 팀원의 개발 환경에서는 애플리케이션이 실행이 안될 확률이 있다.
: 컨테이너를 사용하면 YAML 파일과 명령어로만 이러한 문제를 간단히 해결한다.
-배포 문제
: 배포 문제 또한 개발 문제와 같이 사용자의 런타임 환경에 따라 문제가 발생할 수 있는 부분이다.
: 하지만 이 또한 컨테이너 방식을 사용하여 배포를 하면 해결할 수 있다.
: 예를 들어, AWS의 EC2 상에 도커를 설치하여 도커를 통해 배포하거나, 애초에 도커 컨테이너를 편하게 쓸 수 있는 ECS를 이용하면 애플리케이션을 도커 컨테이너째로 배포할 수 있다. 이를 통해 다양한 사용자의 런타임 환경에서도 모두 실행 가능하게 된다.

(2) 수평 확장을 쉽게 해준다.

(3) 각 서버에 새로운 내용을 배포하기 쉽게 만들어준다.


: 컨테이너 방식은 수평 확장과 새로운 내용의 배포를 용이하게 만든다.
: 많은 트래픽을 감당하기 위해서는 동일한 서버가 많이 필요하다.(로드 밸런서로 서버를 자동으로 지정해주면서) 이처럼 동일한 서버를 만들기 위해서는 실행 환경을 일치시켜야하기 때문에 컨테이너 방식을 사용한다.
: 이런 식으로 증설된 서버 중 몇 개를 이용해서 새로운 버전의 애플리케이션을 테스트하는 용도로 사용할 수 있다. 이러한 일을 해주는 도구를 오케스트레이션 도구라고 한다.