기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Step Functions의 이벤트에 대한 응답으로 스테이트 머신 시작
다음을 실행할 수 있습니다. AWS Step Functions Amazon EventBridge 규칙에 대한 응답의 상태 시스템
이 자습서에서는 상태 머신을 Amazon EventBridge 규칙의 대상으로 구성하는 방법을 보여줍니다. 이 규칙은 파일이 Amazon Simple Storage Service(S3) 버킷에 추가될 때 상태 시스템 실행을 시작합니다.
실용적 애플리케이션의 경우 섬네일 만들기나 이미지 및 비디오 파일에서 Amazon Rekognition 분석 실행과 같이 버킷에 추가하는 파일에서 작업을 수행하는 상태 시스템을 시작할 수 있습니다.
이 자습서에서는 파일을 Amazon S3 버킷에 업로드하여 Helloworld
상태 시스템 실행을 시작합니다. 그런 다음 해당 실행의 예제 입력을 검토하여 전달된 Amazon S3 이벤트 알림의 입력에 포함된 정보를 EventBridge 식별합니다.
사전 조건: 상태 시스템 생성
상태 머신을 Amazon EventBridge 대상으로 구성하려면 먼저 상태 머신을 생성해야 합니다.
-
기본 상태 시스템을 만들려면 Lambda 함수를 사용하는 상태 시스템 생성 자습서를 사용합니다.
-
Helloworld
상태 시스템이 이미 있으면 다음 단계로 진행합니다.
1단계: Amazon S3에 버킷 만들기
Helloworld
상태 시스템이 있으므로 이제 파일을 저장하는 Amazon S3 버킷을 만들어야 합니다. 이 자습서의 3단계에서는 파일이 이 버킷에 업로드될 때 상태 머신의 실행을 EventBridge 트리거하도록 규칙을 설정합니다.
-
Amazon S3 콘솔
로 이동한 다음 버킷 생성을 선택하여 파일을 저장하고 Amazon S3 이벤트 규칙을 트리거할 버킷을 만듭니다. -
버킷 이름을 입력합니다(예:
).username
-sfn-tutorial참고
버킷 이름은 모든 기존 버킷 이름 전체에서 고유해야 합니다. AWS 아마존 S3의 지역. 자체 제품을 사용하세요.
username
이 이름을 독특하게 만들려면 모든 리소스를 동일하게 생성해야 합니다. AWS 리전. -
페이지에 있는 모든 기본 선택 항목을 그대로 두고 버킷 생성을 선택합니다.
2단계: 다음을 사용하여 Amazon S3 이벤트 알림 활성화 EventBridge
Amazon S3 버킷을 생성한 후 S3 버킷에서 파일 업로드와 같은 특정 이벤트가 발생할 EventBridge 때마다 이벤트를 전송하도록 구성합니다.
-
Amazon S3 콘솔
로 이동합니다. -
버킷(Buckets) 목록에서 이벤트를 사용 설정하려는 버킷의 이름을 선택합니다.
-
[속성(Properties)]을 선택합니다.
-
페이지를 아래로 스크롤하여 이벤트 알림 섹션을 확인한 다음 Amazon EventBridge 하위 섹션에서 편집을 선택합니다.
-
이 버킷의 모든 이벤트에 EventBridge 대해 Amazon으로 알림 보내기에서 On을 선택합니다.
-
Save changes(변경 사항 저장)를 선택합니다.
참고
EventBridge활성화한 후 변경 사항이 적용되는 데 약 5분이 소요됩니다.
3단계: 아마존 EventBridge 규칙 생성
상태 머신이 있고 Amazon S3 버킷을 생성하고 이벤트 알림을 보내도록 구성한 후 EventBridge 규칙을 생성합니다. EventBridge
참고
동일한 EventBridge 규칙에 규칙을 구성해야 합니다. AWS 리전은 Amazon S3 버킷입니다.
규칙을 만들려면
-
Amazon EventBridge 콘솔로
이동하여 규칙 생성을 선택합니다. 작은 정보
또는 EventBridge 콘솔의 탐색 창에서 [버스] 에서 [규칙] 을 선택한 다음 [규칙 생성] 을 선택합니다.
-
규칙의 이름(예:
)을 입력하고 선택적으로 규칙에 대한 설명을 입력합니다.S3Step Functions
-
이벤트 버스 및 규칙 유형에서는 기본 선택을 유지합니다.
-
Next(다음)를 선택합니다. 그러면 이벤트 패턴 작성 페이지가 열립니다.
-
이벤트 패턴 섹션까지 아래로 스크롤하고 다음을 수행합니다.
-
이벤트 소스의 경우 기본 선택 항목을 그대로 유지합니다. AWS 이벤트 또는 EventBridge 파트너 이벤트.
-
의 경우AWS 서비스에서 심플 스토리지 서비스 (S3) 를 선택합니다.
-
이벤트 유형에 Amazon S3 이벤트 알림을 선택합니다.
-
특정 이벤트를 선택한 다음 생성된 객체를 선택합니다.
-
이름 기준 특정 버킷을 선택하고 1단계에서 만든 버킷 이름(
)을 입력합니다.username
-sfn-tutorial -
Next(다음)를 선택합니다. 그러면 대상 선택 페이지가 열립니다.
-
대상을 생성하려면
-
Target 1에서는 기본 선택 항목을 그대로 유지합니다. AWS 서비스.
-
대상 선택 드롭다운 목록에서 Step Functions 상태 시스템을 선택합니다.
-
상태 시스템 목록에서 이전에 만든 상태 시스템(예:
Helloworld
)을 선택합니다. -
페이지에 있는 모든 기본 선택 항목을 그대로 두고 다음을 선택합니다. 그러면 태그 구성 페이지가 열립니다.
-
다음을 다시 선택합니다. 그러면 검토 및 생성 페이지가 열립니다.
-
규칙의 세부 정보를 검토하고 규칙 생성을 선택합니다.
규칙이 생성되고 모든 Amazon 규칙을 나열하는 EventBridge 규칙 페이지가 표시됩니다.
4단계: 규칙 테스트
모두 구현되었으므로 Amazon S3 버킷에 파일 추가를 테스트한 다음 그에 따른 상태 시스템 실행의 입력을 살펴봅니다.
-
파일을 Amazon S3에서 버킷에 추가합니다.
Amazon S3 콘솔
로 이동하고 파일을 저장할 생성된 버킷을 선택한 다음(
) 업로드를 선택합니다.username
-sfn-tutorial -
파일(예:
)을 추가한 다음 업로드를 선택합니다.test.png
그러면 상태 머신이 실행되고 다음 정보가 전달됩니다. AWS CloudTrail 입력으로.
-
상태 시스템의 실행을 점검합니다.
Step Functions 콘솔로 이동하여 Amazon EventBridge 규칙 (
Helloworld
) 에 사용되는 상태 머신을 선택합니다. -
해당 상태 시스템의 최근 실행을 선택하고 실행 입력 섹션을 확장합니다.
이 입력에는 버킷 이름, 객체 이름 등의 정보가 포함되어야 합니다. 실제 사용 사례에서 상태 시스템은 이 입력을 사용하여 해당 객체에 대한 작업을 수행할 수 있습니다.
실행 입력의 예
다음 예제에서는 상태 시스템 실행에 대한 일반적인 입력을 보여줍니다.
{ "version": "0", "id": "6c540ad4-0671-9974-6511-756fbd7771c3", "detail-type": "Object Created", "source": "aws.s3", "account": "123456789012", "time": "2023-06-23T23:45:48Z", "region": "us-east-2", "resources": [ "arn:aws:s3:::
" ], "detail": { "version": "0", "bucket": { "name": "
username
-sfn-tutorial" }, "object": { "key": "test.png", "size": 800704, "etag": "f31d8546bb67845b4d3048cde533b937", "sequencer": "00621049BA9A8C712B" }, "request-id": "79104EXAMPLEB723", "requester": "123456789012", "source-ip-address": "200.0.100.11", "reason": "PutObject" } }
username
-sfn-tutorial