

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

# CodeDeploy의 애플리케이션 작업
<a name="applications"></a>

인스턴스를 구성한 후 개정을 배포하려면 먼저 CodeDeploy에서 애플리케이션을 만들어야 합니다. *애플리케이션*은 CodeDeploy에서 배포 중에 올바른 개정, 배포 구성 및 배포 그룹이 참조되는지 확인하기 위해 사용하는 이름 또는 컨테이너입니다.

다음 표의 정보를 사용하여 다음 단계를 살펴보세요.


| 컴퓨팅 플랫폼 | 시나리오 | 다음 단계에 대한 정보 | 
| --- | --- | --- | 
|  **EC2/온프레미스**  |  아직 인스턴스를 만들지 않았습니다.  |  [CodeDeploy용 인스턴스 작업](instances.md)을(를) 확인한 후 이 페이지로 돌아옵니다.  | 
|  **EC2/온프레미스**  | 인스턴스를 만들었지만 태그 지정을 완료하지 않았습니다. |  [CodeDeploy에서 배포 그룹에 대한 인스턴스에 태그 지정](instances-tagging.md)을(를) 확인한 후 이 페이지로 돌아옵니다.  | 
|   **EC2/온프레미스**,**AWSLambda**, 및**Amazon ECS**   |  아직 애플리케이션을 만들지 않았습니다.  |  [CodeDeploy를 사용하여 애플리케이션 생성](applications-create.md)을(를) 참조하세요.  | 
|   **EC2/온프레미스**,**AWSLambda**, 및**Amazon ECS**   |  이미 애플리케이션을 만들었지만 배포 그룹을 만들지 않았습니다.  |  [CodeDeploy에서 배포 그룹 만들기](deployment-groups-create.md)을(를) 참조하세요.  | 
|   **EC2/온프레미스**,**AWSLambda**, 및**Amazon ECS**   | 이미 애플리케이션 및 배포 그룹을 만들었지만 애플리케이션 개정을 만들지 않았습니다. | [CodeDeploy의 애플리케이션 개정 작업](application-revisions.md)을(를) 참조하세요. | 
|   **EC2/온프레미스**,**AWSLambda**, 및**Amazon ECS**   | 이미 애플리케이션과 배포 그룹을 만들었으며 애플리케이션 개정을 이미 업로드했습니다. 배포 준비가 되었습니다. | [CodeDeploy에서 배포 만들기](deployments-create.md)을(를) 참조하세요. | 

**Topics**
+ [애플리케이션 만들기](applications-create.md)
+ [애플리케이션 세부 정보 보기](applications-view-details.md)
+ [알림 규칙 생성](notification-rule-create.md)
+ [애플리케이션 이름 바꾸기](applications-rename.md)
+ [애플리케이션을 삭제합니다](applications-delete.md)

# CodeDeploy를 사용하여 애플리케이션 생성
<a name="applications-create"></a>

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

코드 또는 애플리케이션 개정은 배포라는 프로세스를 통해 인스턴스에 설치됩니다. CodeDeploy는 두 종류의 배포를 지원합니다.
+ **현재 위치 배포**: 배포 그룹의 각 인스턴스에 있는 애플리케이션이 중지되고 최신 애플리케이션 개정 버전이 설치되며 애플리케이션의 새 버전이 시작되고 유효성이 검사됩니다. 로드 밸런서를 사용하면 배포가 진행될 때 각 인스턴스를 등록 취소한 후 배포가 완료된 후 서비스로 복원할 수 있습니다. EC2/온프레미스 컴퓨팅 플랫폼을 사용하는 배포만 인 플레이스 배포를 사용할 수 있습니다. 현재 위치 배포에 대한 자세한 내용은 [인 플레이스 배포 개요](welcome.md#welcome-deployment-overview-in-place) 단원을 참조하세요.
+ **Blue/Green 배포**: 배포 동작은 사용하는 컴퓨팅 플랫폼에 따라 다릅니다.
  + **EC2/온프레미스 컴퓨팅 플랫폼에서의 블루/그린 배포**: 배포 그룹(원래 환경)의 인스턴스가 다음 단계를 거쳐 인스턴스의 다른 집합(대체 환경)으로 대체됩니다.
    + 인스턴스는 대체 환경을 위해 프로비저닝됩니다.
    + 최신 애플리케이션 수정은 대체 인스턴스에 설치됩니다.
    + 애플리케이션 테스트 및 시스템 검증과 같은 활동에 선택적 대기 시간이 발생합니다.
    + 대체 환경의 인스턴스가 하나 이상의 Elastic Load Balancing 로드 밸런서에 등록되고 트래픽이 이러한 인스턴스로 라우팅됩니다. 원래 환경의 인스턴스는 등록이 취소되고 종료되거나 다른 용도로 계속 실행될 수 있습니다.
**참고**  
EC2/온프레미스 컴퓨팅 플랫폼을 사용할 경우 블루/그린 배포는 Amazon EC2 인스턴스에서만 작동합니다.
  + ** AWS Lambda 또는 Amazon ECS 컴퓨팅 플랫폼의 블루/그린**: 트래픽은 **canary**, **선형** 또는 **all-at-once** 배포 구성에 따라 증분으로 이동합니다.
  + **를 통한 블루/그린 배포 CloudFormation**: CloudFormation 스택 업데이트의 일부로 트래픽이 현재 리소스에서 업데이트된 리소스로 이동합니다. 현재는 ECS 블루/그린 배포만 지원됩니다.

  Blue/Green 배포에 대한 자세한 내용은 [블루/그린 배포 개요](welcome.md#welcome-deployment-overview-blue-green) 단원을 참조하세요.

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

 AWS 계정에 이미 등록된 애플리케이션 목록을 보려면 섹션을 참조하세요[CodeDeploy로 애플리케이션 세부 정보 보기](applications-view-details.md). CloudFormation 템플릿을 사용하여 애플리케이션을 생성하는 방법에 대한 자세한 내용은 섹션을 참조하세요[CloudFormation CodeDeploy 참조용 템플릿](reference-cloudformation-templates.md).

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


****  

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



**Topics**
+ [현재 위치(in-place) 배포를 위한 애플리케이션 생성(콘솔)](applications-create-in-place.md)
+ [Blue/Green 배포를 위한 애플리케이션 생성(콘솔)](applications-create-blue-green.md)
+ [Amazon ECS 서비스 배포를 위한 애플리케이션 생성 (콘솔)](applications-create-ecs.md)
+ [AWS Lambda 함수 배포를 위한 애플리케이션 생성(콘솔)](applications-create-lambda.md)
+ [애플리케이션(CLI) 생성](applications-create-cli.md)

# 현재 위치(in-place) 배포를 위한 애플리케이션 생성(콘솔)
<a name="applications-create-in-place"></a>

CodeDeploy 콘솔을 사용하여 현재 위치 배포를 위한 애플리케이션을 생성하려면

 

**주의**  
다음과 같은 경우 아래 단계를 수행하지 마세요.  
CodeDeploy 배포에서 사용할 인스턴스를 아직 준비하지 않은 경우. 인스턴스를 설정하려면 [CodeDeploy용 인스턴스 작업](instances.md) 섹션의 지침을 수행한 다음 이 주제의 단계를 수행하세요.
사용자 지정 배포 구성을 사용하는 애플리케이션을 만들고 싶지만 아직 배포 구성을 만들지 못한 경우. [CodeDeploy에서 배포 구성 만들기](deployment-configurations-create.md)의 지침을 수행한 다음 이 주제의 단계를 수행하세요.
필요한 최소한의 신뢰 및 권한으로 CodeDeploy를 신뢰하는 서비스 역할이 없는 경우. 필요한 권한이 있는 서비스 역할을 만들고 구성하려면 [2단계: CodeDeploy에 대한 서비스 역할 생성](getting-started-create-service-role.md)의 지침을 수행한 다음 이 주제의 단계로 돌아갑니다.
현재 위치 배포에 대해 Elastic Load Balancer에서 Classic Load Balancer, Application Load Balancer 또는 Network Load Balancer를 선택하려고 하지만 아직 생성하지 않았습니다.

CodeDeploy 콘솔을 사용하여 현재 위치 배포를 위한 애플리케이션을 생성하려면

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy) CodeDeploy 콘솔을 엽니다.
**참고**  
[CodeDeploy 시작하기](getting-started-codedeploy.md)에서 설정한 사용자와 동일한 사용자로 로그인합니다.

1. 탐색 창에서 **배포**를 확장하고 **시작하기**를 선택합니다.

1. **애플리케이션 생성**을 선택합니다.

1. **애플리케이션 이름**에 애플리케이션의 이름을 입력합니다.

1. **컴퓨팅 플랫폼**에서 **EC2/온프레미스**를 선택합니다.

1. **애플리케이션 생성**을 선택합니다.

1. 애플리케이션 페이지의 **배포 그룹** 탭에서 **배포 그룹 생성**을 선택합니다.

1. **Deployment group name(배포 그룹 이름)**에 배포 그룹을 설명하는 이름을 입력합니다.
**참고**  
(배포 그룹 이름, 태그, Amazon EC2 Auto Scaling 그룹 이름 또는 둘 다 및 배포 구성을 비롯하여) 다른 배포 그룹에서 사용되는 것과 동일한 설정을 사용하려면 이 페이지에서 지정합니다. 새 배포 그룹과 기존 배포 그룹의 이름이 같더라도 각 배포 그룹은 개별 애플리케이션과 연결되므로 CodeDeploy에서는 이러한 배포 그룹을 개별 배포 그룹으로 취급합니다.

1. **서비스 역할**에서 대상 인스턴스에 액세스할 수 있는 권한을 CodeDeploy에 부여하는 서비스 역할을 선택합니다.

1. **배포 유형**에서 **In-place(현재 위치)**를 선택합니다.

1. **환경 구성**에서 다음 중 하나를 선택합니다.

   1. **Amazon EC2 Auto Scaling 그룹**: 애플리케이션 개정을 배포할 Amazon EC2 Auto Scaling 그룹의 이름을 입력하거나 선택합니다. 새 Amazon EC2 인스턴스가 Amazon EC2 Auto Scaling 그룹의 일부로 시작되면 CodeDeploy에서는 새 인스턴스로 개정을 자동으로 배포할 수 있습니다. 배포 그룹당 최대 10개의 Amazon EC2 Auto Scaling 그룹을 추가할 수 있습니다.

   1. **Amazon EC2 인스턴스** 또는 **온프레미스 인스턴스**: **키** 및 **값** 필드에서 인스턴스에 태그를 지정하는 데 사용하는 키-값 페어의 값을 입력합니다. 한 태그 그룹에서 최대 10개의 키-값 페어에 태그를 지정할 수 있습니다.

      1. **값** 필드에서 와일드카드를 사용해 특정 패턴으로 태그가 지정된 모든 인스턴스를 식별할 수 있습니다(예: Amazon EC2 인스턴스, 코스트 센터 및 그룹 이름 등). 예를 들어, **키**필드에서 **이름**을 선택하고 **값** 필드에서 **GRP-\$1a**를 입력하면 CodeDeploy가 해당 패턴에 맞는 모든 인스턴스(예: **GRP-1a**, **GRP-2a**, 및 **GRP-XYZ-a**)를 식별합니다.

      1. **값** 필드는 대/소문자를 구분합니다.

      1. 목록에서 키-값 페어를 제거하려면 **태그 제거**를 선택합니다.

      CodeDeploy에서는 지정된 각 키-값 페어 또는 Amazon EC2 Auto Scaling 그룹 이름과 일치하는 인스턴스를 찾기 때문에 일치하는 인스턴스 개수가 표시됩니다. 인스턴스에 대한 자세한 내용을 확인하려면 이 숫자를 선택하세요.

      배포된 인스턴스의 기준을 세분화하려면 [**Add tag group**]을 선택하여 태그 그룹을 만듭니다. 키-값 페어가 각각 최대 10개인 태그 그룹을 최대 세 개까지 만들 수 있습니다. 배포 그룹에서 여러 태그 그룹을 사용하는 경우 모든 태그 그룹으로 식별되는 인스턴스만 배포 그룹에 포함됩니다. 즉 인스턴스는 배포 그룹에 포함될 각 그룹의 태그 중 적어도 하나와 일치해야 합니다.

      태그 그룹을 사용하여 배포 그룹을 세분화하는 방법에 대한 자세한 내용은 [CodeDeploy에서 배포 그룹에 대한 인스턴스에 태그 지정](instances-tagging.md) 단원을 참조하세요.

1. **배포 설정**에서, 애플리케이션이 인스턴스에 배포되는 속도를 제어하는 배포 구성을 선택합니다(예: 한 번에 하나씩 또는 한 번에 모두). 배포 구성에 대한 자세한 내용은 [CodeDeploy에서 배포 구성 작업](deployment-configurations.md) 단원을 참조하세요.

1. (선택 사항) **로드 밸런서**에서 **로드 밸런싱 활성화**를 선택한 후, 목록에서 CodeDeploy 배포 프로세스 중 인스턴스로 가는 트래픽을 관리할 Classic Load Balancer, Application Load Balancer 대상 그룹 및 Network Load Balancer 대상 그룹을 선택합니다. 최대 10개의 Classic Load Balancer 및 10개의 대상 그룹으로 총 20개의 항목을 선택할 수 있습니다. 배포하려는 Amazon EC2 인스턴스가 선택한 로드 밸런서(Classic Load Balancer) 또는 대상 그룹(Application Load Balancer 및 Network Load Balancer)에 등록되어 있는지 확인합니다.

   배포 중에는 선택한 로드 밸런서 및 대상 그룹에서 원본 인스턴스의 등록이 취소되어 배포 중에 트래픽이 이러한 인스턴스로 라우팅되는 것이 방지됩니다. 배포가 완료되면 각 인스턴스가 선택한 *모든* Classic Load Balancer 및 대상 그룹에 다시 등록됩니다.

   CodeDeploy 배포에 사용할 수 있는 로드 밸런서에 대한 자세한 내용은 [CodeDeploy와 Elastic Load Balancing 통합](integrations-aws-elastic-load-balancing.md) 단원을 참조하세요.

1. (선택 사항) **고급**을 확장하고 배포에 포함하려는 모든 옵션(예: Amazon SNS 알림 트리거, Amazon CloudWatch 경보 또는 자동 롤백)을 구성합니다.

   자세한 내용은 [배포 그룹에 대한 고급 옵션 구성](deployment-groups-configure-advanced-options.md) 단원을 참조하십시오.

1. [**Create deployment group**]을 선택합니다.

다음 단계는 애플리케이션 및 배포 그룹에 배포할 개정을 준비하는 것입니다. 지침은 [CodeDeploy의 애플리케이션 개정 작업](application-revisions.md) 단원을 참조하세요.

# Blue/Green 배포를 위한 애플리케이션 생성(콘솔)
<a name="applications-create-blue-green"></a>

CodeDeploy 콘솔을 사용하여 Blue/Green 배포에 필요한 애플리케이션을 생성하려면

**참고**  
 AWS Lambda 컴퓨팅 플랫폼에 대한 배포는 항상 블루/그린 배포입니다. 배포 유형 옵션은 지정하지 않습니다.

**주의**  
다음과 같은 경우 아래 단계를 수행하지 마세요.  
Blue/Green 배포 프로세스 중 대체하려는 인스턴스에 CodeDeploy 에이전트가 설치되어 있지 않은 경우. 인스턴스를 설정하려면 [CodeDeploy용 인스턴스 작업](instances.md) 섹션의 지침을 수행한 다음 이 주제의 단계를 수행하세요.
사용자 지정 배포 구성을 사용하는 애플리케이션을 만들고 싶지만 아직 배포 구성을 만들지 못한 경우. [CodeDeploy에서 배포 구성 만들기](deployment-configurations-create.md)의 지침을 수행한 다음 이 주제의 단계를 수행하세요.
최소한 [2단계: CodeDeploy에 대한 서비스 역할 생성](getting-started-create-service-role.md)에 설명된 신뢰 및 권한으로 CodeDeploy를 신뢰하는 서비스 역할이 없는 경우. 서비스 역할을 만들고 구성하려면 [2단계: CodeDeploy에 대한 서비스 역할 생성](getting-started-create-service-role.md)의 지침을 수행한 다음 이 주제의 단계를 수행하세요.
대체 환경에서 인스턴스를 등록하기 위해 Elastic Load Balancing에서 Classic Load Balancer, Application Load Balancer 또는 Network Load Balancer를 생성하지 않았습니다. 자세한 내용은 [Elastic Load Balancing에서 CodeDeploy Amazon EC2 배포에 대한 로드 밸런서 설정](deployment-groups-create-load-balancer.md) 단원을 참조하십시오.

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy) CodeDeploy 콘솔을 엽니다.
**참고**  
[CodeDeploy 시작하기](getting-started-codedeploy.md)에서 설정한 사용자와 동일한 사용자로 로그인합니다.

1. 탐색 창에서 **배포**를 확장하고 **시작하기**를 선택합니다.

1. **애플리케이션 이름**에 애플리케이션의 이름을 입력합니다.

1. **컴퓨팅 플랫폼**에서 **EC2/온프레미스**를 선택합니다.

1. **애플리케이션 생성**을 선택합니다.

1. 애플리케이션 페이지의 **배포 그룹** 탭에서 **배포 그룹 생성**을 선택합니다.

1. **Deployment group name(배포 그룹 이름)**에 배포 그룹을 설명하는 이름을 입력합니다.
**참고**  
(배포 그룹 이름, 태그, Amazon EC2 Auto Scaling 그룹 이름 및 배포 구성을 비롯하여) 다른 배포 그룹에서 사용되는 것과 동일한 설정을 사용하려면 이 페이지에서 해당 설정을 선택합니다. 새 배포 그룹과 기존 배포 그룹의 이름이 같더라도 각 배포 그룹은 개별 애플리케이션과 연결되므로 CodeDeploy에서는 이러한 배포 그룹을 개별 배포 그룹으로 취급합니다.

1. **서비스 역할**에서 대상 인스턴스에 액세스할 수 있는 권한을 CodeDeploy에 부여하는 서비스 역할을 선택합니다.

1. **배포 유형**에서 **Blue/Green(블루/그린)**을 선택합니다.

1. [**Environment configuration**]에서 대체 환경에 인스턴스를 제공하는 데 사용할 방법을 선택합니다.

   1. **Amazon EC2 Auto Scaling 그룹 자동 복사**: CodeDeploy 그룹은 지정된 그룹을 복사하여 Amazon EC2 Auto Scaling 그룹을 생성합니다.

   1. [**Manually provision instances**]: 배포를 만들 때까지 대체 환경에 필요한 인스턴스를 지정할 수 없습니다. 배포를 시작하려면 먼저 인스턴스를 만들어야 합니다. 대신, 여기서 대체할 인스턴스를 지정합니다.

1. 10단계에서 선택한 항목에 따라 다음 중 하나를 수행하세요.
   + **Amazon EC2 Auto Scaling 그룹 자동 복사**를 선택한 경우: **Amazon EC2 Auto Scaling 그룹**에서 대체 환경의 인스턴스에 대한 Amazon EC2 Auto Scaling 그룹의 템플릿으로 사용할 Amazon EC2 Auto Scaling 그룹의 이름을 선택하거나 입력합니다. 선택한 Amazon EC2 Auto Scaling 그룹의 현재 정상 인스턴스 개수가 대체 환경에서 생성됩니다.
   + **인스턴스 수동 프로비저닝**을 선택한 경우: **Amazon EC2 Auto Scaling 그룹**이나 **Amazon EC2 인스턴스** 또는 둘 다에서 이 배포 그룹에 추가할 인스턴스를 지정할 수 있습니다. 원본 환경에서 인스턴스(즉, 대체할 인스턴스 또는 현재 애플리케이션 개정을 실행 중인 인스턴스)를 식별할 Amazon EC2 태그 값 또는 Amazon EC2 Auto Scaling 그룹 이름을 입력합니다.

1. **로드 밸런서**에서 **로드 밸런싱 활성화**를 선택한 후 목록에서 대체 Amazon EC2 인스턴스를 등록할 Classic Load Balancer, Application Load Balancer 대상 그룹 및 Network Load Balancer 대상 그룹을 선택합니다. 각 대체 인스턴스는 선택한 *모든* Classic Load Balancer 및 대상 그룹에 등록됩니다. 최대 10개의 Classic Load Balancer 및 10개의 대상 그룹으로 총 20개의 항목을 선택할 수 있습니다.

   선택한 **트래픽 재라우팅** 및 **배포 구성** 설정에 따라 트래픽이 원본 인스턴스에서 대체 인스턴스로 다시 라우팅됩니다.

   CodeDeploy 배포에 사용할 수 있는 로드 밸런서에 대한 자세한 내용은 [CodeDeploy와 Elastic Load Balancing 통합](integrations-aws-elastic-load-balancing.md) 단원을 참조하세요.

1. [**Deployment settings**]에서 대체 환경으로 트래픽을 다시 라우팅하기 위한 기본 옵션(배포에 사용할 배포 구성임)과 배포 후 원본 환경의 인스턴스 처리 방법에 대한 기본 옵션을 검토합니다.

   설정을 변경하려면 다음 단계로 진행합니다. 그렇지 않으면 15단계로 건너뛰세요.

1. Blue/Green 배포에 대한 배포 설정을 변경하려면 다음 설정을 변경합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/codedeploy/latest/userguide/applications-create-blue-green.html)

1. (선택 사항) **고급**에서 배포에 포함하려는 모든 옵션(예: Amazon SNS 알림 트리거, Amazon CloudWatch 경보 또는 자동 롤백)을 구성합니다.

   배포 그룹에서 고급 옵션 지정에 대한 자세한 내용은 [배포 그룹에 대한 고급 옵션 구성](deployment-groups-configure-advanced-options.md) 단원을 참조하세요.

1. [**Create deployment group**]을 선택합니다.

다음 단계는 애플리케이션 및 배포 그룹에 배포할 개정을 준비하는 것입니다. 지침은 [CodeDeploy의 애플리케이션 개정 작업](application-revisions.md) 단원을 참조하세요.

# Amazon ECS 서비스 배포를 위한 애플리케이션 생성 (콘솔)
<a name="applications-create-ecs"></a>

 CodeDeploy 콘솔을 사용하여 Amazon ECS 서비스 배포를 위한 애플리케이션을 생성할 수 있습니다.

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy) CodeDeploy 콘솔을 엽니다.
**참고**  
[CodeDeploy 시작하기](getting-started-codedeploy.md)에서 설정한 사용자와 동일한 사용자로 로그인합니다.

1. 탐색 창에서 **배포**를 확장하고 **시작하기**를 선택합니다.

1. **애플리케이션 생성** 페이지에서 **codeDeploy 사용**을 선택합니다.

1. **애플리케이션 이름**에 애플리케이션의 이름을 입력합니다.

1. **컴퓨팅 플랫폼**에서 **Amazon ECS**를 선택합니다.

1. **애플리케이션 생성**을 선택합니다.

1. 애플리케이션 페이지의 **배포 그룹** 탭에서 **배포 그룹 생성**을 선택합니다. Amazon ECS 배포에 대한 배포 그룹을 만드는 데 필요한 항목에 대한 자세한 정보는 [Amazon ECS 배포를 시작하기 전](deployment-steps-ecs.md#deployment-steps-prerequisites-ecs) 단원을 참조하세요.

1. **Deployment group name(배포 그룹 이름)**에 배포 그룹을 설명하는 이름을 입력합니다.
**참고**  
(배포 그룹 이름 및 배포 구성을 포함하여) 다른 배포 그룹에서 사용되는 것과 동일한 설정을 사용하려면 이 페이지에서 해당 설정을 선택합니다. 새 그룹과 기존 그룹의 이름이 같더라도 각 배포 그룹은 개별 애플리케이션과 연결되므로 CodeDeploy는 이러한 배포 그룹을 개별 배포 그룹으로 취급합니다.

1. **서비스 역할**에서 Amazon ECS에 액세스할 수 있는 권한을 CodeDeploy에 부여하는 서비스 역할을 선택합니다. 자세한 내용은 [2단계: CodeDeploy에 대한 서비스 역할 생성](getting-started-create-service-role.md) 단원을 참조하십시오.

1.  **로드밸런서 이름**에서 Amazon ECS 서비스에 트래픽을 공급하는 로드밸런서의 이름을 선택합니다.

1.  **프로덕션 리스너 포트**에서 해당 Amazon ECS 서비스에 서비스 프로덕션 트래픽을 공급하는 리스너의 프로토콜과 포트를 선택합니다.

1.  (선택 사항) **테스트 리스너 포트**에서 배포 중 해당 Amazon ECS 서비스의 대체 작업 세트에 트래픽을 공급하는 테스트 리스너의 프로토콜과 포트를 선택합니다. `AfterAllowTestTraffic` 후크 중 실행하는 AppSpec 파일의 Lambda 함수를 한 개 이상 지정할 수 있습니다. 이 함수는 확인 테스트를 실행할 수 있습니다. 확인 테스트가 실패하면 배포 롤백이 트리거됩니다. 확인 테스트가 성공하면 배포 수명 주기의 다음 후크인 `BeforeAllowTraffic`이 트리거됩니다. 테스트 리스너 포트를 지정하지 않으면 `AfterAllowTestTraffic` 후크 중 아무것도 수행되지 않습니다. 자세한 내용은 [Amazon ECS 배포를 위한 AppSpec 'hooks' 섹션](reference-appspec-file-structure-hooks.md#appspec-hooks-ecs) 단원을 참조하십시오.

1. **대상 그룹 1 이름**과 **대상 그룹 2 이름**에서 배포 중 트래픽을 라우팅하는 데 사용되는 대상 그룹을 선택합니다. CodeDeploy는 한 대상 그룹을 Amazon ECS 서비스의 기존 작업 세트에 바인딩하고 다른 대상 그룹을 대체 작업 세트에 바인딩합니다. 자세한 내용은 [Application Load Balancer의 대상 그룹 지정](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html)을 참조하세요.

1.  **즉시 트래픽 다시 라우팅** 또는 **트래픽을 언제 다시 라우팅할지 지정**을 선택하여 업데이트된 Amazon ECS 서비스에 트래픽을 언제 다시 라우팅할지를 지정합니다.

    **Reroute traffic immediately(즉시 트래픽 다시 라우팅)**를 선택한 경우 대체 작업 세트가 프로비저닝된 후 배포가 트래픽을 자동으로 다시 라우팅합니다.

    **Specify when to reroute traffic(트래픽을 언제 다시 라우팅할지 지정)**을 선택한 경우 대체 작업 세트가 성공적으로 프로비저닝된 후 대기할 일, 시간 및 분을 선택합니다. 이 대기 시간 동안 AppSpec 파일에 지정된 Lambda 함수의 유효성 테스트가 실행됩니다. 트래픽이 다시 라우팅되기 전에 대기 시간이 만료되면 배포 상태가 `Stopped`로 변경됩니다.

1.  **기존 개정 종료**에서 배포 성공 후 얼마 후에 Amazon ECS 서비스의 기존 작업 세트가 종료될지를 일, 시간, 분으로 선택합니다.

1. (선택 사항) **고급**에서 배포에 포함하려는 모든 옵션(예: Amazon SNS 알림 트리거, Amazon CloudWatch 경보 또는 자동 롤백)을 구성합니다.

   자세한 내용은 [배포 그룹에 대한 고급 옵션 구성](deployment-groups-configure-advanced-options.md) 단원을 참조하십시오.

# AWS Lambda 함수 배포를 위한 애플리케이션 생성(콘솔)
<a name="applications-create-lambda"></a>

CodeDeploy 콘솔을 사용하여 AWS Lambda 함수 배포를 위한 애플리케이션을 생성할 수 있습니다.

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy) CodeDeploy 콘솔을 엽니다.
**참고**  
[CodeDeploy 시작하기](getting-started-codedeploy.md)에서 설정한 사용자와 동일한 사용자로 로그인합니다.

1. 탐색 창에서 **배포**를 확장하고 **시작하기**를 선택합니다.

1. **애플리케이션 생성** 페이지에서 **codeDeploy 사용**을 선택합니다.

1. **애플리케이션 이름**에 애플리케이션의 이름을 입력합니다.

1. **컴퓨팅 플랫폼**에서 **AWS Lambda**을(를) 선택합니다.

1. **애플리케이션 생성**을 선택합니다.

1. 애플리케이션 페이지의 **배포 그룹** 탭에서 **배포 그룹 생성**을 선택합니다.

1. **Deployment group name(배포 그룹 이름)**에 배포 그룹을 설명하는 이름을 입력합니다.
**참고**  
(배포 그룹 이름 및 배포 구성을 포함하여) 다른 배포 그룹에서 사용되는 것과 동일한 설정을 사용하려면 이 페이지에서 해당 설정을 선택합니다. 새 배포 그룹과 기존 배포 그룹의 이름이 같더라도 각 배포 그룹은 개별 애플리케이션과 연결되므로 CodeDeploy는 이러한 배포 그룹을 개별 배포 그룹으로 취급합니다.

1. **서비스 역할**에서 CodeDeploy에 액세스 권한을 부여하는 서비스 역할을 선택합니다 AWS Lambda. 자세한 내용은 [2단계: CodeDeploy에 대한 서비스 역할 생성](getting-started-create-service-role.md) 단원을 참조하십시오.

1.  미리 정의된 배포 구성을 사용하려면 **배포 구성**을 선택한 다음 12단계로 건너뜁니다. 사용자 지정 구성을 생성하려면 다음 단계를 계속합니다.

   배포 구성에 대한 자세한 내용은 [AWS Lambda 컴퓨팅 플랫폼의 배포 구성](deployment-configurations.md#deployment-configuration-lambda) 단원을 참조하세요.

1. 사용자 지정 구성을 생성하려면**배포 구성 생성**을 클릭한 후 다음을 수행합니다.

   1. **배포 구성 이름**에 구성 이름을 입력합니다.

   1. **유형**에서 구성 유형을 선택합니다. **Canary**를 선택한 경우 트래픽이 2 증분씩 이동합니다. **Linear**를 선택한 경우 트래픽이 동일한 증분으로 이동하며 각 증분 간에 시간(분)이 동일합니다.

   1. **단계**에 이동할 트래픽의 백분율(1\$199 사이)을 입력합니다. 구성 유형이 **Canary**인 경우에 첫 번째 증분이 이동되는 트래픽의 비율입니다. 나머지 트래픽은 선택한 간격 후에 두 번째 증분으로 이동합니다. 구성 유형이 **Linear**인 경우에 각 간격이 시작될 때 이동되는 트래픽의 비율입니다.

   1. **간격**에 시간(분)을 입력합니다. 구성 유형이 **Canary**인 경우 첫 번째와 두 번째 트래픽 이동 사이의 시간(분)입니다. 구성 유형이 **Linear**인 경우 각 증분 이동 사이의 시간(분)입니다.
**참고**  
 AWS Lambda 배포의 최대 길이는 2일 또는 2,880분입니다. 따라서 canary 구성의 **간격**에 지정되는 최대 값은 2,800분입니다. linear(선형) 구성의 최대 값은 **단계**의 값에 따릅니다. 예를 들어 선형 트래픽 이동의 단계 백분율이 25%인 경우 트래픽 이동이 네 개입니다. 최대 간격 값은 2,880을 4분 또는 720분으로 나눈 값입니다.

   1. **배포 구성 만들기**를 선택합니다.

1. (선택 사항) **고급**에서 배포에 포함하려는 모든 옵션(예: Amazon SNS 알림 트리거, Amazon CloudWatch 경보 또는 자동 롤백)을 구성합니다.

   자세한 내용은 [배포 그룹에 대한 고급 옵션 구성](deployment-groups-configure-advanced-options.md) 단원을 참조하십시오.

1. [**Create deployment group**]을 선택합니다.

# 애플리케이션(CLI) 생성
<a name="applications-create-cli"></a>

 AWS CLI 를 사용하여 애플리케이션을 생성하려면 [create-application](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-application.html) 명령을 호출하여 애플리케이션을 고유하게 나타내는 이름을 지정합니다. ( AWS 계정에서 CodeDeploy 애플리케이션 이름은 리전당 한 번만 사용할 수 있습니다. 애플리케이션 이름은 다른 리전에서 재사용할 수 있습니다.)

 AWS CLI 를 사용하여 애플리케이션을 생성한 후 다음 단계는 개정을 배포할 인스턴스를 지정하는 배포 그룹을 생성하는 것입니다. 지침은 [CodeDeploy에서 배포 그룹 만들기](deployment-groups-create.md) 단원을 참조하세요.

배포 그룹을 만든 후 다음 단계는 애플리케이션 및 배포 그룹에 배포할 개정을 준비하는 것입니다. 지침은 [CodeDeploy의 애플리케이션 개정 작업](application-revisions.md) 단원을 참조하세요.

# CodeDeploy로 애플리케이션 세부 정보 보기
<a name="applications-view-details"></a>

CodeDeploy 콘솔, AWS CLI또는 CodeDeploy APIs를 사용하여 AWS 계정과 연결된 모든 애플리케이션에 대한 세부 정보를 볼 수 있습니다.

**Topics**
+ [애플리케이션 세부 정보 보기(콘솔)](#applications-view-details-console)
+ [애플리케이션 세부 정보 보기(CLI)](#applications-view-details-cli)

## 애플리케이션 세부 정보 보기(콘솔)
<a name="applications-view-details-console"></a>

CodeDeploy 콘솔을 사용하여 애플리케이션의 세부 정보를 보려면

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy) CodeDeploy 콘솔을 엽니다.
**참고**  
[CodeDeploy 시작하기](getting-started-codedeploy.md)에서 설정한 사용자와 동일한 사용자로 로그인합니다.

1. 탐색 창에서 **배포**를 확장하고 **시작하기**를 선택합니다.

1. 추가 애플리케이션 세부 정보를 보려면 목록에서 애플리케이션 이름을 선택합니다.

## 애플리케이션 세부 정보 보기(CLI)
<a name="applications-view-details-cli"></a>

 AWS CLI 를 사용하여 애플리케이션 세부 정보를 보려면 **get-application** 명령, **batch-get-application** 명령 또는 **list-applications** 명령을 호출합니다.

단일 애플리케이션에 대한 세부 정보를 보려면 [get-application](https://docs.aws.amazon.com/cli/latest/reference/deploy/get-application.html) 명령을 호출하고 애플리케이션 이름을 지정합니다.

여러 애플리케이션에 대한 세부 정보를 보려면 [batch-get-applications](https://docs.aws.amazon.com/cli/latest/reference/deploy/batch-get-applications.html) 명령을 호출하여 여러 애플리케이션의 이름을 지정합니다.

애플리케이션 이름 목록을 보려면 [list-applications](https://docs.aws.amazon.com/cli/latest/reference/deploy/list-applications.html) 명령을 호출합니다.

# 알림 규칙 생성
<a name="notification-rule-create"></a>

배포 성공 및 실패와 같이 배포 애플리케이션이 변경된 경우 알림 규칙을 사용하여 사용자에게 알릴 수 있습니다. 알림 규칙은 알림을 보내는 데 사용되는 이벤트와 Amazon SNS 주제를 모두 지정합니다. 자세한 내용은 [알림이란 무엇입니까?](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/welcome.html)를 참조하세요.

콘솔 또는를 사용하여 알림 규칙을 AWS CLI 생성할 수 있습니다 AWS CodeDeploy.<a name="notification-rule-create-console"></a>

# 알림 규칙을 생성하려면 (콘솔)
<a name="notification-rule-create-console"></a>

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/codedeploy/](https://console.aws.amazon.com/codedeploy/) CodeDeploy 콘솔을 엽니다.

1. **애플리케이션**을 선택한 다음 알림을 추가할 애플리케이션을 선택합니다.

1. 애플리케이션 페이지에서 **알림**을 선택하고 **알림 규칙 생성**을 선택합니다. 애플리케이션의 **설정** 페이지로 이동하여 **알림 규칙 생성**을 선택할 수도 있습니다.

1. **알림 이름**에 규칙에 대한 이름을 입력합니다.

1. 알림에 포함된 Amazon EventBridge에 제공된 정보만 원하는 경우 **세부 정보 유형**에서 **기본**을 선택합니다. Amazon EventBridge에 제공된 정보와 CodeDeploy 또는 알림 관리자에서 제공할 수 있는 정보를 포함하려는 경우 **전체**를 선택합니다.

   자세한 내용은 [알림 내용 및 보안 이해](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/security.html#security-notifications)를 참조하세요.

1.  **알림을 트리거하는 이벤트**에서 알림을 보내고자 하는 이벤트를 선택합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/codedeploy/latest/userguide/notification-rule-create.html)

1. **대상**에서 **SNS 주제 생성**을 선택합니다.
**참고**  
주제를 생성하면 CodeDeploy가 주제에 이벤트를 게시하도록 허용하는 정책이 적용됩니다. CodeDeploy 알림용으로 특별히 생성된 주제를 사용하면 이 배포 애플리케이션에 대한 알림을 보려는 해당 주제의 가입 목록에만 사용자를 추가할 수 있습니다.

   **codestar-notifications-** 접두사 뒤에 주제 이름을 입력한 다음 **제출**을 선택합니다.
**참고**  
새 항목을 만드는 대신 기존 Amazon SNS 항목을 사용하려면 **대상**에서 해당 ARN을 선택합니다. 주제에 적절한 액세스 정책이 있는지와 구독자 목록에 배포 애플리케이션에 대한 정보를 볼 수 있도록 허용된 사용자만 포함되어 있는지 확인합니다. 자세한 내용은 [알림에 대한 기존 Amazon SNS 주제 구성](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/set-up-sns.html)과 [알림 내용 및 보안 이해](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/security.html#security-notifications)를 참조하세요.

1. 규칙 생성을 완료하려면 **제출**을 선택합니다.

1. 사용자가 알림을 받으려면 먼저 규칙에 대한 Amazon SNS 주제를 사용자가 구독하도록 해야 합니다. 자세한 내용은 [대상인 Amazon SNS 주제에 사용자 구독](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/subscribe-users-sns.html)을 참조하세요. Amazon Chime 채팅룸이나 Slack 채널에 알림을 보내도록 알림과 Amazon Q Developer 간의 통합을 설정할 수도 있습니다. 자세한 내용은 [채팅 애플리케이션에서 알림과 Amazon Q Developer 간의 통합 구성](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notifications-chatbot.html)을 참조하세요.<a name="notification-rule-create-cli"></a>

# 알림 규칙을 생성하려면(AWS CLI)
<a name="notification-rule-create-cli"></a>

1. 터미널 또는 명령 프롬프트에서 **create-notification rule** 명령을 실행하여 JSON 스켈레톤을 생성합니다.

   ```
   aws codestar-notifications create-notification-rule --generate-cli-skeleton > rule.json
   ```

   원하는 대로 파일 이름을 지정할 수 있습니다. 이 예에서는 *rule.json*으로 파일 이름을 지정합니다.

1. 일반 텍스트 편집기에서 JSON 파일을 열고 규칙에 대해 원하는 리소스, 이벤트 유형 및 Amazon SNS 대상을 포함하도록 편집합니다. 다음 예제는 ID가 *123456789012*인 AWS 계정의 *MyDeploymentApplication*이라는 애플리케이션에 **MyNotificationRule** 대한 라는 알림 규칙을 보여줍니다. 배포가 성공적일 때 *codestar-notifications-MyNotificationTopic*이라는 Amazon SNS 주제에 전체 세부 정보 유형과 함께 알림이 전송됩니다.

   ```
   {
       "Name": "MyNotificationRule",
       "EventTypeIds": [
           "codedeploy-application-deployment-succeeded"
       ],
       "Resource": "arn:aws:codebuild:us-east-2:123456789012:MyDeploymentApplication",
       "Targets": [
           {
               "TargetType": "SNS",
               "TargetAddress": "arn:aws:sns:us-east-2:123456789012:codestar-notifications-MyNotificationTopic"
           }
       ],
       "Status": "ENABLED",
       "DetailType": "FULL"
   }
   ```

   파일을 저장합니다.

1. 터미널 또는 명령줄에서 **create-notification-rule** 명령을 다시 실행하여 조금 전 편집한 파일을 사용해 알림 규칙을 생성합니다.

   ```
   aws codestar-notifications create-notification-rule --cli-input-json  file://rule.json
   ```

1. 성공한 경우 명령에서 다음과 유사한 알림 규칙의 ARN을 반환합니다.

   ```
   {
       "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE"
   }
   ```

# CodeDeploy 애플리케이션 이름 바꾸기
<a name="applications-rename"></a>

AWS CLI 또는 CodeDeploy API를 사용하여 애플리케이션의 이름을 변경할 수 있습니다.

애플리케이션 이름 목록을 보려면 AWS CLI을(를) 사용하여 [list-applications](https://docs.aws.amazon.com/cli/latest/reference/deploy/list-applications.html) 명령을 호출합니다.

AWS CLI을(를) 사용하여 애플리케이션 이름을 변경하는 방법에 대한 자세한 내용은 [update-application](https://docs.aws.amazon.com/cli/latest/reference/deploy/update-application.html)을 참조하세요.

CodeDeploy API를 사용하여 애플리케이션 이름을 변경하는 방법에 대한 자세한 내용은 [API\$1UpdateApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_UpdateApplication.html)을 참조하세요.

# CodeDCodeDeploy에서 애플리케이션을 삭제합니다.
<a name="applications-delete"></a>

CodeDeploy 콘솔 AWS CLI 또는 CodeDeploy API 작업을 사용하여 애플리케이션을 삭제할 수 있습니다. CodeDeploy API 작업을 사용하는 방법에 대한 자세한 내용은 [DeleteApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_DeleteApplication.html)을 참조하세요.

**주의**  
애플리케이션을 삭제하면 관련된 모든 배포 그룹 정보 및 배포 세부 정보를 포함해 CodeDeploy 시스템에서 애플리케이션에 대한 정보가 제거됩니다. EC2/온프레미스 배포용으로 생성된 애플리케이션을 삭제해도 인스턴스에서 애플리케이션 수정 버전이 제거되지 않으며 Amazon S3 버킷에서 수정 버전이 삭제되지 않습니다. EC2/온프레미스 배포용으로 생성된 애플리케이션을 삭제해도 Amazon EC2 인스턴스가 종료되거나 온프레미스 인스턴스의 등록이 취소되지 않습니다. 이 작업은 실행을 취소할 수 없습니다.

**Topics**
+ [애플리케이션 삭제(콘솔)](#applications-delete-console)
+ [애플리케이션(AWS CLI)을 삭제합니다.](#applications-delete-cli)

## 애플리케이션 삭제(콘솔)
<a name="applications-delete-console"></a>

CodeDeploy 콘솔을 사용하여 애플리케이션을 삭제하려면

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy)에서 CodeDeploy 콘솔을 엽니다.
**참고**  
[CodeDeploy 시작하기](getting-started-codedeploy.md)에서 설정한 사용자와 동일한 사용자로 로그인합니다.

1. 탐색 창에서 **배포**를 확장하고 **애플리케이션**을 선택합니다.

1. 애플리케이션 목록에서 삭제하려는 애플리케이션을 선택합니다.

   애플리케이션에 대한 세부 정보를 포함하는 페이지가 나타납니다.

1. 오른쪽 상단에서 **애플리케이션 삭제**를 선택합니다.

1. 메시지가 표시되면 **delete**를 입력하여 삭제할 것인지 확인한 후 **삭제**를 선택합니다.

## 애플리케이션(AWS CLI)을 삭제합니다.
<a name="applications-delete-cli"></a>

AWS CLI을(를) 사용하여 애플리케이션을 삭제하려면 [delete-application](https://docs.aws.amazon.com/cli/latest/reference/deploy/delete-application.html) 명령을 호출하여 애플리케이션 이름을 지정합니다. 애플리케이션 이름 목록을 보려면 [list-applications](https://docs.aws.amazon.com/cli/latest/reference/deploy/list-applications.html) 명령을 호출합니다.