

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

# EventBridge 대상으로 사용되는 AWS Batch작업
<a name="batch-cwe-target"></a>

Amazon EventBridge는 거의 실시간으로 Amazon Web Services 리소스의 변경 사항을 제공합니다. 일반적으로 아Amazon Elastic Container Service, Amazon Elastic Kubernetes Service의 AWS Batch과 AWS Fargate 작업은 EventBridge 대상이 될 수 있습니다. 단순한 규칙을 사용하여 사용자는 이벤트를 매치하고 이에 대한 응답으로 AWS Batch 작업을 제출할 수 있습니다. 자세한 내용은 *Amazon EventBridge 사용 설명서*의 [EventBridge란?](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html)을 참조하세요.

또한 EventBridge로 **cron** 또는 rate 표현식을 사용하여 특정 시간에 간접 호출되는 자동화 작업을 예약할 수 있습니다. 자세한 내용은 *Amazon EventBridge 사용 설명서*의 [예약 운영 EventBridge 규칙 생성](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html)을 참조하세요.

이벤트가 이벤트 패턴과 일치하는 경우에 운영되는 규칙 생성에 대한 자세한 내용은 *Amazon EventBridge 사용 설명서* [이벤트 대응 Amazon EventBridge 규칙 생성하기](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule.html)를 참조하세요.

EventBridge 대상 AWS Batch 작업의 일반 사용 사례에는 다음과 같은 사용 사례가 포함됩니다.
+ 예약된 작업은 일정한 시간 간격으로 발생합니다. 예를 들어 Amazon EC2 스팟 인스턴스 비용이 더 저렴한 사용량이 적은 시간에만 **cron** 작업이 발생합니다.
+ AWS Batch 작업은 CloudTrail에 기록된 API 작업에 대응하여 실행됩니다. 예를 들어, 객체가 지정된 Amazon S3 버킷에 업로드될 때마다 작업이 제출됩니다. 이러한 상황이 발생할 때마다 EventBridge 입력 트랜스포머는 객체의 버킷과 키 이름을 AWS Batch 파라미터에 전달합니다.
**참고**  
이 시나리오에서 모든 관련 AWS 리소스는 동일한 리전에 있어야 합니다. 여기에는 Amazon S3 버킷, EventBridge 규칙, CloudTrail 로그와 같은 리소스가 포함됩니다.

EventBridge 규칙 및 대상과 함께 AWS Batch 작업을 제출하기 전에 EventBridge 서비스는 AWS Batch 작업을 실행할 수 있는 몇 가지 권한이 필요합니다. EventBridge 콘솔에서 AWS Batch 작업을 대상으로 지정하는 규칙을 생성할 때 사용자는 그 역할도 생성할 수 있습니다. 이 역할에 필요한 서비스 보안 주체 및 IAM 권한에 대한 자세한 내용은 [EventBridge IAM 역할](CWE_IAM_role.md) 섹션을 참조하세요.

**Topics**
+ [

# 자습서: 예약된 AWS Batch 작업 생성
](scheduled-batch-job.md)
+ [

# 자습서: 이벤트 패턴이 있는 규칙 생성
](event-pattern-batch-job.md)
+ [

# 자습서: EventBridge 입력 변환기를 사용하여 일정에 따라 AWS Batch 대상에 이벤트 정보 전달
](cwe-input-transformer.md)

# 자습서: 예약된 AWS Batch 작업 생성
<a name="scheduled-batch-job"></a>

다음은 예약된 AWS Batch 작업과 필요한 EventBridge IAM 역할을 생성하는 방법을 소개합니다.

**EventBridge를 사용하여 예약된 AWS Batch 작업을 생성하려면**
**참고**  
이 절차는 Amazon ECS, Amazon EKS 및 AWS Fargate의 모든 AWS Batch 작업에 적용됩니다.

1. Amazon EventBridge 콘솔([https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/))을 엽니다.

1. 탐색 모음에서 사용할 AWS 리전(을)를 선택합니다.

1. 탐색 창에서 **규칙**를 선택합니다.

1. **규칙 생성**을 선택합니다.

1. **이름**에 해당 컴퓨팅 환경의 고유한 이름을 지정합니다. 이름은 최대 64자를 포함할 수 있습니다. 대문자 및 소문자, 숫자, 하이픈(-) 및 밑줄(\$1)을 포함할 수 있습니다.
**참고**  
규칙은 동일한 지역과 동일한 이벤트 버스의 다른 규칙과 동일한 이름을 가질 수 없습니다.

1. (선택 사항) **설명**에서 규칙에 대한 설명을 입력합니다.

1. **이벤트 버스**에서 이 규칙과 연결할 이벤트 버스를 선택합니다. 이 규칙이 자신의 계정에서 발생하는 이벤트와 일치하도록 하려면 **기본**을 선택합니다 사용자 계정의 AWS 서비스가 이벤트를 내보내면 그 이벤트는 계정의 기본 이벤트 버스로 이동합니다.

1. (선택 사항) 규칙을 즉시 실행하지 않으려면 선택한 버스의 규칙을 해제하십시오.

1. **규칙 유형**에서 **스케줄**을 선택합니다.

1. **계속해서 규칙 생성하기** 또는 **다음**을 선택합니다.

1. **스케줄 패턴**에서 다음을 수행합니다.
   + **오전 8시와 같이 특정 시간에 실행되는 세분화된 일정을 선택합니다. 매월 첫째 월요일의 PST**와 cron 표현식을 입력합니다. 자세한 내용은 *Amazon EventBridge 사용 설명서*의 [Cron 표현식](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html#eb-cron-expressions)을 참조하세요.
   + **10분마다와 같이 일반 속도로 실행되는 일정**을 선택하고 rate 표현식을 입력합니다.

1. **다음**을 선택합니다.

1. **대상 유형**에서 **AWS 서비스**를 선택합니다.

1. **대상 선택에서** **배치 작업 대기열**을 선택합니다. 이후 다음 항목을 구성합니다.
   + **Job queue**(작업 대기열): 작업을 예약할 작업 대기열의 Amazon 리소스 이름(ARN)을 입력합니다.
   + **Job definition(작업 정의):** 작업에 사용할 작업 정의의 이름과 개정 또는 전체 ARN을 입력합니다.
   + **Job name(작업 이름):** 작업의 이름을 입력합니다.
   + **Array size(배열 크기):** (선택 사항) 두 개 이상의 복사본을 실행할 수 있도록 작업의 배열 크기를 입력합니다. 자세한 내용은 [배열 작업](array_jobs.md) 섹션을 참조하세요.
   + **Job attempts(작업 시도):** (선택 사항) 작업이 실패할 경우 작업을 다시 시도할 최대 횟수를 입력합니다. 자세한 내용은 [작업 자동 재시도](job_retries.md) 섹션을 참조하세요.

1. **Batch job queue**(배치 작업 대기열) 대상 유형에 대해 EventBridge에서는 대상에 이벤트를 보낼 권한이 필요합니다. EventBridge는 규칙 실행에 필요한 IAM 역할을 생성할 수 있습니다. 다음 중 하나를 수행하세요.
   + IAM 역할을 자동으로 생성하려면 **이 특정 리소스에 대해 새 역할 생성**을 선택합니다.
   + 이미 생성한 IAM 역할을 사용하려면 **기존 역할 사용**을 선택합니다.

1. (선택 사항) **추가 설정**(Additional settings)을 확장합니다.

   1. **대상 입력 구성**의 경우 이벤트의 텍스트가 대상으로 전달되기 전에 처리되는 방식을 선택합니다.

   1. **최대 이벤트 수명**에서 처리되지 않은 이벤트가 보관되는 시간 간격을 지정합니다.

   1. **재시도 횟수**에는 이벤트 재시도 횟수를 입력합니다.

   1. **DLQ(Dead Letter Queue)**에서 처리되지 않은 이벤트 처리 방법에 대한 옵션을 선택합니다. 필요한 경우 DLQ(Dead Letter Queue) 대기열로 사용할 Amazon SQS 대기열을 지정합니다.

1. (선택 사항) 이 규칙에 다른 대상을 추가하려면 **다른 대상 추가**를 선택합니다.

1. **다음**을 선택합니다.

1. (선택 사항) **태그**에서 **새 태그 추가**를 선택하여 규칙의 리소스 레이블을 추가합니다. 자세한 내용은 [Amazon EventBridge 태그](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-tagging.html)를 참조하세요.

1. **다음**을 선택합니다.

1. **검토 및 생성**에서 구성 단계를 검토하십시오. 변경해야 하는 경우 **편집**을 선택합니다 작업을 마쳤으면 **규칙 생성**을 선택합니다.

이벤트 규칙을 생성하는 방법에 대한 자세한 내용은 *Amazon EventBridge 사용 설명서*의 [예약 운영 EventBridge 규칙 생성](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html)을 참조하세요.

# 자습서: 이벤트 패턴이 있는 규칙 생성
<a name="event-pattern-batch-job"></a>

다음 절차는 이벤트 패턴이 있는 규칙을 생성하는 방법입니다.

**이벤트가 정의된 패턴과 일치할 때 이벤트를 대상으로 보내는 규칙을 생성하려면**
**참고**  
이 절차는 Amazon ECS, Amazon EKS 및 AWS Fargate의 모든 AWS Batch 작업에 적용됩니다.

1. Amazon EventBridge 콘솔([https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/))을 엽니다.

1. 탐색 모음에서 사용할 AWS 리전(을)를 선택합니다.

1. 탐색 창에서 **규칙**를 선택합니다.

1. **규칙 생성**을 선택합니다.

1. **이름**에 해당 컴퓨팅 환경의 고유한 이름을 지정합니다. 이름은 최대 64자를 포함할 수 있습니다. 대문자 및 소문자, 숫자, 하이픈(-) 및 밑줄(\$1)을 포함할 수 있습니다.
**참고**  
규칙은 동일한 지역과 동일한 이벤트 버스의 다른 규칙과 동일한 이름을 가질 수 없습니다.

1. (선택 사항) **설명**에서 규칙에 대한 설명을 입력합니다.

1. **이벤트 버스**에서 이 규칙과 연결할 이벤트 버스를 선택합니다. 이 규칙이 자신의 계정에서 발생하는 이벤트와 일치하도록 하려면 **기본**을 선택합니다 사용자 계정의 AWS 서비스가 이벤트를 내보내면 그 이벤트는 계정의 기본 이벤트 버스로 이동합니다.

1. (선택 사항) 규칙을 즉시 실행하지 않으려면 선택한 버스의 규칙을 해제하십시오.

1. **규칙 유형(Rule type)**에서 **이벤트 패턴이 있는 규칙(Rule with an event pattern)**을 생성합니다.

1. [**Next**]를 선택합니다.

1. **이벤트 소스**의 경우, **AWS 이벤트 또는 EventBridge 파트너 이벤트**를 선택합니다.

1. (선택 사항) **샘플 이벤트**의 경우:

   1. **샘플 이벤트 유형**에서 **AWS 이벤트**를 선택합니다.

   1. **샘플 이벤트**에서 **배치 작업 상태 변경**을 선택합니다.

1. **생성 방법**에서 **패턴 양식 사용**을 선택합니다.

1. **이벤트 패턴**의 경우:

   1. **이벤트 소스**에서 **AWS 서비스**를 선택합니다.

   1. **AWS 서비스**에서 **배치**를 선택합니다.

   1. **이벤트 유형**에서 **배치 잡 상태 변경**을 선택합니다.

1. **다음**을 선택합니다.

1. **대상 유형**에서 **AWS 서비스**를 선택합니다.

1. **대상 유형 선택**에서 대상 유형을 선택합니다. 예를 들어, **배치 작업 대기열**을 선택합니다. 다음 사항을 지정합니다.
   + **Job queue**(작업 대기열): 작업을 예약할 작업 대기열의 Amazon 리소스 이름(ARN)을 입력합니다.
   + **Job definition(작업 정의):** 작업에 사용할 작업 정의의 이름과 개정 또는 전체 ARN을 입력합니다.
   + **Job name(작업 이름):** 작업의 이름을 입력합니다.
   + **Array size(배열 크기):** (선택 사항) 두 개 이상의 복사본을 실행할 수 있도록 작업의 배열 크기를 입력합니다. 자세한 내용은 [배열 작업](array_jobs.md) 섹션을 참조하세요.
   + **Job attempts(작업 시도):** (선택 사항) 작업이 실패할 경우 작업을 다시 시도할 최대 횟수를 입력합니다. 자세한 내용은 [작업 자동 재시도](job_retries.md) 섹션을 참조하세요.

1. **Batch job queue**(배치 작업 대기열) 대상 유형에 대해 EventBridge에서는 대상에 이벤트를 보낼 권한이 필요합니다. EventBridge는 규칙 실행에 필요한 IAM 역할을 생성할 수 있습니다. 다음 중 하나를 수행하세요.
   + IAM 역할을 자동으로 생성하려면 **이 특정 리소스에 대해 새 역할 생성**을 선택합니다.
   + 이전에 생성한 IAM 역할을 사용하려면 **기존 역할 사용**을 선택합니다.

1. (선택 사항) **추가 설정**(Additional settings)을 확장합니다.

   1. **대상 입력 구성**에서 이벤트의 텍스트 처리 방법을 선택합니다.

   1. **최대 이벤트 수명**에서 처리되지 않은 이벤트가 보관되는 시간 간격을 지정합니다.

   1. **재시도 횟수**에는 이벤트 재시도 횟수를 입력합니다.

   1. **DLQ(Dead Letter Queue)**에서 처리되지 않은 이벤트 처리 방법에 대한 옵션을 선택합니다. 필요한 경우 DLQ(Dead Letter Queue) 대기열로 사용할 Amazon SQS 대기열을 지정합니다.

1. (선택 사항) 다른 대상을 추가하려면 **다른 대상 추가**를 선택합니다.

1. **다음**을 선택합니다.

1. (선택 사항) **태그**에서 **새 태그 추가**를 선택하여 리소스 레이블을 추가합니다. 자세한 내용은 *Amazon EventBridge 사용 설명서*의 [Amazon EventBridge 태그](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-tagging.html)를 참조하세요.

1. **다음**을 선택합니다.

1. **검토 및 생성**에서 구성 단계를 검토하십시오. 변경해야 하는 경우 **편집**을 선택합니다 작업을 마친 다음 **규칙 생성**을 선택합니다.

   규칙 생성에 관한 자세한 내용은 *Amazon EventBridge 사용 설명서*의 [이벤트 대응 Amazon EventBridge 규칙 생성](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html)을 참조하세요.

# 자습서: EventBridge 입력 변환기를 사용하여 일정에 따라 AWS Batch 대상에 이벤트 정보 전달
<a name="cwe-input-transformer"></a>

EventBridge 입력 변환기를 사용하여 작업 제출 AWS Batch 시에 이벤트 정보를 전달할 수 있습니다. 이는 다른 AWS 이벤트 정보의 결과로 작업을 호출하는 경우 특히 유용할 수 있습니다. Amazon S3 버킷에 객체를 업로드하는 경우를 예로 들 수 있습니다. 컨테이너 명령에 파라미터 대체 값이 포함된 작업 정의를 사용할 수도 있습니다. EventBridge 입력 변환기는 이벤트 데이터를 기반으로 파라미터 값을 제공할 수 있습니다.

그런 다음 AWS Batch 이벤트에서 정보를 구문 분석하여 `parameters` 객체로 변환하는 이벤트 대상을 생성합니다. 작업이 실행될 때 트리거 이벤트의 파라미터는 작업 컨테이너의 명령으로 전달됩니다.

**참고**  
이 시나리오에서는 모든 AWS 리소스(예: Amazon S3 버킷, EventBridge 규칙 및 CloudTrail 로그)가 동일한 리전에 있어야 합니다.

**입력 변환기를 사용하는 AWS Batch 대상을 생성하려면**

1. Amazon EventBridge 콘솔([https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/))을 엽니다.

1. 탐색 모음에서 사용할 AWS 리전 를 선택합니다.

1. 탐색 창에서 **규칙**을 선택합니다.

1. **규칙 생성**을 선택합니다.

1. **이름**에 해당 컴퓨팅 환경의 고유한 이름을 지정합니다. 이름은 최대 64자를 포함할 수 있습니다. 대문자 및 소문자, 숫자, 하이픈(-) 및 밑줄(\$1)을 포함할 수 있습니다.
**참고**  
규칙은 동일한 및 동일한 이벤트 버스의 다른 규칙 AWS 리전 과 동일한 이름을 가질 수 없습니다.

1. (선택 사항) **설명**에서 규칙에 대한 설명을 입력합니다.

1. **이벤트 버스**에서 이 규칙과 연결할 이벤트 버스를 선택합니다. 이 규칙이 자신의 계정에서 발생하는 이벤트와 일치하도록 하려면 **기본**을 선택합니다. 계정 AWS 서비스 의가 이벤트를 내보내면 항상 계정의 기본 이벤트 버스로 이동합니다.

1. (선택 사항) 규칙을 즉시 실행하지 않으려면 선택한 버스의 규칙을 해제하십시오.

1. **규칙 유형**에서 **스케줄**을 선택합니다.

1. **계속해서 규칙 생성하기** 또는 **다음**을 선택합니다.

1. **스케줄 패턴**에서 다음을 수행합니다.
   + **오전 8시와 같이 특정 시간에 실행되는 세분화된 일정을 선택합니다. 매월 첫째 월요일의 PST**와 cron 표현식을 입력합니다. 자세한 내용은 *Amazon EventBridge 사용 설명서*의 [Cron 표현식](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html#eb-cron-expressions)을 참조하세요.
   + **10분마다와 같이 일반 속도로 실행되는 일정**을 선택하고 rate 표현식을 입력합니다.

1. **다음**을 선택합니다.

1. **대상 유형**에서 **AWS 서비스**를 선택합니다.

1. **대상 선택에서** **배치 작업 대기열**을 선택합니다. 이후 다음 항목을 구성합니다.
   + **Job queue**(작업 대기열): 작업을 예약할 작업 대기열의 Amazon 리소스 이름(ARN)을 입력합니다.
   + **Job definition(작업 정의):** 작업에 사용할 작업 정의의 이름과 개정 또는 전체 ARN을 입력합니다.
   + **Job name(작업 이름):** 작업의 이름을 입력합니다.
   + **Array size(배열 크기):** (선택 사항) 두 개 이상의 복사본을 실행할 수 있도록 작업의 배열 크기를 입력합니다. 자세한 내용은 [배열 작업](array_jobs.md) 단원을 참조하십시오.
   + **Job attempts(작업 시도):** (선택 사항) 작업이 실패할 경우 작업을 다시 시도할 최대 횟수를 입력합니다. 자세한 내용은 [작업 자동 재시도](job_retries.md) 단원을 참조하십시오.

1. **Batch job queue**(배치 작업 대기열) 대상 유형에 대해 EventBridge에서는 대상에 이벤트를 보낼 권한이 필요합니다. EventBridge는 규칙 실행에 필요한 IAM 역할을 생성할 수 있습니다. 다음 중 하나를 수행하세요.
   + IAM 역할을 자동으로 생성하려면 **이 특정 리소스에 대해 새 역할 생성**을 선택합니다.
   + 이미 생성한 IAM 역할을 사용하려면 **기존 역할 사용**을 선택합니다.

1. (선택 사항) **추가 설정**(Additional settings)을 확장합니다.

1. **Additional settings**(추가 설정) 섹션의 **Configure target input**(대상 입력 구성)에서 **Input Transformer**(입력 변환기)를 선택합니다.

1. **Configure input transformer**(입력 구성 변환기)를 선택합니다.

1. (선택 사항) **샘플 이벤트**의 경우:

   1. **샘플 이벤트 유형**에서 **AWS 이벤트**를 선택합니다.

   1. **샘플 이벤트**에서 **배치 작업 상태 변경**을 선택합니다.

1. **대상 입력 변환기** 섹션의 **입력 경로**에서 트리거 이벤트의 구문 분석 값을 지정합니다. 예를 들어, **배치 작업 상태 변경** 이벤트를 파싱하려면 다음의 JSON 형식을 사용합니다.

   ```
   {
       "instance": "$.detail.jobId",
       "state": "$.detail.status"
   }
   ```

1. **템플릿**에는 다음 사항을 입력합니다.

   ```
   {
       "instance": <jobId> ,
       "status": <status>
   }
   ```

1. **확인**을 선택합니다.

1. **최대 이벤트 수명**에서 처리되지 않은 이벤트가 보관되는 시간 간격을 지정합니다.

1. **재시도 횟수**에는 이벤트 재시도 횟수를 입력합니다.

1. **DLQ(Dead Letter Queue)**에서 처리되지 않은 이벤트 처리 방법에 대한 옵션을 선택합니다. 필요한 경우 DLQ(Dead Letter Queue) 대기열로 사용할 Amazon SQS 대기열을 지정합니다.

1. (선택 사항) 다른 대상을 추가하려면 **다른 대상 추가**를 선택합니다.

1. **다음**을 선택합니다.

1. (선택 사항) **태그**에서 **새 태그 추가**를 선택하여 리소스 레이블을 추가합니다. 자세한 내용은 *Amazon EventBridge 사용 설명서*의 [Amazon EventBridge 태그](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-tagging.html)를 참조하세요.

1. **다음**을 선택합니다.

1. **검토 및 생성**에서 구성 단계를 검토하십시오. 변경해야 하는 경우 **편집**을 선택합니다 작업을 마친 다음 **규칙 생성**을 선택합니다.