에서 배포 구성으로 작업하기 CodeDeploy - AWS CodeDeploy

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

에서 배포 구성으로 작업하기 CodeDeploy

배포 구성은 배포 CodeDeploy 중에 사용되는 일련의 규칙과 성공 및 실패 조건입니다. 이러한 규칙과 조건은 EC2/온프레미스 컴퓨팅 플랫폼에 배포하는지, AWS Lambda 컴퓨팅 플랫폼에 배포하는지, Amazon ECS 컴퓨팅 플랫폼에 배포하는지에 따라 다릅니다.

EC2/온프레미스 컴퓨팅 플랫폼에 대한 배포 구성

EC2/온프레미스 컴퓨팅 플랫폼에 배포하는 경우, 배포 구성은 '최소 정상 호스트' 값과 선택적 '영역당 최소 정상 호스트' 값을 사용하여 배포 중 언제든지 사용할 수 있어야 하는 인스턴스의 수 또는 비율을 지정합니다.

에서 제공하는 사전 정의된 세 가지 배포 구성 중 하나를 AWS 사용하거나 사용자 지정 배포 구성을 만들 수 있습니다. 사용자 지정 배포 구성 만들기에 대한 자세한 내용은 Create a Deployment Configuration 단원을 참조하세요. 배포 구성을 지정하지 않는 경우 CodeDeploy 는 를 사용합니다. CodeDeployDefault OneAtATime 배포 구성.

배포 중에 인스턴스 CodeDeploy 상태를 모니터링하고 평가하는 방법에 대한 자세한 내용은 을 참조하십시오. Instance Health AWS 계정에 이미 등록된 배포 구성 목록을 보려면 을 참조하십시오View Deployment Configuration Details.

EC2/온프레미스 컴퓨팅 플랫폼에 대한 미리 정의된 배포 구성

다음은 미리 정의된 배포 구성이 나열된 표입니다.

참고

zonal configuration 기능(가용 영역당 정상 호스트 수를 지정할 수 있는 기능)을 지원하는 사전 정의된 배포 구성은 없습니다. 이 기능을 사용하려면 배포 구성을 직접 생성해야 합니다.

배포 구성 설명
CodeDeployDefault.AllAtOnce

인 플레이스(in-place) 배포:

한 번에 가급적 많은 수의 인스턴스에 애플리케이션 개정을 배포하기 위한 시도입니다. 하나 이상의 인스턴스에 애플리케이션 개정이 배포되면 전체 배포 상태가 성공으로 표시됩니다. 어떤 인스턴스에도 애플리케이션 개정이 배포되지 않으면 전체 배포 상태가 실패로 표시됩니다. 9개의 인스턴스를 예로 들어 보겠습니다 CodeDeployDefault. AllAtOnce 한 번에 9개 인스턴스 모두에 배포를 시도합니다. 인스턴스 하나에라도 배포에 성공하면 전체 배포가 성공합니다. 아홉 개 인스턴스 모두에 대한 배포에 실패하는 경우에만 실패합니다.

블루/그린 배포:

  • 대체 환경에 배포: 와 동일한 배포 규칙을 따릅니다 CodeDeployDefault. AllAtOnce 인플레이스 배포용.

  • 트래픽 라우팅: 한 번에 대체 환경의 모든 인스턴스로 트래픽을 라우팅합니다. 트래픽이 하나 이상의 인스턴스로 성공적으로 라우팅되면 성공합니다. 모든 인스턴스로 다시 라우팅하지 못하며 실패합니다.

CodeDeployDefault. HalfAt시간

인 플레이스(in-place) 배포:

최대 절반의 인스턴스(분수는 반내림함)에 한번에 배포합니다. 애플리케이션 개정이 인스턴스의 절반 이상(분수는 반올림함)에 배포되면 전체 배포가 성공합니다. 그렇지 않으면 배포가 실패합니다. 아홉 개의 인스턴스가 있는 예제에서는 한 번에 최대 네 개의 인스턴스에 배포합니다. 다섯 개 이상의 인스턴스에 대한 배포에 성공하면 전체 배포가 성공합니다. 그렇지 않으면 배포가 실패합니다.

참고

여러 Auto Scaling 그룹의 인스턴스에 배포하는 경우, CodeDeploy 해당 인스턴스가 속한 Auto Scaling 그룹에 관계없이 한 번에 최대 절반의 인스턴스까지 배포합니다. 예를 들어 Auto Scaling 그룹이 두 개(ASG1ASG2) 있고 각각 10개의 인스턴스가 있다고 가정해 보겠습니다. 이 CodeDeploy 시나리오에서는 10개의 인스턴스에만 ASG1 배포하고 최소 절반의 인스턴스에 배포되었으므로 성공한 것으로 간주할 수 있습니다.

블루/그린 배포:

  • 대체 환경에 배포: 와 동일한 배포 규칙을 따릅니다 CodeDeployDefault. HalfAt인플레이스 배포가 필요한 시점입니다.

  • 트래픽 라우팅: 한 번에 대체 환경의 인스턴스 중 최대 절반으로 트래픽을 라우팅합니다. 인스턴스 중 절반 이상으로의 다시 라우팅에 성공하는 경우 성공합니다. 그렇지 않으면 가 실패합니다.

CodeDeployDefault. OneAt시간

인 플레이스(in-place) 배포:

한 번에 한 인스턴스에만 애플리케이션 개정을 배포합니다.

인스턴스가 두 개 이상 포함된 배포 그룹의 경우:

  • 애플리케이션 개정이 모든 인스턴스에 배포되면 전체 배포가 성공입니다. 이 규칙의 예외는 마지막 인스턴스에 대한 배포에 실패했는데 전체 배포에 성공하는 경우입니다. CodeDeploy 를 사용하면 한 번에 하나의 인스턴스만 오프라인 상태로 전환할 수 있기 때문입니다. CodeDeployDefault OneAtATime 구성.

  • 애플리케이션 개정이 마지막 인스턴스를 제외한 모든 인스턴스에 배포되지 못하면 즉시 전체 배포에 실패합니다.

  • 아홉 개의 인스턴스가 있는 예제에서는 한 번에 하나의 인스턴스에 배포합니다. 처음 여덟 개 인스턴스에 대한 배포에 성공하면 전체 배포가 성공합니다. 처음 여덟 개 인스턴스 중 하나에 대한 배포에 실패하면 전체 배포가 실패합니다.

인스턴스가 하나뿐인 배포 그룹의 경우, 한 인스턴스에 대한 배포에 성공해야만 전체 배포에 성공합니다.

블루/그린 배포:

  • 대체 환경에 배포: 와 동일한 배포 규칙을 따릅니다. CodeDeployDefault OneAt인플레이스 배포가 필요한 시점.

  • 트래픽 라우팅: 한 번에 대체 환경의 인스턴스 하나로 트래픽을 라우팅합니다. 트래픽이 모든 대체 인스턴스로 성공적으로 라우팅되면 성공합니다. 맨 처음으로 다시 라우팅하지 못하면 실패합니다. 이 규칙의 예외는 마지막 인스턴스 등록에 실패했는데 전체 배포에 성공하는 경우입니다.

Amazon ECS 컴퓨팅 플랫폼에 대한 배포 구성

Amazon ECS 컴퓨팅 플랫폼에 배포할 때 배포 구성은 트래픽이 업데이트된 Amazon ECS 작업 세트로 이동되는 방법을 지정합니다. 카나리아, 선형 또는 배포 구성을 사용하여 트래픽을 이동할 수 있습니다. all-at-once 자세한 정보는 배포 구성을 참조하세요.

Canary 또는 선형 배포 구성을 직접 사용자 지정하여 만들 수도 있습니다. 자세한 정보는 Create a Deployment Configuration을 참조하세요.

Amazon ECS 컴퓨팅 플랫폼에 대해 미리 정의된 배포 구성

다음 표에는 Amazon ECS 배포에 사용할 수 있는 미리 정의된 구성이 나열되어 있습니다.

참고

Network Load Balancer를 사용하는 경우 미리 정의된 배포 구성인 CodeDeployDefault.ECSAllAtOnce만이 지원됩니다.

배포 구성 설명

CodeDeployDefault.ECS 선형 10 1분 PercentEvery

모든 트래픽이 전환될 때까지 트래픽의 10%가 매분마다 전환됩니다.

CodeDeployDefault. ECS 리니어 10 3분 PercentEvery

모든 트래픽이 이동될 때까지 트래픽의 10%가 3분마다 이동됩니다.

CodeDeployDefault.EC 카나리 10% 5분

첫 번째 증분에 트래픽의 10%가 전환됩니다. 나머지 90%는 5분 이후 배포됩니다.

CodeDeployDefaultE. ECS 카나리 10% 15분

첫 번째 증분에 트래픽의 10%가 전환됩니다. 나머지 90%는 15분 이후 배포됩니다.

CodeDeployDefault.ECS AllAtOnce

모든 트래픽을 업데이트된 Amazon ECS 컨테이너로 한 번에 이동합니다.

AWS CloudFormation 블루/그린 배포를 위한 배포 구성((Amazon ECS)

AWS CloudFormation 블루/그린 배포를 통해 Amazon ECS 컴퓨팅 플랫폼에 배포하는 경우, 배포 구성은 트래픽이 업데이트된 Amazon ECS 컨테이너로 이동하는 방법을 지정합니다. 카나리아, 선형 또는 배포 구성을 사용하여 트래픽을 이동할 수 있습니다. all-at-once 자세한 정보는 배포 구성을 참조하세요.

AWS CloudFormation 블루/그린 배포의 경우 사용자 지정 카나리아 또는 선형 배포 구성을 만들 수 없습니다. Amazon ECS 블루/그린 배포를 관리하는 AWS CloudFormation 데 사용하는 step-by-step 방법에 대한 지침은 사용 설명서의 사용을 통한 ECS 블루/그린 배포 자동화를 참조하십시오. CodeDeploy AWS CloudFormationAWS CloudFormation

참고

유럽 (밀라노), 아프리카 (케이프타운) 및 아시아 태평양 (오사카) 지역에서는 Amazon ECS 블루/그린 배포를 관리할 수 없습니다. AWS CloudFormation

AWS Lambda 컴퓨팅 플랫폼에 대한 배포 구성

AWS Lambda 컴퓨팅 플랫폼에 배포할 때 배포 구성은 트래픽이 애플리케이션의 새 Lambda 함수 버전으로 이동하는 방식을 지정합니다. 카나리아, 선형 또는 배포 구성을 사용하여 트래픽을 이동할 수 있습니다. all-at-once 자세한 정보는 배포 구성을 참조하세요.

Canary 또는 선형 배포 구성을 직접 사용자 지정하여 만들 수도 있습니다. 자세한 정보는 Create a Deployment Configuration을 참조하세요.

컴퓨팅 플랫폼을 위한 AWS Lambda 사전 정의된 배포 구성

다음 표에는 AWS Lambda 배포에 사용할 수 있는 미리 정의된 구성이 나열되어 있습니다.

배포 구성 설명

CodeDeployDefault. LambdaCanary10% 5분

첫 번째 증분에 트래픽의 10%가 전환됩니다. 나머지 90%는 5분 이후 배포됩니다.

CodeDeployDefault. LambdaCanary10% 10분

첫 번째 증분에 트래픽의 10%가 전환됩니다. 나머지 90%는 10분 이후 배포됩니다.

CodeDeployDefault. LambdaCanary10% 15분

첫 번째 증분에 트래픽의 10%가 전환됩니다. 나머지 90%는 15분 이후 배포됩니다.

CodeDeployDefault. LambdaCanary10% 30분

첫 번째 증분에 트래픽의 10%가 전환됩니다. 나머지 90%는 30분 이후 배포됩니다.

CodeDeployDefault. LambdaLinear10 PercentEvery 1분

모든 트래픽이 전환될 때까지 트래픽의 10%가 매분마다 전환됩니다.

CodeDeployDefault. LambdaLinear10 PercentEvery 2분

모든 트래픽이 이동될 때까지 트래픽의 10%가 2분마다 이동됩니다.

CodeDeployDefault. LambdaLinear10 PercentEvery 3분

모든 트래픽이 이동될 때까지 트래픽의 10%가 3분마다 이동됩니다.

CodeDeployDefault. LambdaLinear10 PercentEvery 10분 모든 트래픽이 전환될 때까지 트래픽의 10%가 10분마다 전환됩니다.
CodeDeployDefault.LambdaAllAtOnce

업데이트된 Lambda 함수로 모든 트래픽을 한번에 전환합니다.

주제