AWS CodeDeploy
코드 배포를 자동화해 애플리케이션 가동 시간 유지
- 애플리케이션을 자동화하고 개발, 테스트, 프로덕션 환경에 일관되게 배포할 수 있다.
- 플릿 상태를 모니터링하고 필요에 따라 업데이트를 자동으로 롤백
- AWS Management Console or AWS Command Line Interface(CLI)를 통해 애플리케이션 배포를 시작하고 배포 상태를 추적할 수 있다.
- 기존 설정 코드를 재사용하고 기존 소프트웨어 릴리스 프로세스나 지속적인 전송 도구 체인과 통합 할 수 있다.
작동방식
AWS CodeDeploy는 Amazon Elastic Compute Cloud(EC2),
Amazon Elastic Container Service(ECS),
AWS Lambda 및 온프레미스 서버와 같은 다양한 컴퓨팅 서비스에 소프트웨어를 자동으로 배포하는 완전관리형 배포 서비스.
CodeDeploy를 사용하면 소프트웨어 배포를 자동화하여 오류가 발생하기 쉬운 수동 작업을 제거할 수 있다.
사용사례
- 배포를 자동화 해 수동 작업 제거
- 많은 호스트에 배포 - 고급 모니터링 및 트래픽 이동을 사용해 수천 개의 호스트에 대한 배포 관리
- 고급 배포 기술 사용 - 인플레이스, canary, 블루/그린 배포를 비롯한 여러 배포 유형을 지원
- 상태 및 롤백 모니터링 - 롤백 시작 및 진행 중인 애플리케이션 배포 중지를 수행하는 경보 구성
Blue-Green Deployment(블루 그린 배포)?
애플리케이션 또는 마이크로서비스의 이전 버전에 있던 사용자 트래픽을 이전 버전과 거의 동일한 새 버전으로 점진적으로 이전하는 애플리케이션 릴리스 모델
이때 두 버전 모두 프로덕션 환경에서 실행 상태 유지
이전 버전 - blue
새 버전 - green
프로덕션 트래픽이 blue에서 green으로 완전히 이전되면 blue는 롤백에 대비해 대기 상태로 두거나 프로덕션에서 가져온 후 업데이트하여 다음 업데이트의 템플릿으로 삼을 수 있다.
릴리스 -> 소프트웨어 배포 생명 주기에서 컴퓨터 소프트웨어의 배포 의미