aws-apigateway-키네시스스트림 - AWS 솔루션 구성체

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

aws-apigateway-키네시스스트림

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

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

언어 패키지
Python
aws_solutions_constructs.aws_apigateway_kinesisstreams
타이프 스크립트
@aws-solutions-constructs/aws-apigateway-kinesisstreams
Java
software.amazon.awsconstructs.services.apigatewaykinesisstreams

Overview

이 패턴은 Amazon Kinesis 데이터 스트림에 연결된 Amazon API 게이트웨이 REST API를 구현합니다.

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

import { ApiGatewayToKinesisStreams, ApiGatewayToKinesisStreamsProps } from '@aws-solutions-constructs/aws-apigateway-kinesisstreams'; new ApiGatewayToKinesisStreams(this, 'test-apigw-kinesis', {});

Initializer

new ApiGatewayToKinesisStreams(scope: Construct, id: string, props: ApiGatewayToKinesisStreamsProps);

파라미터

패턴 구성

이름 유형 설명
아피가트웨이 소품? api.RestApiProps API Gateway REST API의 기본 소품을 재정의하는 선택적 사용자 제공 소품입니다.
입력코드 요청 템플릿? string PutRecord 작업에 대한 API Gateway 요청 템플릿입니다. 제공되지 않으면 기본 값이 사용됩니다.
입력 코드 요청 모델? api.ModelOptions PutRecord 작업에 대한 API Gateway 요청 모델입니다. 제공되지 않으면 기본 항목이 생성됩니다.
푸트코드요청 템플릿? string PutRecords 작업에 대한 API Gateway 요청 템플릿입니다. 제공되지 않으면 기본 값이 사용됩니다.
입력 코드 요청 모델? api.ModelOptions PutRecords 작업에 대한 API Gateway 요청 모델입니다. 제공되지 않으면 기본 항목이 생성됩니다.
기존스트리모브? kinesis.Stream Kinesis Stream의 기존 인스턴스로, 이 인스턴스와kinesisStreamProps를 사용해 오류가 발생합니다.
키네시스스트림프롭스? kinesis.StreamProps Kinesis 스트림의 기본 소품을 재정의하는 선택적 사용자 제공 소품입니다.
로그그룹Props? logs.LogGroupProps 선택적 사용자가 제공한 소품을 CloudWatch Logs 로그 그룹에 대한 기본 소품을 무시합니다.

패턴 속성

이름 유형 설명
ApiGateway api.RestApi 패턴에 의해 생성 된 API Gateway REST API의 인스턴스를 돌려줍니다.
에이피게이트 웨이의 역할 iam.Role API Gateway REST API의 패턴으로 생성된 IAM 역할의 인스턴스를 반환합니다.
APIGateway클라우드워치역할 iam.Role API Gateway REST API에서 CloudWatch 로의 액세스 로깅을 활성화하는 패턴으로 생성된 IAM 역할의 인스턴스를 반환합니다.
에이피가트웨이로그 그룹 logs.LogGroup API Gateway REST API 액세스 로그가 전송되는 패턴으로 생성된 로그 그룹의 인스턴스를 반환합니다.
키네시스스트림 kinesis.Stream 패턴에 의해 생성된 Kinesis 스트림의 인스턴스를 반환합니다.

샘플 API 사용

방법 요청 경로 요청 본문 대기열 작업 설명
POST /record
{ "data": "Hello World!", "partitionKey": "pk001" }
kinesis:PutRecord 단일 데이터 레코드를 스트림에 씁니다.
POST /records
{ "records": [ { "data": "abc", "partitionKey": "pk001" }, { "data": "xyz", "partitionKey": "pk001" } ] }
kinesis:PutRecords 단일 호출로 스트림에 여러 데이터 레코드를 기록합니다.

기본 설정

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

Amazon API Gateway

  • 엣지 최적화 API 엔드포인트를 배포합니다.

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

  • API Gateway 대한 최소 권한 액세스 IAM 역할을 구성합니다.

  • 모든 API 메소드의 기본 권한 부여 유형을 IAM으로 설정합니다.

  • X-Ray 추적을 사용합니다.

  • Kinesis 에 데이터를 전달하기 전에 요청 본문의 유효성을 검사합니다

Amazon Kinesis Data Stream

  • Kinesis 스트림에 대한 최소 권한 액세스 IAM 역할을 구성합니다.

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

Architecture

GitHub

이 패턴의 코드를 보려면 문제 및 끌어오기 요청을 작성/조회하는 등의 작업을 수행합니다.
@aws -솔루션 - 구성/aws-apigateway - 키네시스스트림