CodeDeploy를 사용하여 애플리케이션 생성 - AWS CodeDeploy

CodeDeploy를 사용하여 애플리케이션 생성

애플리케이션은 CodeDeploy에서 사용하는 단순한 이름 또는 컨테이너로, 배포 중에 올바른 개정, 배포 구성 및 배포 그룹이 참조되도록 합니다. CodeDeploy 콘솔, AWS CLI, CodeDeploy API 또는 AWS CloudFormation 템플릿을 사용하여 애플리케이션을 생성할 수 있습니다.

코드 또는 애플리케이션 개정은 배포라는 프로세스를 통해 인스턴스에 설치됩니다. CodeDeploy는 두 종류의 배포를 지원합니다.

  • 현재 위치 배포: 배포 그룹의 각 인스턴스에 있는 애플리케이션이 중지되고 최신 애플리케이션 개정 버전이 설치되며 애플리케이션의 새 버전이 시작되고 유효성이 검사됩니다. 로드 밸런서를 사용하면 배포가 진행될 때 각 인스턴스를 등록 취소한 후 배포가 완료된 후 서비스로 복원할 수 있습니다. EC2/온프레미스 컴퓨팅 플랫폼을 사용하는 배포만 현재 위치(in-place) 배포를 사용할 수 있습니다. 현재 위치 배포에 대한 자세한 내용은 인 플레이스 배포 개요 단원을 참조하세요.

  • Blue/Green 배포: 배포 동작은 사용하는 컴퓨팅 플랫폼에 따라 다릅니다.

    • EC2/온프레미스 컴퓨팅 플랫폼의 Blue/Green: 다음 단계를 사용하여 배포 그룹(원래 환경)의 인스턴스가 인스턴스의 다른 세트(대체 환경)로 대체됩니다.

      • 인스턴스는 대체 환경을 위해 프로비저닝됩니다.

      • 최신 애플리케이션 개정은 대체 인스턴스에 설치됩니다.

      • 애플리케이션 테스트 및 시스템 검증과 같은 활동에 선택적 대기 시간이 발생합니다.

      • 대체 환경의 인스턴스가 Elastic Load Balancing 로드 밸런서에 등록되고 트래픽이 이러한 인스턴스로 라우팅됩니다. 원래 환경의 인스턴스는 등록이 취소되고 종료되거나 다른 용도로 계속 실행될 수 있습니다.

      참고

      EC2/온프레미스 컴퓨팅 플랫폼을 사용할 경우 Blue/Green 배포는 Amazon EC2 인스턴스에서만 작동합니다.

    • AWS Lambda 컴퓨팅 플랫폼의 Blue/Green: 현재 서버리스 환경의 트래픽이 업데이트된 Lambda 함수 버전의 환경으로 이동합니다. 확인 테스트를 수행하는 Lambda 함수를 지정할 수 있고, 트래픽 이동이 이루어지는 방식을 선택할 수 있습니다. 모든 AWS Lambda 컴퓨팅 플랫폼 배포는 Blue/Green 배포입니다. 따라서 배포 유형을 지정할 필요가 없습니다.

    • Amazon ECS 컴퓨팅 플랫폼의 Blue/Green: Amazon ECS 서비스에서 애플리케이션의 기존 버전을 포함하는 작업 세트에서 동일한 서비스의 대체 작업 세트로 트래픽이 이동합니다. 배포 구성을 통해 선형 또는 canary로 트래픽 이동을 설정할 수 있습니다. 지정된 로드밸런서 리스너의 포트와 프로토콜이 프로덕션 트래픽을 다시 라우팅하는 데 사용됩니다. 배포 중 유효성 확인 테스트를 실행하면서 테스트 리스너를 사용하여 트래픽을 대체 작업 세트에 공급할 수 있습니다.

    • AWS CloudFormation을 통한 Blue/Green 배포: AWS CloudFormation 스택 업데이트의 일부로 트래픽이 현재 리소스에서 업데이트된 리소스로 이동합니다. 현재는 ECS Blue/Green 배포만 지원됩니다.

    Blue/Green 배포에 대한 자세한 내용은 블루/그린 배포 개요 단원을 참조하세요.

CodeDeploy 콘솔을 사용하여 애플리케이션을 만드는 경우 동시에 이 애플리케이션의 첫 번째 배포 그룹을 구성합니다. AWS CLI를 사용하여 애플리케이션을 만드는 경우 개별 단계에서 이 애플리케이션의 첫 번째 배포 그룹을 만듭니다.

이미 AWS 계정에 등록된 애플리케이션 목록을 보려면 대한 CodeDeploy로 애플리케이션 세부 정보 보기 단원을 참조하세요. AWS CloudFormation 템플릿을 사용하여 애플리케이션을 생성하는 방법에 대한 자세한 내용은 CodeDeploy 참조용 AWS CloudFormation 템플릿 단원을 참조하세요.

두 배포 유형 모두 모든 대상에 적용되는 것은 아닙니다. 다음 표에는 세 가지 유형의 배포 대상에 대한 배포와 함께 작동하는 배포 유형이 나열되어 있습니다.

배포 대상 현재 위치 블루/그린
Amazon EC2
온프레미스 아니요
서버리스 AWS Lambda 함수 아니요
Amazon ECS 애플리케이션 아니요