AWS-s3-스텝 기능 - AWS 솔루션 구성체

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

AWS-s3-스텝 기능

모든 클래스는 활발히 개발 중이며 향후 버전에서 이전 버전과 호환되지 않는 변경 또는 제거 될 수 있습니다. 이들은 적용되지 않습니다의미 체계 버전 관리모델을 반환합니다. 즉, 이 패키지를 사용할 수도 있지만 이 패키지의 최신 버전으로 업그레이드할 때 소스 코드를 업데이트해야 할 수도 있습니다.

참고: 적절한 기능을 보장하려면 프로젝트의 AWS 솔루션 구성 패키지와 AWS CDK 패키지가 동일한 버전이어야 합니다.

언어 패키지
Python
aws_solutions_constructs.aws_s3_step_function
타이프 스크립트
@aws-solutions-constructs/aws-s3-step-function
Java
software.amazon.awsconstructs.services.s3stepfunction

Overview

이 AWS 솔루션 구성은 AWS 단계 함수에 연결된 Amazon S3 버킷을 구현합니다.

참고

이 구조는 아마존 EventBridge (Amazon CloudWatch Events) 를 사용하여 AWS Step Functions 트리거합니다. EventBridge 는 유연성이 뛰어나지만 S3 이벤트 알림으로 Step Functions 트리거하면 지연 시간이 줄어들고 비용 효율성이 높아집니다. 비용 및/또는 대기 시간이 문제인 경우aws-s3-lambdaaws-lambda-stepfunctions이 구조 대신.

다음은 TypeScript 터의 최소 배포 가능한 패턴 정의입니다.

import { S3ToStepFunction, S3ToStepFunctionProps } from '@aws-solutions-constructs/aws-s3-step-function'; import * as stepfunctions from '@aws-cdk/aws-stepfunctions'; const startState = new stepfunctions.Pass(this, 'StartState'); new S3ToStepFunction(this, 'test-s3-step-function-stack', { stateMachineProps: { definition: startState } });

Initializer

new S3ToStepFunction(scope: Construct, id: string, props: S3ToStepFunctionProps);

파라미터

Prop 패턴 구성

이름 유형 설명
버켓토비 기존에? s3.IBucket S3 버킷 객체의 기존 인스턴스입니다. 이것이 제공되는 경우bucketProps는 오류입니다.
버킷 소품? s3.BucketProps 버킷의 기본 속성을 재정의하는 선택적 사용자 제공 속성입니다. 이면 무시됩니다.existingBucketObj가 제공될 것입니다.
상태 머신소품 sfn.StateMachineProps 선택적 사용자가 SFN.StateMachine의 기본 소품을 무시하기 위해 소품을 제공했습니다.
이벤트 소품? events.RuleProps 선택적 사용자가 기본값을 재정의하기 위해 EventRuleProps를 제공했습니다.
배포클라우드트레일? boolean Amazon S3 API 이벤트를 기록하기 위해 AWS CloudTrail 에 트레일을 배포할지 여부 기본값은 true입니다.
클라우드왓찰암스 만들기 boolean 권장 CloudWatch 경보를 생성할지 여부입니다.
로그그룹Props? logs.LogGroupProps CloudWatch Logs 로그 그룹의 기본 소품을 재정의하기 위한 선택적 사용자 제공 prop입니다.

패턴 속성

이름 유형 설명
CloudTrail? cloudtrail.Trail 패턴에 의해 생성 된 Cloudtrail 트레일의 인스턴스를 돌려줍니다.
클라우드 트레일버킷? s3.Bucket Cloudtrail 데이터를 저장하기 위한 패턴으로 생성된 버킷의 인스턴스를 반환합니다.
클라우드 트레일로깅 버킷? s3.Bucket Cloudtrail 추적에서 사용하는 기본 버킷의 패턴으로 생성된 로깅 버킷의 인스턴스를 반환합니다.
CloudWatCalarms? cloudwatch.Alarm[] 패턴에 의해 생성된 하나 이상의 CloudWatch 경보 목록을 반환합니다.
S3Bucket? s3.Bucket 패턴에 의해 생성된 S3 버킷의 인스턴스를 반환합니다.
s3로깅 버킷? s3.Bucket S3 버킷의 패턴으로 생성된 로깅 버킷의 인스턴스를 반환합니다.
스테이트머신 sfn.StateMachine 패턴에 의해 생성 된 상태 머신의 인스턴스를 돌려줍니다.
상태시스템로그 그룹 logs.LogGroup 상태 시스템의 패턴으로 생성된 로그 그룹의 인스턴스를 반환합니다.

기본 설정

재정의없이이 패턴을 즉시 구현하면 다음과 같은 기본값이 설정됩니다.

Amazon S3 버킷

  • S3 버킷에 대한 액세스 로깅을 구성합니다.

  • AWS 관리형 KMS 키를 사용하여 S3 버킷에 대한 서버 측 암호화를 활성화합니다.

  • S3 버킷의 버전 관리를 켭니다.

  • S3 버킷에 대한 공용 액세스를 허용하지 않습니다.

  • CloudFormation 스택을 삭제할 때 S3 버킷을 유지합니다.

  • 전송 중인 데이터의 암호화를 적용합니다.

  • 90일 후에 비최신 객체 버전을 Glacier 스토리지로 이동하는 수명 주기 규칙을 적용합니다.

AWS CloudTrail

  • AWS CloudTrail에서 트레일을 구성하여 구성에 의해 생성된 버킷과 관련된 Amazon S3 API 이벤트를 기록합니다.

Amazon CloudWatch Events

  • CloudWatch 이벤트에 최소 권한을 부여하여 Lambda 함수를 트리거합니다.

AWS Step Fun

  • API Gateway 대해 CloudWatch 로깅을 사용하도록 설정합니다.

  • 단계 기능에 대한 모범 사례 CloudWatch 경보를 배포합니다.

Architecture

GitHub

이 패턴의 코드를 보려면 문제 및 끌어오기 요청을 작성/조회하는 등의 작업을 수행합니다.
@aws -솔루션 - 구성/AWS-s3 단계 함수