Amazon EventBridge Scheduler를 사용하여 Amazon ECS 태스크 예약
EventBridge Scheduler는 하나의 중앙 관리형 서비스에서 작업을 생성, 실행 및 관리할 수 있는 서버리스 스케줄러입니다. 이벤트 버스 및 규칙과 관계없이 일회성 및 반복 예약 기능을 제공합니다. EventBridge 스케줄러는 고도로 사용자 지정이 가능하며, 광범위한 대상 API 작업 및 AWS 서비스를 통해 EventBridge 예약 규칙보다 향상된 확장성을 제공합니다. EventBridge 스케줄러는 EventBridge 스케줄러 콘솔에서 작업에 맞게 구성할 수 있는 다음과 같은 일정을 제공합니다.
-
비율 기반
-
Cron 기반
모든 시간대에서 cron 기반 일정을 구성할 수 있습니다.
-
일회성 일정
모든 시간대에서 일회성 일정을 구성할 수 있습니다.
Amazon EventBridge Scheduler를 사용하여 Amazon ECS를 예약할 수 있습니다.
Amazon ECS 콘솔에서 예약된 작업을 생성할 수 있지만 현재 EventBridge 스케줄러 콘솔은 더 많은 기능을 제공합니다.
작업을 예약하려면 먼저 다음 단계를 완료해야 합니다.
-
VPC 콘솔을 사용하여 작업이 실행되는 서브넷 ID와 서브넷의 보안 그룹 ID를 가져옵니다. 자세한 내용은 Amazon VPC 사용 설명서의 서브넷 보기 및 보안 그룹 보기를 참조하세요.
-
EventBridge 스케줄러 실행 역할을 구성합니다. 자세한 내용은 Amazon EventBridge Scheduler 사용 설명서의 Set up the execution role을 참조하세요.
콘솔을 사용하여 새 일정을 생성하는 방법
https://console.aws.amazon.com/scheduler/home
에서 Amazon EventBridge Scheduler 콘솔을 엽니다. -
일정 페이지에서 일정 생성을 선택합니다.
-
일정 세부 정보 지정 페이지의 일정 이름 및 설명 섹션에서 다음을 수행합니다.
-
일정 이름에 일정의 이름을 입력합니다. 예:
MyTestSchedule
. -
(선택 사항) 설명에 일정에 대한 설명을 입력합니다. 예:
TestSchedule
. -
일정 그룹에서 일정 그룹을 선택합니다. 그룹이 없는 경우 기본값을 선택합니다. 일정 그룹을 생성하려면 자체 일정 생성을 선택합니다.
일정 그룹을 사용하여 일정 그룹에 태그를 추가합니다.
-
-
일정 옵션을 선택합니다.
발생 수행할 작업 일회성 일정
일회성 일정은 사용자가 지정하는 날짜와 시간에 한 번만 대상을 간접적으로 호출합니다.
날짜 및 시간에 대해 다음을 수행합니다.
-
YYYY/MM/DD
형식으로 유효한 날짜를 입력합니다. -
24시간
hh:mm
형식으로 타임스탬프를 입력합니다. -
시간대에서 시간대를 선택하세요.
반복되는 일정
반복 일정은 cron 표현식 또는 rate 표현식을 사용하여 지정한 속도로 대상을 간접적으로 호출합니다.
-
일정 유형에서 다음 중 하나를 수행합니다.
-
cron 표현식을 사용하여 일정을 정의하려면 Cron 기반 일정을 선택하고 cron 표현식을 입력합니다.
-
rate 표현식을 사용하여 일정을 정의하려면 Rate 기반 일정을 선택하고 rate 표현식을 입력합니다.
cron 및 rate 표현식에 대한 자세한 내용은 Amazon EventBridge Scheduler 사용 설명서의 EventBridge 스케줄러의 스케줄 유형을 참조하세요.
-
-
유연한 기간에서 끄기를 선택하여 옵션을 끄거나 미리 정의된 기간 중 하나를 선택합니다. 예를 들어, 15분을 선택하고 1시간에 한 번씩 대상을 간접적으로 호출하도록 반복 일정을 설정하면 일정은 매시간 시작 후 15분 이내에 실행됩니다.
-
-
(선택 사항) 이전 단계에서 반복 일정을 선택한 경우 기간 섹션에서 다음을 수행합니다.
-
시간대에서 시간대를 선택합니다.
-
시작 날짜 및 시간에
YYYY/MM/DD
형식으로 유효한 날짜를 입력한 다음 24시간hh:mm
형식으로 타임스탬프를 지정합니다. -
종료 날짜 및 시간에
YYYY/MM/DD
형식으로 유효한 날짜를 입력한 다음 24시간hh:mm
형식으로 타임스탬프를 지정합니다.
-
-
Next(다음)를 선택합니다.
-
대상 선택 페이지에서 다음을 수행합니다.
-
모든 API를 선택한 다음 검색 상자에 ECS를 입력합니다.
-
Amazon ECS를 선택합니다.
-
검색 상자에 RunTask를 입력한 다음 RunTask를 선택합니다.
-
ECS 클러스터에서 클러스터를 선택합니다.
-
ECS 작업에서 작업에 사용할 작업 정의를 선택합니다.
-
시작 유형을 사용하려면 컴퓨팅 옵션을 확장한 다음 시작 유형을 선택합니다. 그런 다음 시작 유형을 선택합니다.
Fargate 시작 유형이 지정되면 플랫폼 버전에서 사용할 플랫폼 버전을 입력합니다. 지정된 플랫폼이 없는 경우
LATEST
플랫폼 버전이 사용됩니다. -
서브넷에 작업을 실행할 서브넷 ID를 입력합니다.
-
보안 그룹에 서브넷의 보안 그룹 ID를 입력합니다.
-
(선택 사항) 기본값이 아닌 작업 배치 전략을 사용하려면 배치 제약을 확장한 다음 제약을 입력합니다.
자세한 내용은 Amazon ECS가 컨테이너 인스턴스에 작업을 배치하는 방법 단원을 참조하십시오.
-
(선택 사항) 작업을 식별하려면 태그에서 태그를 구성합니다.
Amazon ECS가 새로 시작되는 모든 작업에 작업 정의 태그를 자동으로 지정하도록 하려면 Amazon ECS 관리형 태그 활성화를 선택합니다.
-
-
Next(다음)를 선택합니다.
-
설정 페이지에서 다음 작업을 수행합니다.
-
일정을 켜려면 일정 상태에서 일정 활성화를 토글합니다.
-
일정에 대한 재시도 정책을 구성하려면 재시도 정책 및 데드-레터 큐(DLQ)에서 다음을 수행합니다.
-
재시도를 토글합니다.
-
이벤트의 최대 보존 시간에 EventBridge 스케줄러가 처리되지 않은 이벤트를 유지해야 하는 최대 시간과 분을 입력합니다.
-
최대 시간은 24시간입니다.
-
최대 재시도 횟수에는 대상이 오류를 반환할 경우 EventBridge 스케줄러가 일정을 재시도하는 최대 횟수를 입력합니다.
최댓값은 185회입니다.
재시도 정책을 사용하면 일정이 대상을 간접적으로 호출하지 못할 경우 EventBridge 스케줄러가 일정을 다시 실행합니다. 구성된 경우 일정에 대한 최대 보존 기간과 재시도 횟수를 설정해야 합니다.
-
-
EventBridge 스케줄러가 전송되지 않은 이벤트를 저장하는 위치를 선택합니다.
DLQ(Dead Letter Queue) 옵션 수행할 작업 저장 안 함 None을 선택합니다. 일정을 생성하는 위치와 같은 AWS 계정에 이벤트 저장 -
내 AWS 계정의 Amazon SQS 대기열을 DLQ로 선택을 선택합니다.
-
Amazon SQS 대기열의 Amazon 리소스 이름(ARN)을 선택합니다.
일정을 생성하는 위치와 다른 AWS 계정에 이벤트 저장 -
다른 AWS 계정의 Amazon SQS 대기열을 DLQ로 지정을 선택합니다.
-
Amazon SQS 대기열의 Amazon 리소스 이름(ARN)을 입력합니다.
-
-
고객 관리형 키를 사용하여 대상 입력을 암호화하려면 암호화에서 암호화 설정 사용자 지정(고급)을 선택합니다.
이 옵션을 선택하는 경우 기존 KMS 키 ARN을 입력하거나 AWS KMS key 생성을 선택하여 AWS KMS 콘솔로 이동합니다. EventBridge 스케줄러가 저장 데이터를 암호화하는 방법에 대한 자세한 내용은 Amazon EventBridge Scheduler 사용 설명서의 Encryption at rest를 참조하세요.
-
권한에서 기존 역할 사용을 선택한 다음 역할을 선택합니다.
EventBridge 스케줄러가 새 실행 역할을 생성하도록 하려면 이 일정에 대한 새 역할 생성을 선택합니다. 그런 다음 역할 이름을 입력합니다. 이 옵션을 선택하면 EventBridge 스케줄러가 템플릿 대상에 필요한 필수 권한을 역할에 연결합니다.
-
-
Next(다음)를 선택합니다.
-
일정 검토 및 생성 페이지에서 일정의 세부 정보를 검토합니다. 각 섹션에서 편집을 선택하여 해당 단계로 돌아가서 세부 정보를 편집합니다.
-
일정 생성을 선택합니다.
일정 페이지에서 새 일정과 기존 일정 목록을 볼 수 있습니다. 상태 열에서 새 일정이 활성화됨 상태인지 확인합니다.
다음 단계
EventBridge 스케줄러 콘솔 또는 AWS CLI를 사용하여 일정을 관리할 수 있습니다. 자세한 내용은 Amazon EventBridge Scheduler 사용 설명서의 Managing a schedule을 참조하세요.