

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Membuat pemetaan sumber acara Lambda untuk sumber acara Apache Kafka yang dikelola sendiri
<a name="kafka-esm-create"></a>

[Untuk membuat pemetaan sumber peristiwa, Anda dapat menggunakan konsol Lambda, [AWS Command Line Interface (CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)), atau SDK.AWS](https://aws.amazon.com/getting-started/tools-sdks/)

Langkah-langkah konsol berikut menambahkan cluster Apache Kafka yang dikelola sendiri sebagai pemicu fungsi Lambda Anda. Di bawah tenda, ini menciptakan sumber daya pemetaan sumber peristiwa.

## Prasyarat
<a name="kafka-esm-prereqs"></a>
+ Klaster Apache Kafka yang dikelola sendiri. Lambda mendukung Apache Kafka versi 0.10.1.0 dan yang lebih baru.
+ [Peran eksekusi](lambda-intro-execution-role.md) dengan izin untuk mengakses AWS sumber daya yang digunakan cluster Kafka yang dikelola sendiri oleh Anda.

## Menambahkan klaster Kafka yang dikelola sendiri (konsol)
<a name="kafka-esm-console"></a>

Ikuti langkah-langkah untuk menambahkan klaster Apache Kafka yang dikelola sendiri dan topik Kafka sebagai pemicu untuk fungsi Lambda Anda.

**Untuk menambahkan pemicu Apache Kafka untuk fungsi Lambda Anda (konsol)**

1. Buka [halaman Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda.

1. Pilih nama fungsi Lambda Anda.

1. Di bagian **Gambaran umum fungsi**, pilih **Tambah pemicu**.

1. Pada **Konfigurasi pemicu**, lakukan hal berikut:

   1. Pilih jenis pemicu **Apache Kafka**.

   1. Untuk **Server bootstrap**, masukkan alamat pasangan host dan port broker Kafka di klaster Anda, lalu pilih **Tambahkan**. Ulangi untuk setiap broker Kafka di klaster.

   1. Untuk **Nama topik**, masukkan nama topik Kafka yang digunakan untuk menyimpan catatan dalam klaster.

   1. Jika Anda mengonfigurasi mode yang disediakan, masukkan nilai untuk poller **peristiwa Minimum, nilai untuk poller** **peristiwa maksimum**, dan nilai opsional PollerGroupName untuk menentukan pengelompokan beberapa ESMs dalam VPC sumber peristiwa yang sama.

   1. (Opsional) Untuk **Ukuran batch**, masukkan jumlah maksimum catatan yang akan diterima dalam satu batch.

   1. Untuk **jendela Batch**, masukkan jumlah maksimum detik yang dihabiskan Lambda untuk mengumpulkan catatan sebelum menjalankan fungsi.

   1. (Opsional) Untuk **ID grup Konsumen**, masukkan ID grup konsumen Kafka untuk bergabung.

   1. (Opsional) Untuk **posisi Mulai**, pilih **Terbaru** untuk mulai membaca aliran dari catatan terbaru, **Potong cakrawala** untuk memulai pada catatan paling awal yang tersedia, atau **Pada stempel waktu untuk menentukan stempel** waktu untuk mulai membaca.

   1. (Opsional) Untuk **VPC**, pilih Amazon VPC untuk cluster Kafka Anda. **Kemudian, pilih **subnet VPC dan grup keamanan** VPC.**

      Pengaturan ini diperlukan jika hanya pengguna dalam VPC Anda yang mengakses broker Anda.

      

   1. (Opsional) Untuk **Otentikasi**, pilih **Tambah**, lalu lakukan hal berikut:

      1. Pilih protokol akses atau otentikasi broker Kafka di cluster Anda.
         + **Jika broker Kafka Anda menggunakan SASL/PLAIN otentikasi, pilih BASIC\$1AUTH.**
         + Jika broker Anda menggunakan SASL/SCRAM otentikasi, pilih salah satu **SASL\$1SCRAM**protokol.
         + **Jika Anda mengonfigurasi otentikasi mTLS, pilih protokol CLIENT\$1CERTIFICATE\$1TLS\$1AUTH.**

      1. Untuk SASL/SCRAM atau otentikasi mTLS, pilih kunci rahasia Secrets Manager yang berisi kredensyal untuk cluster Kafka Anda.

   1. (Opsional) Untuk **Enkripsi**, pilih rahasia Secrets Manager yang berisi sertifikat CA root yang digunakan broker Kafka Anda untuk enkripsi TLS, jika broker Kafka Anda menggunakan sertifikat yang ditandatangani oleh CA pribadi.

      Pengaturan ini berlaku untuk enkripsi TLS untuk SASL/SCRAM atau SASL/PLAIN, dan untuk otentikasi mTLS.

   1. Untuk membuat pemicu dalam status nonaktif untuk pengujian (disarankan), hapus **Aktifkan pemicu**. Atau, untuk segera mengaktifkan pemicu, pilih **Aktifkan pemicu**.

1. Untuk membuat pemicu, pilih **Tambahkan**.

## Menambahkan klaster Kafka yang dikelola sendiri (AWS CLI)
<a name="kafka-esm-cli"></a>

Gunakan contoh AWS CLI perintah berikut untuk membuat dan melihat pemicu Apache Kafka yang dikelola sendiri untuk fungsi Lambda Anda.

### Menggunakan SASL/SCRAM
<a name="kafka-esm-cli-create"></a>

Jika pengguna Kafka mengakses broker Kafka Anda melalui internet, tentukan rahasia Secrets Manager yang Anda buat untuk SASL/SCRAM otentikasi. Contoh berikut menggunakan [create-event-source-mapping](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/create-event-source-mapping.html) AWS CLI perintah untuk memetakan fungsi Lambda bernama `my-kafka-function` ke topik Kafka bernama. `AWSKafkaTopic`

```
aws lambda create-event-source-mapping \ 
  --topics AWSKafkaTopic \
  --source-access-configuration Type=SASL_SCRAM_512_AUTH,URI=arn:aws:secretsmanager:us-east-1:111122223333:secret:MyBrokerSecretName \
  --function-name arn:aws:lambda:us-east-1:111122223333:function:my-kafka-function \
  --self-managed-event-source '{"Endpoints":{"KAFKA_BOOTSTRAP_SERVERS":["abc3.xyz.com:9092", "abc2.xyz.com:9092"]}}'
```

### Menggunakan VPC
<a name="kafka-esm-cli-create-vpc"></a>

Jika hanya Kafka pengguna dalam VPC Anda yang mengakses broker Kafka Anda, Anda harus menentukan VPC, subnet, dan grup keamanan VPC Anda. Contoh berikut menggunakan [create-event-source-mapping](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/create-event-source-mapping.html) AWS CLI perintah untuk memetakan fungsi Lambda bernama `my-kafka-function` ke topik Kafka bernama. `AWSKafkaTopic`

```
aws lambda create-event-source-mapping \ 
  --topics AWSKafkaTopic \
  --source-access-configuration '[{"Type": "VPC_SUBNET", "URI": "subnet:subnet-0011001100"}, {"Type": "VPC_SUBNET", "URI": "subnet:subnet-0022002200"}, {"Type": "VPC_SECURITY_GROUP", "URI": "security_group:sg-0123456789"}]' \
  --function-name arn:aws:lambda:us-east-1:111122223333:function:my-kafka-function \
  --self-managed-event-source '{"Endpoints":{"KAFKA_BOOTSTRAP_SERVERS":["abc3.xyz.com:9092", "abc2.xyz.com:9092"]}}'
```

### Melihat status menggunakan AWS CLI
<a name="kafka-esm-cli-view"></a>

Contoh berikut menggunakan [get-event-source-mapping](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lambda/get-event-source-mapping.html) AWS CLI perintah untuk menggambarkan status pemetaan sumber peristiwa yang Anda buat.

```
aws lambda get-event-source-mapping
              --uuid dh38738e-992b-343a-1077-3478934hjkfd7
```