Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
MSK
Objek yang menggambarkan tipe sumber peristiwa MSK. Untuk informasi selengkapnya, lihat Menggunakan AWS Lambda MSK Amazon di Panduan AWS Lambda Pengembang.
AWS Serverless Application Model (AWS SAM) menghasilkan AWS::Lambda::EventSourceMappingsumber daya saat jenis acara ini disetel.
Untuk menggunakan Schema Registry, Anda perlu menentukan izin peran IAM tertentu untuk fungsi Anda. Lihat Penyiapan lengkap dengan peran IAM untuk contoh konfigurasi yang diperlukan.
Sintaksis
Untuk mendeklarasikan entitas ini di AWS SAM template Anda, gunakan sintaks berikut.
YAML
BatchSize:IntegerBisectBatchOnFunctionError:BooleanConsumerGroupId:StringDestinationConfig:DestinationConfigEnabled:BooleanFilterCriteria:FilterCriteriaFunctionResponseTypes:ListKmsKeyArn:StringMaximumBatchingWindowInSeconds:IntegerMaximumRecordAgeInSeconds:IntegerMaximumRetryAttempts:IntegerProvisionedPollerConfig:ProvisionedPollerConfigSchemaRegistryConfig:SchemaRegistryConfigSourceAccessConfigurations:SourceAccessConfigurationsStartingPosition:StringStartingPositionTimestamp:DoubleStream:StringTopics:List
Sifat-sifat
-
BatchSize -
Jumlah maksimum rekaman di setiap batch yang Lambda tarik dari aliran atau antrian Anda dan dikirim ke fungsi Anda. Lambda meneruskan semua catatan dalam batch ke fungsi dalam satu panggilan, hingga batas payload untuk pemanggilan sinkron (6 MB).
Default: 100
Rentang Valid: Nilai minimum 1. Nilai maksimum 10.000.
Tipe: Integer
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
BatchSizepropertiAWS::Lambda::EventSourceMappingsumber daya. -
BisectBatchOnFunctionError -
Jika fungsi mengembalikan kesalahan, bagi batch menjadi dua dan coba lagi.
Tipe: Boolean
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
BisectBatchOnFunctionErrorpropertiAWS::Lambda::EventSourceMappingsumber daya. -
ConsumerGroupId -
String yang mengonfigurasi bagaimana acara akan dibaca dari topik Kafka.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
AmazonManagedKafkaConfigurationpropertiAWS::Lambda::EventSourceMappingsumber daya. -
DestinationConfig -
Objek konfigurasi yang menentukan tujuan dari peristiwa setelah Lambda memprosesnya.
Gunakan properti ini untuk menentukan tujuan pemanggilan gagal dari sumber peristiwa MSK Amazon.
Jenis: DestinationConfig
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
DestinationConfigpropertiAWS::Lambda::EventSourceMappingsumber daya. -
Enabled -
Menonaktifkan pemetaan sumber peristiwa untuk menjeda polling dan pemanggilan.
Tipe: Boolean
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
EnabledpropertiAWS::Lambda::EventSourceMappingsumber daya. -
FilterCriteria -
Objek yang mendefinisikan kriteria yang menentukan apakah Lambda harus memproses suatu peristiwa. Untuk informasi selengkapnya, lihat pemfilteran AWS Lambda acara di Panduan AWS Lambda Pengembang.
Jenis: FilterCriteria
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
FilterCriteriapropertiAWS::Lambda::EventSourceMappingsumber daya. -
FunctionResponseTypes -
Daftar tipe jawaban saat ini yang diterapkan ke pemetaan sumber peristiwa. Untuk informasi selengkapnya, lihat Melaporkan kegagalan item batch di Panduan Developer AWS Lambda .
Nilai yang valid:
ReportBatchItemFailuresTipe: Daftar
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
FunctionResponseTypespropertiAWS::Lambda::EventSourceMappingsumber daya. -
KmsKeyArn -
Nama Sumber Daya Amazon (ARN) dari kunci untuk mengenkripsi informasi yang terkait dengan acara ini.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
KmsKeyArnpropertiAWS::Lambda::EventSourceMappingsumber daya. -
MaximumBatchingWindowInSeconds -
Jumlah waktu maksimum untuk mengumpulkan rekaman sebelum memanggil fungsi, dalam hitungan detik.
Tipe: Integer
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
MaximumBatchingWindowInSecondspropertiAWS::Lambda::EventSourceMappingsumber daya. -
MaximumRecordAgeInSeconds -
Periode permintaan maksimum yang dikirimkan Lambda ke fungsi untuk diproses.
Tipe: Integer
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
MaximumRecordAgeInSecondspropertiAWS::Lambda::EventSourceMappingsumber daya. -
MaximumRetryAttempts -
Jumlah waktu maksimum untuk mencoba kembali saat fungsi mengembalikan kesalahan.
Tipe: Integer
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
MaximumRetryAttemptspropertiAWS::Lambda::EventSourceMappingsumber daya. -
ProvisionedPollerConfig -
Konfigurasi untuk meningkatkan jumlah poller yang digunakan untuk menghitung pemetaan sumber peristiwa. Konfigurasi ini memungkinkan minimal 1 poller dan maksimum 2000 poller. Sebagai contoh, lihatProvisionedPollerConfig contoh.
Jenis: ProvisionedPollerConfig
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
ProvisionedPollerConfigpropertiAWS::Lambda::EventSourceMappingsumber daya. SchemaRegistryConfig-
Konfigurasi untuk menggunakan registri skema dengan sumber acara Kafka.
catatan
Fitur ini
ProvisionedPollerConfigperlu dikonfigurasi.Jenis: SchemaRegistryConfig
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
AmazonManagedKafkaEventSourceConfigpropertiAWS::Lambda::EventSourceMappingsumber daya. -
SourceAccessConfigurations -
Susunan protokol autentikasi, komponen VPC, atau host virtual untuk mengamankan dan menentukan sumber peristiwa Anda.
Nilai yang valid:
CLIENT_CERTIFICATE_TLS_AUTHJenis: Daftar SourceAccessConfiguration
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini adalah bagian dari AmazonManagedKafkaEventSourceConfigproperti sumber daya.
AWS::Lambda::EventSourceMapping -
StartingPosition -
Posisi dalam pengaliran tempat untuk mulai membaca.
-
AT_TIMESTAMP— Tentukan waktu untuk mulai membaca catatan. -
LATEST— Baca hanya catatan baru. -
TRIM_HORIZON— Memproses semua catatan yang tersedia.
Nilai yang valid:
AT_TIMESTAMP|LATEST|TRIM_HORIZONTipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
StartingPositionpropertiAWS::Lambda::EventSourceMappingsumber daya. -
-
StartingPositionTimestamp -
Waktu untuk mulai membaca, dalam detik waktu Unix. Tentukan
StartingPositionTimestampkapanStartingPositionditentukan sebagaiAT_TIMESTAMP.Tipe: Ganda
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
StartingPositionTimestamppropertiAWS::Lambda::EventSourceMappingsumber daya. -
Stream -
Amazon Resource Name (ARN) dari aliran data atau konsumen pengaliran.
Tipe: String
Wajib: Ya
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
EventSourceArnpropertiAWS::Lambda::EventSourceMappingsumber daya. -
Topics -
Nama topik Kafka.
Tipe: Daftar
Wajib: Ya
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
TopicspropertiAWS::Lambda::EventSourceMappingsumber daya.
Contoh
Penyiapan lengkap dengan peran IAM
Contoh berikut menunjukkan penyiapan lengkap termasuk konfigurasi peran IAM yang diperlukan untuk menggunakan Schema Registry:
Parameters: PreCreatedSubnetOne: Type: String PreCreatedSubnetTwo: Type: String MskClusterName4: Type: String Resources: MyLambdaExecutionRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: '2012-10-17 ' Statement: - Action: [sts:AssumeRole] Effect: Allow Principal: Service: [lambda.amazonaws.com] Policies: - PolicyName: KafkaClusterPermissions PolicyDocument: Statement: - Action: [kafka:DescribeClusterV2, kafka:GetBootstrapBrokers] Effect: Allow Resource: 'arn:aws:kafka:us-east-1:123456789012:cluster/*' - PolicyName: KafkaAuthPolicy PolicyDocument: Statement: - Action: [secretsmanager:GetSecretValue, kms:Decrypt] Effect: "Allow" Resource: ['arn:aws:secretsmanager:us-west-2:123456789012:secret:kafkaSecret-******', 'arn:aws:kms:us-west-2:123456789012:key/keyId'] - PolicyName: ENIPolicy PolicyDocument: Statement: - Action: [ec2:CreateNetworkInterface, ec2:DescribeNetworkInterfaces, ec2:DescribeVpcs, ec2:DeleteNetworkInterface, ec2:DescribeSubnets, ec2:DescribeSecurityGroups] Effect: Allow Resource: '*' - PolicyName: SchemaRegistryPolicy PolicyDocument: Statement: - Action: [glue:GetRegistry] Effect: Allow Resource: 'arn:aws:glue:{region}:{account-id}:registry/{registry-name}' - PolicyName: SchemaVersionsPolicy PolicyDocument: Statement: - Action: [glue:GetSchemaVersions] Effect: Allow Resource: '*' ManagedPolicyArns: - !Sub arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole Tags: - {Value: SAM, Key: lambda:createdBy} MyMskCluster: Type: AWS::MSK::Cluster Properties: BrokerNodeGroupInfo: ClientSubnets: - Ref: PreCreatedSubnetOne - Ref: PreCreatedSubnetTwo InstanceType: kafka.t3.small StorageInfo: EBSStorageInfo: VolumeSize: 1 ClusterName: Ref: MskClusterName4 KafkaVersion: 3.8.x NumberOfBrokerNodes: 2 MyMskStreamProcessor: Type: AWS::Serverless::Function Properties: Runtime: nodejs18.x Handler: index.handler CodeUri: ${codeuri} Role: Fn::GetAtt: [MyLambdaExecutionRole, Arn] Events: MyMskEvent: Type: MSK Properties: StartingPosition: LATEST Stream: Ref: MyMskCluster SourceAccessConfigurations: - Type: SASL_SCRAM_512_AUTH URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:my-path/my-secret-name-1a2b3c Topics: - SchemaRegistryTestTopic ProvisionedPollerConfig: MinimumPollers: 1 SchemaRegistryConfig: AccessConfigs: - Type: BASIC_AUTH URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:my-path/my-secret-name-1a2b3c SchemaValidationConfigs: - Attribute: KEY EventRecordFormat: JSON SchemaRegistryURI: !Sub arn:${AWS::Partition}:glue:us-west-2:123456789012:registry/myregistry
ProvisionedPollerConfig contoh
ProvisionedPollerConfig: MinimumPollers: 1 MaximumPollers: 200
Contoh Amazon MSK untuk Klaster yang ada
Berikut ini adalah contoh jenis sumber MSK peristiwa untuk cluster MSK Amazon yang sudah ada di file Akun AWS.
YAML
Events: MSKEvent: Type: MSK Properties: StartingPosition: LATEST Stream: arn:aws:kafka:us-east-1:012345678012:cluster/exampleClusterName/abcdefab-1234-abcd-5678-cdef0123ab01-2 Topics: - MyTopic
Amazon MSK contoh untuk Klaster yang dinyatakan dalam Templat yang sama
Berikut ini adalah contoh tipe sumber peristiwa MSK untuk klaster Amazon MSK yang dinyatakan dalam file templat yang sama.
YAML
Events: MSKEvent: Type: MSK Properties: StartingPosition: LATEST Stream: Ref: MyMskCluster # This must be the name of an MSK cluster declared in the same template file Topics: - MyTopic
Sumber Acara MSK dengan Registri Skema
Berikut ini adalah contoh dari jenis sumber MSK peristiwa dikonfigurasi dengan registri skema.
Events: MSKEvent: Type: MSK Properties: StartingPosition: LATEST Stream: Ref: MyMskCluster Topics: - SchemaRegistryTestTopic ProvisionedPollerConfig: MinimumPollers: 1 SchemaRegistryConfig: SchemaRegistryURI: !Sub arn:${AWS::Partition}:glue:us-west-2:123456789012:registry/myregistry EventRecordFormat: JSON SchemaValidationConfigs: - Attribute: KEY - Attribute: VALUE
Sumber Acara MSK dengan Registri Skema Konfluen
Berikut ini adalah contoh dari jenis sumber MSK peristiwa dikonfigurasi dengan Confluent Schema Registry.
Events: MSKEvent: Type: MSK Properties: StartingPosition: LATEST Stream: Ref: MyMskCluster Topics: - SchemaRegistryTestTopic ProvisionedPollerConfig: MinimumPollers: 1 SchemaRegistryConfig: SchemaRegistryURI: https://my-schema-registry.confluent.cloud AccessConfigs: - Type: BASIC_AUTH URI: !Sub arn:${AWS::Partition}:secretsmanager:us-west-2:123456789012:secret:my-secret EventRecordFormat: JSON SchemaValidationConfigs: - Attribute: KEY - Attribute: VALUE