Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan registri skema dengan sumber peristiwa Kafka di Lambda
Pendaftar skema membantu Anda menentukan dan mengelola skema aliran data. Sebuah skema mendefinisikan struktur dan format catatan data. Dalam konteks pemetaan sumber peristiwa Kafka, Anda dapat mengonfigurasi registri skema untuk memvalidasi struktur dan format pesan Kafka terhadap skema yang telah ditentukan sebelum mencapai fungsi Lambda Anda. Ini menambahkan lapisan tata kelola data ke aplikasi Anda dan Anda dapat mengelola format data secara efisien, memastikan kepatuhan skema, dan mengoptimalkan biaya melalui pemfilteran peristiwa.
Fitur ini bekerja dengan semua bahasa pemrograman, tetapi pertimbangkan poin-poin penting ini:
Powertools for Lambda memberikan dukungan khusus untuk Java, Python, dan TypeScript, menjaga konsistensi dengan pola pengembangan Kafka yang ada dan memungkinkan akses langsung ke objek bisnis tanpa kode deserialisasi khusus
Fitur ini hanya tersedia untuk pemetaan sumber peristiwa menggunakan mode yang disediakan. Registry skema tidak mendukung pemetaan sumber peristiwa dalam mode on-demand. Jika Anda menggunakan mode yang disediakan dan Anda memiliki registri skema yang dikonfigurasi, Anda tidak dapat mengubah ke mode sesuai permintaan kecuali Anda menghapus konfigurasi registri skema terlebih dahulu. Untuk informasi selengkapnya, lihat Mode yang disediakan
Anda hanya dapat mengonfigurasi satu registri skema per pemetaan sumber peristiwa (ESM). Menggunakan registri skema dengan sumber peristiwa Kafka Anda dapat meningkatkan penggunaan Lambda Event Poller Unit (EPU), yang merupakan dimensi harga untuk mode Penyediaan.
Topik
Opsi registri skema
Lambda mendukung opsi registri skema berikut:
Registry skema Anda mendukung validasi pesan dalam format data berikut:
-
Apache Avro
-
Protokol Buffer (Protobuf)
-
Skema JSON (JSON-SE)
Untuk menggunakan registri skema, pertama-tama pastikan pemetaan sumber peristiwa Anda dalam mode yang disediakan. Saat Anda menggunakan registri skema, Lambda menambahkan metadata tentang skema ke payload. Untuk informasi selengkapnya, lihat Format muatan dan perilaku deserialisasi.
Bagaimana Lambda melakukan validasi skema untuk pesan Kafka
Saat Anda mengkonfigurasi registri skema, Lambda melakukan langkah-langkah berikut untuk setiap pesan Kafka:
-
Lambda mensurvei catatan Kafka dari cluster Anda.
-
Lambda memvalidasi atribut pesan yang dipilih dalam catatan terhadap skema tertentu di registri skema Anda.
-
Jika skema yang terkait dengan pesan tidak ditemukan di registri, Lambda mengirimkan pesan ke DLQ dengan kode alasan.
SCHEMA_NOT_FOUND
-
-
Lambda mendeserialisasi pesan sesuai dengan konfigurasi registri skema untuk memvalidasi pesan. Jika pemfilteran peristiwa dikonfigurasi, Lambda kemudian melakukan pemfilteran berdasarkan kriteria filter yang dikonfigurasi.
-
Jika deserialisasi gagal, Lambda mengirimkan pesan ke DLQ dengan kode alasan.
DESERIALIZATION_ERRORJika tidak ada DLQ yang dikonfigurasi, Lambda menjatuhkan pesan.
-
-
Jika pesan divalidasi oleh registri skema, dan tidak disaring oleh kriteria filter Anda, Lambda memanggil fungsi Anda dengan pesan tersebut.
Fitur ini dimaksudkan untuk memvalidasi pesan yang sudah diproduksi menggunakan klien Kafka yang terintegrasi dengan registri skema. Sebaiknya konfigurasi produsen Kafka Anda agar bekerja dengan registri skema Anda untuk membuat pesan yang diformat dengan benar.
Mengkonfigurasi registri skema Kafka
Langkah-langkah konsol berikut menambahkan konfigurasi registri skema Kafka ke pemetaan sumber acara Anda.
Untuk menambahkan konfigurasi registri skema Kafka ke pemetaan sumber acara Anda (konsol)
-
Buka halaman https://console.aws.amazon.com/lambda/home#/functions
Fungsi konsol Lambda. -
Pilih Konfigurasi.
-
Pilih Pemicu.
-
Pilih pemetaan sumber peristiwa Kafka yang ingin Anda konfigurasi registri skema, dan pilih Edit.
-
Di bawah Konfigurasi poller peristiwa, pilih Konfigurasikan registr i skema. Pemetaan sumber peristiwa Anda harus dalam mode disediakan untuk melihat opsi ini.
-
Untuk URI registri Skema, masukkan ARN registri AWS Glue skema Anda, atau URL HTTPS dari registri skema Confluent Cloud Anda atau Self-Managed Confluent Schema Registry.
-
Langkah-langkah konfigurasi berikut memberi tahu Lambda cara mengakses registri skema Anda. Untuk informasi selengkapnya, lihat Metode otentikasi untuk registri skema Anda.
-
Untuk tipe konfigurasi Access, pilih jenis otentikasi yang digunakan Lambda untuk mengakses registri skema Anda.
-
Untuk URI konfigurasi Access, masukkan ARN rahasia Manajer Rahasia untuk mengotentikasi dengan registri skema Anda, jika berlaku. Pastikan peran eksekusi fungsi Anda berisi izin yang benar.
-
-
Bid ang Enkripsi hanya berlaku jika registri skema Anda ditandatangani oleh Otoritas Sertifikat (CA) pribadi atau otoritas sertifikat (CA) yang tidak ada di penyimpanan kepercayaan Lambda.. Jika berlaku, berikan kunci rahasia yang berisi sertifikat CA pribadi yang digunakan oleh registri skema Anda untuk enkripsi TLS.
-
Untuk Format catatan peristiwa, pilih bagaimana Anda ingin Lambda mengirimkan catatan fungsi Anda setelah validasi skema. Untuk informasi selengkapnya, lihat contoh format payload.
-
Jika Anda memilih JSON, Lambda memberikan atribut yang Anda pilih dalam atribut validasi skema di bawah ini dalam format JSON standar. Untuk atribut yang tidak Anda pilih, Lambda mengirimkannya apa adanya.
-
Jika Anda memilih SUMBER, Lambda memberikan atribut yang Anda pilih dalam atribut validasi Skema di bawah ini dalam format sumber aslinya.
-
-
Untuk atribut validasi skema, pilih atribut pesan yang Anda ingin Lambda memvalidasi dan deserialisasi menggunakan registri skema Anda. Anda harus memilih setidaknya salah satu dari KEY atau VALUE. Jika Anda memilih JSON untuk format catatan peristiwa, Lambda juga mendeserialisasi atribut pesan yang dipilih sebelum mengirimnya ke fungsi Anda. Untuk informasi selengkapnya, lihat Format muatan dan perilaku deserialisasi.
-
Pilih Simpan.
Anda juga dapat menggunakan API Lambda untuk membuat atau memperbarui pemetaan sumber peristiwa Anda dengan konfigurasi registri skema. Contoh berikut menunjukkan cara mengonfigurasi registri skema AWS Glue atau Confluent menggunakan AWS CLI, yang sesuai dengan operasi UpdateEventSourceMapping dan CreateEventSourceMapping API di Referensi AWS Lambda API:
penting
Jika Anda memperbarui bidang konfigurasi registri skema menggunakan AWS CLI atau update-event-source-mapping API, Anda harus memperbarui semua bidang konfigurasi registri skema.
Penyaringan untuk Avro dan Protobuf
Saat menggunakan format Avro atau Protobuf dengan registri skema, Anda dapat menerapkan pemfilteran peristiwa ke fungsi Lambda Anda. Pola filter diterapkan pada representasi JSON klasik yang dideserialisasi dari data Anda setelah validasi skema. Misalnya, dengan skema Avro yang menentukan detail produk termasuk harga, Anda dapat memfilter pesan berdasarkan nilai harga:
catatan
Saat dideserialisasi, Avro dikonversi ke JSON standar, yang berarti tidak dapat langsung dikonversi kembali ke objek Avro. Jika Anda perlu mengonversi ke objek Avro, gunakan format SOURCE sebagai gantinya.
Untuk deserialisasi Protobuf, nama bidang dalam JSON yang dihasilkan cocok dengan yang didefinisikan dalam skema Anda, daripada dikonversi ke kasus unta seperti yang biasanya dilakukan Protobuf. Ingatlah hal ini saat membuat pola penyaringan.
aws lambda create-event-source-mapping \ --function-name myAvroFunction \ --topics myAvroTopic \ --starting-position TRIM_HORIZON \ --kafka-bootstrap-servers '["broker1:9092", "broker2:9092"]' \ --schema-registry-config '{ "SchemaRegistryURI": "arn:aws:glue:us-east-1:123456789012:registry/myAvroRegistry", "EventRecordFormat": "JSON", "SchemaValidationConfigs": [ { "Attribute": "VALUE" } ] }' \ --filter-criteria '{ "Filters": [ { "Pattern": "{ \"value\" : { \"field_1\" : [\"value1\"], \"field_2\" : [\"value2\"] } }" } ] }'
Dalam contoh ini, pola filter menganalisis value objek, mencocokkan pesan field_1 dengan "value1" dan field_2 dengan"value2". Kriteria filter dievaluasi terhadap data deserialisasi, setelah Lambda mengonversi pesan dari format Avro ke JSON.
Untuk informasi lebih rinci tentang pemfilteran peristiwa, lihat pemfilter an peristiwa Lambda.
Format muatan dan perilaku deserialisasi
Saat menggunakan registri skema, Lambda memberikan payload akhir ke fungsi Anda dalam format yang mirip dengan payload acara biasa, dengan beberapa bidang tambahan. Bidang tambahan tergantung pada SchemaValidationConfigs parameter. Untuk setiap atribut yang Anda pilih untuk validasi (kunci atau nilai), Lambda menambahkan metadata skema yang sesuai ke payload.
catatan
Anda harus memperbarui aws-lambda-java-events
Misalnya, jika Anda memvalidasi value bidang, Lambda menambahkan bidang yang dipanggil valueSchemaMetadata ke payload Anda. Demikian pula, untuk key bidang, Lambda menambahkan bidang yang disebutkeySchemaMetadata. Metadata ini berisi informasi tentang format data dan ID skema yang digunakan untuk validasi:
"valueSchemaMetadata": { "dataFormat": "AVRO", "schemaId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
EventRecordFormatParameter dapat diatur ke salah satu JSON atauSOURCE, yang menentukan bagaimana Lambda menangani data yang divalidasi skema sebelum mengirimkannya ke fungsi Anda. Setiap opsi menyediakan kemampuan pemrosesan yang berbeda:
-
JSON- Lambda mendeserialisasi atribut yang divalidasi ke dalam format JSON standar, membuat data siap untuk digunakan langsung dalam bahasa dengan dukungan JSON asli. Format ini sangat ideal ketika Anda tidak perlu mempertahankan format biner asli atau bekerja dengan kelas yang dihasilkan. -
SOURCE- Lambda mempertahankan format biner asli data sebagai Base64-encoded string, memungkinkan konversi langsung ke objek Avro atau Protobuf. Format ini sangat penting saat bekerja dengan bahasa yang diketik dengan kuat atau ketika Anda perlu mempertahankan kemampuan penuh skema Avro atau Protobuf.
Berdasarkan karakteristik format dan pertimbangan khusus bahasa ini, kami merekomendasikan format berikut:
| Bahasa | Avro | Protobuf | JSON |
|---|---|---|---|
| Java | SUMBER | SUMBER | SUMBER |
| Python | JSON | JSON | JSON |
| NodeJS | JSON | JSON | JSON |
| .NET | SUMBER | SUMBER | SUMBER |
| Lainnya | JSON | JSON | JSON |
Bagian berikut menjelaskan format ini secara rinci dan memberikan contoh muatan untuk setiap format.
Format JSON
Jika Anda memilih JSON sebagaiEventRecordFormat, Lambda memvalidasi dan mendeserialisasi atribut pesan yang telah Anda pilih di SchemaValidationConfigs bidang (atribut). key and/or value Lambda memberikan atribut yang dipilih ini sebagai string yang dikodekan base64 dari representasi JSON standar mereka dalam fungsi Anda.
catatan
Saat dideserialisasi, Avro dikonversi ke JSON standar, yang berarti tidak dapat langsung dikonversi kembali ke objek Avro. Jika Anda perlu mengonversi ke objek Avro, gunakan format SOURCE sebagai gantinya.
Untuk deserialisasi Protobuf, nama bidang dalam JSON yang dihasilkan cocok dengan yang didefinisikan dalam skema Anda, daripada dikonversi ke kasus unta seperti yang biasanya dilakukan Protobuf. Ingatlah hal ini saat membuat pola penyaringan.
Berikut ini menunjukkan contoh payload, dengan asumsi Anda memilih JSON sebagaiEventRecordFormat, dan value atribut key dan sebagai: SchemaValidationConfigs
{ "eventSource":"aws:kafka", "eventSourceArn":"arn:aws:kafka:us-east-1:123456789012:cluster/vpc-2priv-2pub/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111-1", "bootstrapServers":"b-2.demo-cluster-1.a1bcde.c1.kafka.us-east-1.amazonaws.com:9092,b-1.demo-cluster-1.a1bcde.c1.kafka.us-east-1.amazonaws.com:9092", "records":{ "mytopic-0":[ { "topic":"mytopic", "partition":0, "offset":15, "timestamp":1545084650987, "timestampType":"CREATE_TIME", "key":"abcDEFghiJKLmnoPQRstuVWXyz1234==", //Base64 encoded string of JSON "keySchemaMetadata": { "dataFormat": "AVRO", "schemaId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }, "value":"abcDEFghiJKLmnoPQRstuVWXyz1234", //Base64 encoded string of JSON "valueSchemaMetadata": { "dataFormat": "AVRO", "schemaId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }, "headers":[ { "headerKey":[ 104, 101, 97, 100, 101, 114, 86, 97, 108, 117, 101 ] } ] } ] } }
Dalam contoh ini:
-
Kedu
keyanya danvaluemerupakan string yang dikodekan base64 dari representasi JSON mereka setelah deserialisasi. -
Lambda menyertakan metadata skema untuk atribut di
keySchemaMetadatadanvalueSchemaMetadata. -
Fungsi Anda dapat memecahkan kode
valuestringkeydan untuk mengakses data JSON yang dideserialisasi.
Format JSON direkomendasikan untuk bahasa yang tidak diketik dengan kuat, seperti Python atau Node.js. Bahasa-bahasa ini memiliki dukungan asli untuk mengubah JSON menjadi objek.
Format sumber
Jika Anda memilih SOURCE sebagaiEventRecordFormat, Lambda masih memvalidasi catatan terhadap registri skema, tetapi mengirimkan data biner asli ke fungsi Anda tanpa deserialisasi. Data biner ini dikirimkan sebagai string yang dikodekan Base64 dari data byte asli, dengan metadata yang ditambahkan produsen dihapus. Akibatnya, Anda dapat langsung mengonversi data biner mentah menjadi objek Avro dan Protobuf dalam kode fungsi Anda. Kami merekomendasikan menggunakan Powertools untuk AWS Lambda, yang mendeserialisasi data biner mentah dan memberi Anda objek Avro dan Protobuf secara langsung.
Misalnya, jika Anda mengonfigurasi Lambda untuk memvalidasi value atribut key dan tetapi menggunakan SOURCE format, fungsi Anda menerima payload seperti ini:
{ "eventSource": "aws:kafka", "eventSourceArn": "arn:aws:kafka:us-east-1:123456789012:cluster/vpc-2priv-2pub/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111-1", "bootstrapServers": "b-2.demo-cluster-1.a1bcde.c1.kafka.us-east-1.amazonaws.com:9092,b-1.demo-cluster-1.a1bcde.c1.kafka.us-east-1.amazonaws.com:9092", "records": { "mytopic-0": [ { "topic": "mytopic", "partition": 0, "offset": 15, "timestamp": 1545084650987, "timestampType": "CREATE_TIME", "key": "abcDEFghiJKLmnoPQRstuVWXyz1234==", // Base64 encoded string of Original byte data, producer-appended metadata removed "keySchemaMetadata": { "dataFormat": "AVRO", "schemaId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }, "value": "abcDEFghiJKLmnoPQRstuVWXyz1234==", // Base64 encoded string of Original byte data, producer-appended metadata removed "valueSchemaMetadata": { "dataFormat": "AVRO", "schemaId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }, "headers": [ { "headerKey": [ 104, 101, 97, 100, 101, 114, 86, 97, 108, 117, 101 ] } ] } ] } }
Dalam contoh ini:
-
Kedu
keyanya danvalueberisi data biner asli sebagai string yang dikodekan Base64. -
Fungsi Anda perlu menangani deserialisasi menggunakan pustaka yang sesuai.
Memilih SOURCE untuk EventRecordFormat disarankan jika Anda menggunakan Avro-generated Protobuf-generated objek, terutama dengan fungsi Java. Ini karena Java diketik dengan kuat, dan membutuhkan deserializer khusus untuk format Avro dan Protobuf. Dalam kode fungsi Anda, Anda dapat menggunakan pustaka Avro atau Protobuf pilihan Anda untuk deserialisasi data.
Bekerja dengan data deserialisasi dalam fungsi Lambda
Powertools untuk AWS Lambda membantu Anda mendeserialisasi catatan Kafka dalam kode fungsi Anda berdasarkan format yang Anda gunakan. Utilitas ini menyederhanakan bekerja dengan catatan Kafka dengan menangani konversi data dan menyediakan objek siap pakai.
Untuk menggunakan Powertools untuk AWS Lambda fungsi Anda, Anda perlu menambahkan Powertools baik sebagai lapisan atau AWS Lambda memasukkannya sebagai ketergantungan saat membangun fungsi Lambda Anda. Untuk petunjuk penyiapan dan informasi selengkapnya, lihat Powertools untuk AWS Lambda dokumentasi bahasa pilihan Anda:
catatan
Saat bekerja dengan integrasi registri skema, Anda dapat memilih SOURCE atau mem JSON format. Setiap opsi mendukung format serialisasi yang berbeda seperti yang ditunjukkan di bawah ini:
| Format | Mendukung |
|---|---|
|
SUMBER |
Avro dan Protobuf (menggunakan integrasi Lambda Schema Registry) |
|
JSON |
Data JSON |
Saat menggunakan JSON format SOURCE atau, Anda dapat menggunakan Powertools AWS untuk membantu deserialisasi data dalam kode fungsi Anda. Berikut adalah contoh cara menangani format data yang berbeda:
Metode otentikasi untuk registri skema Anda
Untuk menggunakan registri skema, Lambda harus dapat mengaksesnya dengan aman. Jika Anda bekerja dengan registri AWS Glue skema, Lambda bergantung pada otentikasi IAM. Ini berarti bahwa peran eksekusi fungsi Anda harus memiliki izin berikut untuk mengakses AWS Glue registri:
-
GetRegistrydalam Refer AWS Glue ensi API Web
-
GetSchemaVersiondalam Refer AWS Glue ensi API Web
Contoh kebijakan IAM yang diperlukan:
catatan
Untuk registri AWS Glue skema, jika Anda menyediakan AccessConfigs registri, Lambda mengembalikan peng AWS Glue ecualian validasi.
Jika Anda bekerja dengan registri skema Confluent, Anda dapat memilih salah satu dari tiga metode otentikasi yang didukung untuk Type parameter KafkaSchemaRegistryAccessConfig objek Anda:
-
BASIC_AUTH — Lambda menggunakan nama pengguna dan kata sandi atau API Key dan API Secret otentikasi untuk mengakses registri Anda. Jika Anda memilih opsi ini, berikan ARN Manajer Rahasia yang berisi kredenSIAL Anda di bidang URI.
-
CLIENT_CERTIFICATE_TLS_AUTH — Lambda menggunakan otentikasi TLS bersama dengan sertifikat klien. Untuk menggunakan opsi ini, Lambda memerlukan akses ke sertifikat dan kunci pribadi. Berikan ARN Manajer Rahasia yang berisi kredenSIAL ini di bidang URI.
-
NO_AUTH — Sertifikat CA publik harus ditandatangani oleh otoritas sertifikat (CA) yang ada di penyimpanan kepercayaan Lambda. Untuk CA/self-signed sertifikat pribadi, Anda mengonfigurasi sertifikat CA root server. Untuk menggunakan opsi ini, hilangkan
AccessConfigsparameter.
Selain itu, jika Lambda memerlukan akses ke sertifikat CA pribadi untuk memverifikasi sertifikat TLS registri skema Anda, pilih SERVER_ROOT_CA_CERT sebagai Type dan berikan Secrets Manager ARN ke sertifikat di bidang URI.
catatan
Untuk mengkonfigurasi SERVER_ROOT_CA_CERT opsi di konsol, berikan ARN rahasia yang berisi sertifikat di bidang Enkripsi.
Konfigurasi otentikasi untuk registri skema Anda terpisah dari otentikasi apa pun yang telah Anda konfigurasi untuk klaster Kafka Anda. Anda harus mengkonfigurasi keduanya secara terpisah, bahkan jika mereka menggunakan metode otentikasi serupa.
Penanganan kesalahan dan pemecahan masalah registri skema
Saat menggunakan registri skema dengan sumber acara Amazon MSK Anda, Anda mungkin mengalami berbagai kesalahan. Bagian ini memberikan panduan tentang masalah umum dan cara menyelesaikannya.
Kesalahan konfigurasi
Kesalahan ini terjadi saat menyiapkan konfigurasi registri skema Anda.
- Diperlukan mode yang disediakan
-
Pesan kesalahan:
SchemaRegistryConfig is only available for Provisioned Mode. To configure Schema Registry, please enable Provisioned Mode by specifying MinimumPollers in ProvisionedPollerConfig.Resolusi: Aktifkan mode yang disediakan untuk pemetaan sumber acara Anda dengan mengonfigurasi
MinimumPollersparameter diProvisionedPollerConfig. - URL registri skema tidak valid
-
Pesan kesalahan:
Malformed SchemaRegistryURI provided. Please provide a valid URI or ARN. For example, https://schema-registry.example.com:8081 or arn:aws:glue:us-east-1:123456789012:registry/ExampleRegistry.Resolusi: Berikan URL HTTPS yang valid untuk Confluent Schema Registry atau ARN yang valid untuk S AWS Glue chema Registry.
- Format catatan peristiwa tidak valid atau hilang
-
Pesan kesalahan:
EventRecordFormat is a required field for SchemaRegistryConfig. Please provide one of supported format types: SOURCE, JSON.Resol usi: Tentukan SOURCE atau JSON sebagai konfigurasi registr EventRecordFormat i skema Anda.
- Atribut validasi duplikat
-
Pesan kesalahan:
Duplicate KEY/VALUE Attribute in SchemaValidationConfigs. SchemaValidationConfigs must contain at most one KEY/VALUE Attribute.Resolusi: Hapus duplikat atribut KUNCI atau NILAI dari Anda SchemaValidationConfigs. Setiap jenis atribut hanya dapat muncul sekali.
- Konfigurasi validasi hilang
-
Pesan kesalahan:
SchemaValidationConfigs is a required field for SchemaRegistryConfig.Resolusi: Tambahkan SchemaValidationConfigs ke konfigurasi Anda, tentukan setidaknya satu atribut validasi (KEY atau VALUE).
Kesalahan akses dan izin
Kesalahan ini terjadi ketika Lambda tidak dapat mengakses registri skema karena masalah izin atau otentikasi.
- AWS Glue Akses registri skema ditolak
-
Pesan kesalahan:
Cannot access Glue Schema with provided role. Please ensure the provided role can perform the GetRegistry and GetSchemaVersion Actions on your schema.Resolusi: Tambahkan izin yang diperlukan (
glue:GetRegistrydanglue:GetSchemaVersion) ke peran eksekusi fungsi Anda. - Akses Registry Schema Confluent ditolak
-
Pesan kesalahan:
Cannot access Confluent Schema with the provided access configuration.Resolusi: Verifikasi bahwa kredentif otentikasi Anda (disimpan di Secrets Manager) sudah benar dan memiliki izin yang diperlukan untuk mengakses registri skema.
- Cross-account AWS Glue Registri Skema
-
Pesan kesalahan:
Cross-account Glue Schema Registry ARN not supported.Resolusi: Gunakan Registry AWS Glue Schema yang ada di AWS akun yang sama dengan fungsi Lambda Anda.
- Cross-region AWS Glue Registri Skema
-
Pesan kesalahan:
Cross-region Glue Schema Registry ARN not supported.Resolusi: Gunakan Registry AWS Glue Schema yang berada di wilayah yang sama dengan fungsi Lambda Anda.
- Masalah akses rahasia
-
Pesan kesalahan:
Lambda received InvalidRequestException from Secrets Manager.Resolusi: Verifikasi bahwa peran eksekusi fungsi Anda memiliki izin untuk mengakses rahasia dan bahwa rahasia tidak dienkripsi dengan AWS KMS kunci default jika mengakses dari akun yang berbeda.
Kesalahan koneksi
Kesalahan ini terjadi ketika Lambda tidak dapat membuat koneksi ke registri skema.
- Masalah konektivitas VPC
-
Pesan kesalahan:
Cannot connect to your Schema Registry. Your Kafka cluster's VPC must be able to connect to the schema registry. You can provide access by configuring AWS PrivateLink or a NAT Gateway or VPC Peering between Kafka Cluster VPC and the schema registry VPC.Resolusi: Konfigurasikan jaringan VPC Anda untuk mengizinkan koneksi ke registri skema menggunakan AWS PrivateLink, NAT Gateway, atau peering VPC.
- Kegagalan jabat tangan TLS
-
Pesan kesalahan:
Unable to establish TLS handshake with the schema registry. Please provide correct CA-certificate or client certificate using Secrets Manager to access your schema registry.Resolusi: Verifikasi bahwa sertifikat CA dan sertifikat klien Anda (untuk MTL) sudah benar dan dikonfigurasi dengan benar di Secrets Manager.
- Throttling
-
Pesan kesalahan:
Receiving throttling errors when accessing the schema registry. Please increase API TPS limits for your schema registry.Resol usi: Tingkatkan batas tarif API untuk registri skema Anda atau kurangi tingkat permintaan dari aplikasi Anda.
- Self-managed kesalahan registri skema
-
Pesan kesalahan:
Lambda received an internal server an unexpected error from the provided self-managed schema registry.Resol usi: Periksa kesehatan dan konfigurasi server registri skema mandiri Anda.