파일이 Amazon Simple Storage Service(Amazon S3) 버킷에 추가될 때 AWS Step Function 상태 머신을 활성화하려고 합니다.
간략한 설명
객체가 Amazon S3 버킷에 업로드될 때 Amazon EventBridge 규칙을 사용하여 Step Function 상태 머신을 활성화할 수 있습니다. 시작하려면 다음과 같은 리소스가 있어야 합니다.
- 객체가 업로드되는 S3 버킷
- 실행하려는 상태 머신
- 객체가 S3 버킷에 업로드될 때 상태 머신을 호출할 EventBridge 규칙
- 필수 작업을 위한 Step Function
해결 방법
아마존 S3에 버킷 생성
다음 단계를 완료하십시오.
- Amazon S3 콘솔을 연 다음 버킷 생성을 선택합니다.
- 버킷 이름에 이름을 입력합니다.
- 버킷 생성을 선택합니다.
EventBridge로 Amazon S3 이벤트 알림 활성화
다음 단계를 완료하십시오.
- Amazon S3 콘솔을 연 다음 버킷을 선택합니다.
- 이벤트를 활성화하려는 버킷을 선택한 다음 속성을 선택합니다.
- Amazon EventBridge 섹션에서 편집을 선택합니다.
- 이 버킷의 모든 이벤트에 대해 Amazon EventBridge에 알림 보내기 섹션에서 켜기를 선택합니다.
- 변경 사항 저장을 선택합니다.
상태 머신 구성
Steps Function 콘솔을 연 다음 단계에 따라 상태 머신을 생성합니다.
EventBridge 규칙 생성
다음 단계를 완료하십시오.
- EventBridge 콘솔을 열고 다음 규칙 생성을 선택합니다.
- 이름에 규칙의 이름을 입력합니다.
- 규칙 유형에서 이벤트 패턴이 있는 규칙을 선택한 다음 다음을 선택합니다.
- 이벤트 패턴 작성 페이지의 이벤트 패턴 섹션에서 다음을 선택합니다.
이벤트 소스에서 AWS 서비스를 선택합니다.
AWS 서비스에서 **Simple Storage Service(S3)**를 선택합니다.
이벤트 유형에서 Amazon S3 이벤트 알림을 선택합니다.
이벤트 유형 사양 1에서 특정 이벤트를 선택합니다.
특정 이벤트 드롭다운 목록을 선택하고 객체 생성됨을 선택합니다.
이벤트 유형 사양 2에서 이름 기준 특정 버킷을 선택합니다.
이름 기준 특정 버킷에 이전에 만든 버킷의 이름을 입력한 후 다음을 선택합니다.
- 대상 선택 페이지에서 다음을 선택합니다.
대상 1에서 AWS 서비스를 선택합니다.
대상 선택 드롭다운 목록을 선택하고 Step Functions 상태 머신을 선택합니다.
상태 머신 드롭다운 목록을 선택하고 이전에 생성한 상태 머신을 선택합니다.
다음을 선택합니다.
- 태그 구성 - 선택 사항 페이지에서 다음을 선택합니다.
- 검토 및 생성 페이지에서 규칙 생성을 선택합니다.
(선택 사항) S3 버킷 하위 폴더의 이벤트 모니터링
특정 S3 버킷 하위 폴더에서 이벤트 알림이 발생할 때 EventBridge 규칙을 트리거하려면 접두사 일치를 사용하도록 이벤트 패턴을 수정합니다.
다음 예시 이벤트 패턴은 example-folder라는 하위 폴더에 S3 객체가 생성될 때 EventBridge 규칙을 트리거합니다.
{
"source": [
"aws.s3"
],
"detail-type": [
"Object Created"
],
"detail": {
"bucket": {
"name": [
"bucket-name"
]
},
"object": {
"key": [
{
"prefix": "example-folder"
}
]
}
}
}
참고:
- EventBridge에서 S3 이벤트 알림을 활성화하기 위한 변경 사항을 완료하는 데 약 5분 정도 걸립니다. 즉, 규칙을 활성화한 후 S3 이벤트에서 규칙이 즉시 트리거되지는 않습니다.
- 규칙이 트리거되지 않는 경우 S3 버킷과 이벤트 규칙이 동일한 AWS 리전에 있는지 확인하십시오.