Amazon CloudWatch Events를 사용하여 배포 모니터링 - AWS CodeDeploy

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

Amazon CloudWatch Events를 사용하여 배포 모니터링

Amazon CloudWatch Events를 사용하여 CodeDeploy 작업에서 인스턴스 또는 배포의 상태 변화("이벤트")를 감지하고 그에 대응할 수 있습니다. 그런 다음 CloudWatch Events는 사용자가 만든 규칙에 따라 배포 또는 인스턴스가 규칙에서 지정된 상태로 전환되면 하나 이상의 대상 작업을 호출합니다. 상태 변경 유형에 따라 알림을 보내거나, 상태 정보를 캡처하거나, 교정 작업을 수행하거나, 이벤트를 시작하거나, 기타 작업을 수행할 수 있습니다. CloudWatch Events를 CodeDeploy 작업의 일부로 사용하는 경우 다음과 같은 대상 유형을 선택할 수 있습니다.

  • AWS Lambda 함수

  • Kinesis 스트림

  • Amazon SQS 대기열

  • 기본 제공 대상(EC2 CreateSnapshot API call, EC2 RebootInstances API call, EC2 StopInstances API call, EC2 TerminateInstances API call)

  • Amazon SNS 주제

다음은 몇 가지 사용 사례입니다.

  • 배포에 실패할 때마다 Lambda 함수를 사용하여 Slack 채널에 알림을 전달합니다.

  • 배포 또는 인스턴스에 대한 데이터를 Kinesis 스트림으로 푸시하여 포괄적인 실시간 상태 모니터링을 지원합니다.

  • CloudWatch 경보 작업을 사용하여 지정한 배포 또는 인스턴스 이벤트가 발생할 경우 Amazon EC2 인스턴스를 자동으로 중지, 종료, 재부팅 또는 복구할 수 있습니다.

이 주제의 나머지 부분에서는 CodeDeploy에 대한 CloudWatch Events 규칙을 만드는 기본 절차를 설명합니다. CodeDeploy 작업에 사용할 이벤트 규칙을 만들기 전에 다음을 수행해야 합니다.

CodeDeploy에 대한 CloudWatch Events 규칙을 생성하려면
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창에서 이벤트(Events)를 선택하세요.

  3. 규칙 생성(Create rule)을 선택한 다음 이벤트 선택기(Event selector)에서 AWS CodeDeploy를 선택합니다.

  4. 세부 정보를 지정합니다.

    • 인스턴스 및 배포의 모든 상태 변경에 적용되는 규칙을 만들려면 모든 세부 정보 유형(Any detail type)을 선택한 다음 6단계로 건너뜁니다.

    • 인스턴스에만 적용되는 규칙을 만들려면 특정 상세 유형(Specific detail type)을 선택한 다음 CodeDeploy 인스턴스 상태 변경 알림(CodeDeploy Instance State-change Notification)을 선택합니다.

    • 배포에만 적용되는 규칙을 만들려면 특정 상세 유형(Specific detail type)을 선택한 다음 CodeDeploy 배포 상태 변경 알림(CodeDeploy Deployment State-change Notification)을 선택합니다.

  5. 규칙을 적용할 상태 변경을 지정합니다.

    • 모든 상태 변경에 적용되는 규칙을 만들려면 모든 상태(Any state)를 선택합니다.

    • 일부 상태 변경에만 적용되는 규칙을 만들려면 특정 상태(Specific state(s))를 선택한 다음 목록에서 상태 값을 한 개 이상 선택합니다. 다음 표에서는 선택할 수 있는 상태 값을 나열합니다.

      배포 상태 값 인스턴스 상태 값

      실패

      시작

      중지(STOP)

      대기됨

      준비

      성공

      실패

      시작

      준비

      성공

  6. 규칙을 적용할 CodeDeploy 애플리케이션을 지정합니다.

    • 모든 애플리케이션에 적용되는 규칙을 만들려면 모든 애플리케이션(Any application)을 선택한 다음 8단계로 건너뜁니다.

    • 하나의 애플리케이션에만 적용되는 규칙을 만들려면 특정 애플리케이션(Specific application)을 선택한 다음 목록에서 애플리케이션의 이름을 선택합니다.

  7. 규칙을 적용할 배포 그룹을 지정합니다.

    • 선택한 애플리케이션과 연결된 모든 배포 그룹에 적용되는 규칙을 만들려면 모든 배포 그룹(Any deployment group)을 선택합니다.

    • 선택한 애플리케이션과 연결된 배포 그룹 중 하나에만 적용되는 규칙을 만들려면 특정 배포 그룹(Specific deployment group(s))을 선택한 후 목록에서 배포 그룹의 이름을 선택합니다.

  8. 이벤트 모니터링 요구 사항을 충족하도록 규칙 설정을 검토하세요.

  9. 대상(Targets) 영역에서 대상 추가(Add target)*를 선택하세요.

  10. [Select target type] 목록에서 이 규칙을 사용하도록 설정한 대상 유형을 선택한 후, 해당 유형에 필요한 모든 추가 옵션을 구성합니다.

  11. 세부 정보 구성(Configure details)을 선택합니다.

  12. 규칙 세부 정보 구성(Configure rule details) 페이지에서 해당 규칙의 이름과 설명을 입력한 후 상태(State) 상자를 선택하여 규칙을 바로 활성화합니다.

  13. 규칙이 만족스러우면 규칙 생성(Create rule)을 선택하세요.