2단계: Auto Scaling 그룹에 애플리케이션 배포 - AWS CodeDeploy

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

2단계: Auto Scaling 그룹에 애플리케이션 배포

이 단계에서는 Auto Scaling 그룹의 단일 Amazon EC2 인스턴스에 수정 버전을 배포합니다.

배포를 만들려면(CLI)

  1. create-application 명령을 호출하여 SimpleDemoApp이라는 애플리케이션을 생성합니다.

    aws deploy create-application --application-name SimpleDemoApp
  2. 2단계: 서비스 역할 만들기 CodeDeploy의 지침에 따라 이미 서비스 역할을 만들었을 것입니다. 서비스 역할은 Amazon EC2 인스턴스에 액세스하여 태그를 확장 (읽기) 할 수 있는 CodeDeploy 권한을 부여합니다. 서비스 역할 ARN이 필요합니다. 서비스 역할 ARN을 확인하려면 서비스 역할 ARN 확인(CLI) 의 지침을 따르십시오.

  3. 이제 서비스 역할 ARN이 있으므로 지정된 서비스 역할 ARN으로 create-deployment-group 명령을 호출하고 CodeDeployDemo-AS-Group이라는 Auto Scaling 그룹과 CodeDeployDefault.OneAtATime이라는 배포 구성을 사용하여 SimpleDemoDG라는 배포 그룹을 생성하고 SimpleDemoApp이라는 애플리케이션에 연결합니다.

    참고

    create-deployment-group명령은 배포 및 인스턴스의 특정 이벤트에 대한 Amazon SNS 알림을 주제 구독자에게 보내는 트리거 생성을 지원합니다. 이 명령은 Amazon 경보의 모니터링 임계값이 충족될 때 배포를 자동으로 롤백하고 배포를 중지하도록 경보를 설정하는 옵션도 지원합니다. CloudWatch 이 작업에 대한 명령은 이 자습서에 포함되지 않습니다.

    로컬 Linux, macOS 또는 Unix 머신의 경우

    aws deploy create-deployment-group \ --application-name SimpleDemoApp \ --auto-scaling-groups CodeDeployDemo-AS-Group \ --deployment-group-name SimpleDemoDG \ --deployment-config-name CodeDeployDefault.OneAtATime \ --service-role-arn service-role-arn

    로컬 Windows 머신의 경우

    aws deploy create-deployment-group --application-name SimpleDemoApp --auto-scaling-groups CodeDeployDemo-AS-Group --deployment-group-name SimpleDemoDG --deployment-config-name CodeDeployDefault.OneAtATime --service-role-arn service-role-arn
  4. create-deployment 명령을 호출하고 지정된 위치의 수정을 사용하여 SimpleDemoApp이라는 애플리케이션, CodeDeployDefault.OneAtATime이라는 배포 구성 및 SimpleDemoDG라는 배포 그룹과 연결된 배포를 만듭니다.

    Amazon Linux 및 RHEL Amazon EC2 인스턴스의 경우 로컬 Linux, macOS 또는 Unix 시스템에서 호출

    aws deploy create-deployment \ --application-name SimpleDemoApp \ --deployment-config-name CodeDeployDefault.OneAtATime \ --deployment-group-name SimpleDemoDG \ --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Linux.zip

    bucket-name은 해당 지역의 CodeDeploy 리소스 키트 파일이 들어 있는 Amazon S3 버킷의 이름입니다. 예를 들어 미국 동부(오하이오) 리전의 경우 bucket-nameaws-codedeploy-us-east-2로 바꿉니다. 버킷 이름 목록은 리전별 리소스 키트 버킷 이름 단원을 참조하세요.

    Amazon Linux 및 RHEL Amazon EC2 인스턴스의 경우 로컬 Windows 시스템에서 호출

    aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Linux.zip

    bucket-name은 해당 지역의 CodeDeploy 리소스 키트 파일이 들어 있는 Amazon S3 버킷의 이름입니다. 예를 들어 미국 동부(오하이오) 리전의 경우 bucket-nameaws-codedeploy-us-east-2로 바꿉니다. 버킷 이름 목록은 리전별 리소스 키트 버킷 이름 단원을 참조하세요.

    Windows Server Amazon EC2 인스턴스의 경우 로컬 Linux, macOS 또는 Unix 시스템에서 호출

    aws deploy create-deployment \ --application-name SimpleDemoApp \ --deployment-config-name CodeDeployDefault.OneAtATime \ --deployment-group-name SimpleDemoDG \ --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Windows.zip

    bucket-name은 해당 지역의 CodeDeploy 리소스 키트 파일이 들어 있는 Amazon S3 버킷의 이름입니다. 예를 들어 미국 동부(오하이오) 리전의 경우 bucket-nameaws-codedeploy-us-east-2로 바꿉니다. 버킷 이름 목록은 리전별 리소스 키트 버킷 이름 단원을 참조하세요.

    Windows Server Amazon EC2 인스턴스의 경우 로컬 Windows 시스템에서 호출

    aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Windows.zip

    bucket-name은 해당 지역의 CodeDeploy 리소스 키트 파일이 들어 있는 Amazon S3 버킷의 이름입니다. 예를 들어 미국 동부(오하이오) 리전의 경우 bucket-nameaws-codedeploy-us-east-2로 바꿉니다. 버킷 이름 목록은 리전별 리소스 키트 버킷 이름 단원을 참조하세요.

    참고

    현재, 우분투 서버 Amazon EC2 인스턴스에 배포하기 위한 샘플 수정 버전은 제공하지 CodeDeploy 않습니다. 수정을 직접 만들려면 에 대한 애플리케이션 수정 작업 CodeDeploy 단원을 참조하세요.

  5. get-deployment 명령을 호출하여 배포에 성공했는지 확인합니다.

    이 명령을 호출하기 전에 배포 ID가 필요합니다. 이 ID는 create-deployment 명령에 대한 호출로 반환되어야 합니다. 배포 ID를 다시 가져와야 할 경우 list-deployments이라는 애플리케이션 및 SimpleDemoApp라는 배포 그룹에 대해 SimpleDemoDG 명령을 호출하세요.

    aws deploy list-deployments --application-name SimpleDemoApp --deployment-group-name SimpleDemoDG --query "deployments" --output text

    이제 배포 ID를 사용하여 get-deployment 명령을 호출합니다.

    aws deploy get-deployment --deployment-id deployment-id --query "deploymentInfo.status" --output text

    반환된 값이 Succeeded일 때까지 계속하지 마십시오.

배포를 만들려면(콘솔)

  1. 2단계: 서비스 역할 만들기 CodeDeploy의 지침에 따라 이미 서비스 역할을 만들었을 것입니다. 서비스 역할은 인스턴스에 액세스하여 태그를 확장 (읽기) 할 수 있는 CodeDeploy 권한을 부여합니다. CodeDeploy 콘솔을 사용하여 애플리케이션 버전을 배포하려면 먼저 서비스 역할 ARN이 필요합니다. 서비스 역할 ARN을 확인하려면 서비스 역할 ARN 확인(콘솔) 의 지침을 따르십시오.

  2. 이제 서비스 역할 ARN이 생성되었으므로 CodeDeploy 콘솔을 사용하여 애플리케이션 수정 버전을 배포할 수 있습니다.

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

    참고

    시작하기 CodeDeploy에서 설정한 사용자와 동일한 사용자로 로그인합니다.

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

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

  5. 사용자 지정 애플리케이션을 선택합니다.

  6. 애플리케이션 이름SimpleDemoApp을 입력합니다.

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

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

  9. 배포 그룹 탭에서 Create deployment group(배포 그룹 생성)을 선택합니다.

  10. Deployment group name(배포 그룹 이름)SimpleDemoDG을 입력합니다.

  11. 서비스 역할에서 서비스 역할의 이름을 선택합니다.

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

  13. 환경 구성(Environment configuration)에서 Auto Scaling 그룹(Auto Scaling groups)을 선택한 다음 CodeDeployDemo-AS-Group을 선택합니다.

  14. 배포 구성에서 을 선택합니다 CodeDeployDefault. OneAt시간.

  15. 로드 밸런싱 활성화의 선택을 취소합니다.

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

  17. 배포 그룹 페이지에서 배포 생성을 선택합니다.

  18. 수정 유형에서 내 애플리케이션은 Amazon S3에 저장됨을 선택합니다.

  19. 수정 위치에 운영 체제 및 리전에 적합한 샘플 애플리케이션의 위치를 입력합니다.

    Amazon Linux 및 RHEL Amazon EC2 인스턴스의 경우

    지역 샘플 애플리케이션의 위치
    US East (Ohio) Region http://s3-us-east-2.amazonaws.com/aws-codedeploy-us-east-2/samples/latest/SampleApp_Linux.zip
    미국 동부(버지니아 북부) 리전 http://s3.amazonaws.com/aws-codedeploy-us-east-1/samples/latest/SampleApp_Linux.zip
    미국 서부(캘리포니아 북부) 리전 http://s3-us-west-1.amazonaws.com/aws-codedeploy-us-west-1/samples/latest/SampleApp_Linux.zip
    미국 서부(오레곤) 리전 http://s3-us-west-2.amazonaws.com/aws-codedeploy-us-west-2/samples/latest/SampleApp_Linux.zip
    캐나다(중부) 리전 http://s3-ca-central-1.amazonaws.com/aws-codedeploy-ca-central-1/samples/latest/SampleApp_Linux.zip
    Europe (Ireland) Region http://s3-eu-west-1.amazonaws.com/aws-codedeploy-eu-west-1/samples/latest/SampleApp_Linux.zip
    Europe (London) Region http://s3-eu-west-2.amazonaws.com/aws-codedeploy-eu-west-2/samples/latest/SampleApp_Linux.zip
    Europe (Paris) Region http://s3-eu-west-3.amazonaws.com/aws-codedeploy-eu-west-3/samples/latest/SampleApp_Linux.zip
    Europe (Frankfurt) Region http://s3-eu-central-1.amazonaws.com/aws-codedeploy-eu-central-1/samples/latest/SampleApp_Linux.zip
    이스라엘(텔아비브) 리전 https://aws-codedeploy-il-central-1.s3.il-central-1.amazonaws.com/samples/latest/SampleApp_Linux.zip
    Asia Pacific (Hong Kong) Region https://aws-codedeploy-ap-east-1.s3.ap-east-1.amazonaws.com/samples/latest/SampleApp_Linux.zip
    Asia Pacific (Tokyo) Region http://s3-ap-northeast-1.amazonaws.com/aws-codedeploy-ap-northeast-1/samples/latest/SampleApp_Linux.zip
    아시아 태평양(서울) 리전 http://s3-ap-northeast-2.amazonaws.com/aws-codedeploy-ap-northeast-2/samples/latest/SampleApp_Linux.zip
    아시아 태평양(싱가포르) 리전 http://s3-ap-southeast-1.amazonaws.com/aws-codedeploy-ap-southeast-1/samples/latest/SampleApp_Linux.zip
    아시아 태평양(시드니) 리전 http://s3-ap-southeast-2.amazonaws.com/aws-codedeploy-ap-southeast-2/samples/latest/SampleApp_Linux.zip
    Asia Pacific (Melbourne) Region https://aws-codedeploy-ap-southeast-4.s3.ap-southeast-4.amazonaws.com/samples/latest/SampleApp_Linux.zip
    Asia Pacific (Mumbai) Region http://s3-ap-south-1.amazonaws.com/aws-codedeploy-ap-south-1/samples/latest/SampleApp_Linux.zip
    South America (São Paulo) Region http://s3-sa-east-1.amazonaws.com/aws-codedeploy-sa-east-1/samples/latest/SampleApp_Linux.zip

    Windows Server Amazon EC2 인스턴스의 경우

    지역 샘플 애플리케이션의 위치
    US East (Ohio) Region http://s3-us-east-2.amazonaws.com/aws-codedeploy-us-east-2/samples/latest/SampleApp_Windows.zip
    미국 동부(버지니아 북부) 리전 http://s3.amazonaws.com/aws-codedeploy-us-east-1/samples/latest/SampleApp_Windows.zip
    미국 서부(캘리포니아 북부) 리전 http://s3-us-west-1.amazonaws.com/aws-codedeploy-us-west-1/samples/latest/SampleApp_Windows.zip
    미국 서부(오레곤) 리전 http://s3-us-west-2.amazonaws.com/aws-codedeploy-us-west-2/samples/latest/SampleApp_Windows.zip
    캐나다(중부) 리전 http://s3-ca-central-1.amazonaws.com/aws-codedeploy-ca-central-1/samples/latest/SampleApp_Windows.zip
    Europe (Ireland) Region http://s3-eu-west-1.amazonaws.com/aws-codedeploy-eu-west-1/samples/latest/SampleApp_Windows.zip
    Europe (London) Region http://s3-eu-west-2.amazonaws.com/aws-codedeploy-eu-west-2/samples/latest/SampleApp_Windows.zip
    Europe (Paris) Region http://s3-eu-west-3.amazonaws.com/aws-codedeploy-eu-west-3/samples/latest/SampleApp_Windows.zip
    Europe (Frankfurt) Region http://s3-eu-central-1.amazonaws.com/aws-codedeploy-eu-central-1/samples/latest/SampleApp_Windows.zip
    이스라엘(텔아비브) 리전 https://aws-codedeploy-il-central-1.s3.il-central-1.amazonaws.com/samples/latest/SampleApp_Windows.zip
    Asia Pacific (Hong Kong) Region https://aws-codedeploy-ap-east-1.s3.ap-east-1.amazonaws.com/samples/latest/SampleApp_Windows.zip
    Asia Pacific (Seoul) Region http://s3-ap-northeast-2.amazonaws.com/aws-codedeploy-ap-northeast-2/samples/latest/SampleApp_Windows.zip
    아시아 태평양(싱가포르) 리전 http://s3-ap-southeast-1.amazonaws.com/aws-codedeploy-ap-southeast-1/samples/latest/SampleApp_Windows.zip
    아시아 태평양(시드니) 리전 http://s3-ap-southeast-2.amazonaws.com/aws-codedeploy-ap-southeast-2/samples/latest/SampleApp_Windows.zip
    Asia Pacific (Melbourne) Region https://aws-codedeploy-ap-southeast-4.s3.ap-southeast-4.amazonaws.com/samples/latest/SampleApp_Windows.zip
    Asia Pacific (Mumbai) Region http://s3-ap-south-1.amazonaws.com/aws-codedeploy-ap-south-1/samples/latest/SampleApp_Windows.zip
    South America (São Paulo) Region http://s3-sa-east-1.amazonaws.com/aws-codedeploy-sa-east-1/samples/latest/SampleApp_Windows.zip

    Ubuntu Server Amazon EC2 인스턴스의 경우

    Amazon S3에 저장된 사용자 지정 애플리케이션 수정의 위치를 입력합니다.

  20. 배포 설명은 비워 둡니다.

  21. 고급을 확장합니다.

  22. 배포 만들기를 선택합니다.

    참고

    성공(Succeeded) 대신 실패(Failed)가 나타난 경우 배포 모니터링 및 문제 해결(애플리케이션 이름 SimpleDemoApp, 배포 그룹 이름 SimpleDemoDG를 사용하여)에서 몇 가지 기술을 시도할 수 있습니다.