Ringkasan Managed Service for Apache Kafka

Managed Service for Apache Kafka adalah layanan yang membantu Anda menjalankan cluster Apache Kafka open source yang aman dan skalabel. Google Cloud Halaman ini memberikan ringkasan tentang apa yang diotomatiskan dan disederhanakan oleh layanan ini untuk Anda. Untuk mengetahui informasi selengkapnya tentang Apache Kafka, lihat situs Apache Kafka.

Penentuan ukuran dan penskalaan yang sederhana

Untuk menentukan ukuran atau menskalakan cluster Managed Service for Apache Kafka, Anda hanya perlu menetapkan jumlah vCPU total dan ukuran RAM untuk cluster. Pengelolaan broker, termasuk penyimpanan, sepenuhnya otomatis. Untuk memenuhi permintaan klien, Anda dapat memantau penggunaan vCPU dan resource lainnya, lalu menyesuaikannya ke atas atau ke bawah.

Saat Anda menetapkan jumlah vCPU dan ukuran RAM, layanan akan mengotomatiskan pengubahan ukuran dan penyediaan broker. Jika peningkatan ukuran cluster memerlukan broker baru, layanan dapat secara otomatis menyeimbangkan ulang partisi di seluruh broker.

Penyediaan broker

Saat Anda mengonfigurasi ukuran total vCPU dan RAM untuk cluster, layanan akan menyediakan broker baru dan menskalakan broker yang ada. Untuk konfigurasi cluster umum, ukuran total vCPU dan RAM dibagi secara merata di semua broker. Artinya, jumlah vCPU fraksional per broker diizinkan, meskipun diperlukan minimum satu vCPU per broker. Semua cluster didistribusikan di tiga zona. Artinya, diperlukan minimal 3 vCPU dan RAM 3 GiB per cluster.

Saat Anda meningkatkan ukuran cluster, broker akan diskalakan secara vertikal hingga 15 vCPU per broker. Setelah batas ini tercapai, layanan akan membuat broker baru. Saat Anda mengurangi ukuran cluster, broker yang ada akan di-scale down ke satu vCPU, tetapi tidak dihapus.

Ukuran broker maksimum dapat berubah kapan saja. Batas ini dipilih untuk mempertahankan penskalaan linear throughput broker dengan jumlah vCPU.

Algoritma penskalaan

Jumlah broker ditentukan oleh total kapasitas vCPU atau memori cluster. Rasio penskalaan adalah 1 broker untuk setiap 15 vCPU atau 120 gibibyte (GiB) resource, mana saja yang menghasilkan jumlah broker yang lebih besar. Rasio vCPU terhadap memori (vCPU:GiB) harus tetap antara 1:1 dan 1:8. Broker didistribusikan secara merata di antara 3 zona, dengan perbedaan maksimum satu.

Misalnya, jika Anda mengonfigurasi cluster dengan 70 vCPU dan RAM 130 GiB, beserta faktor replikasi 3, perhitungan berikut menentukan jumlah broker:

  • Menghitung jumlah broker yang diperlukan untuk memperhitungkan vCPU: ceiling(70 vCPUs / 15 vCPUs) = 5 broker

  • Hitung jumlah broker yang diperlukan untuk memperhitungkan memori: ceiling(130 GiB / 120 GiB) = 2 broker

Dalam skenario ini, cluster memiliki 5 broker, karena jumlah broker ditentukan oleh jumlah vCPU. Dua dari 3 zona masing-masing memiliki 2 broker yang ditetapkan, dan zona terakhir memiliki 1 broker.

Pengelolaan penyimpanan

Pengelolaan penyimpanan dilakukan secara otomatis. Dalam sebagian besar situasi, Anda bertanggung jawab untuk menetapkan waktu retensi pada setiap topik untuk mengontrol biaya atau memenuhi kebijakan retensi data Anda. Anda tidak perlu menyediakan dan mengelola disk persisten.

Layanan ini mengandalkan penyimpanan bertingkat (KIP-405). Penyimpanan bertingkat menggabungkan volume persistent disk yang telah disediakan sebelumnya dan terpasang ke broker dengan penyimpanan objek yang hampir tak terbatas.

Layanan ini mengalokasikan setidaknya 100 GiB persistent disk SSD untuk setiap vCPU guna menyeimbangkan performa, ketersediaan, dan biaya. Anda akan ditagih untuk 100 GiB per vCPU, meskipun ukuran disk sebenarnya per broker mungkin melebihi nilai ini. Ukuran disk per broker tidak pernah berkurang, meskipun cluster di-scale down.

Setiap pemimpin partisi menyimpan pesan dalam file segmen di disk persisten ini. Setelah segmen di-roll, segmen tersebut dipindahkan ke penyimpanan objek persisten yang didukung oleh Cloud Storage regional. Ukuran file segmen ini ditetapkan oleh setelan log.roll.ms dan log.segment.bytes.

Meskipun detail ini berguna untuk dipahami, penyimpanan dikelola oleh layanan. Konfigurasi spesifik, seperti jumlah kapasitas persistent disk per vCPU, adalah detail implementasi yang dapat berubah. Anda tidak memiliki akses langsung ke bucket Cloud Storage yang digunakan untuk penyimpanan persisten.

Penyeimbangan ulang

Agar broker yang baru disediakan berguna dalam mempertahankan performa, beberapa traffic dari broker yang ada harus dipindahkan ke mesin baru ini. Untuk mempermudah hal ini, Anda dapat mengaktifkan penyeimbangan ulang otomatis.

Dengan penyeimbangan ulang otomatis diaktifkan, saat broker baru disediakan, layanan akan otomatis menyeimbangkan ulang partisi dari broker yang ada. Model penyimpanan bertingkat memverifikasi bahwa sejumlah kecil data harus disalin ke broker baru, sehingga mempercepat penyeimbangan ulang.

Algoritma penyeimbangan ulang didasarkan pada jumlah partisi. Metrik ini tidak memperhitungkan traffic sebenarnya yang ditayangkan oleh setiap partisi.

Jaringan yang fleksibel

Layanan ini membuat cluster dapat diakses dari VPC mana pun secara aman. Hal ini mencakup akses dari beberapa VPC, project, dan region.

Untuk mengonfigurasi jaringan untuk cluster, Anda menyediakan kumpulan subnet tempat cluster dapat diakses. Layanan ini menyediakan alamat IP pribadi untuk server bootstrap dan broker di setiap subnet. Selain itu, Cloud DNS pribadi juga disiapkan dengan URL untuk setiap alamat IP. Server bootstrap memiliki load balancer, sehingga ada satu URL bootstrap per cluster. URL sama di semua VPC sehingga konfigurasi klien dapat konsisten di seluruh lingkungan.

Tingkat fleksibilitas ini dicapai berkat Private Service Connect (PSC). Setiap alamat IP yang dialokasikan untuk cluster memerlukan endpoint PSC. Endpoint disediakan secara otomatis.

Mengamankan cluster

Layanan ini menawarkan fitur berikut untuk keamanan cluster: autentikasi, otorisasi, enkripsi, patching, dan isolasi resource. Fitur ini juga melarang koneksi dan penyimpanan yang tidak diautentikasi dan tidak terenkripsi.

Autentikasi

Layanan ini mendukung dua metode autentikasi: Simple Authentication and Security Layer (SASL) dan mutual TLS (mTLS). Autentikasi mTLS tersedia di cluster yang dibuat setelah 24 Juni 2025. Semua koneksi ke cluster terkelola diautentikasi dengan principal yang merupakan identitas IAM menggunakan SASL atau sertifikat klien menggunakan mTLS. Akun manusia, layanan, dan gabungan didukung sebagai prinsipal saat menggunakan SASL.

Layanan ini tidak mendukung protokol lain, termasuk SASL/GSSAPI, SASL/SCRAM-SHA-256, dan SASL/SCRAM-SHA-512. Layanan ini juga tidak mengizinkan koneksi yang tidak diautentikasi.

Otorisasi

Layanan ini menggunakan pendekatan berlayer untuk otorisasi. IAM mengontrol tindakan pengelolaan cluster seperti membuat, memperbarui, dan menghapus resource. Otorisasi untuk prinsipal yang diautentikasi bergantung pada metode yang digunakan:

  • SASL: Akun utama yang menggunakan IAM diizinkan melalui Google Cloud binding peran IAM atau dengan ACL Kafka di cluster. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi autentikasi SASL.

  • mTLS: Principal yang mengautentikasi dengan mTLS diizinkan melalui ACL Kafka. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi autentikasi mTLS.

Anda dapat mengelola ACL Kafka dengan alat Google Cloud atau alat Kafka pihak ketiga. Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi IAM dan ACL Kafka, lihat Kontrol akses dengan IAM dan ACL Kafka.

Enkripsi

Enkripsi diperlukan. Semua koneksi ke cluster harus menggunakan TLS. Sertifikat TLS yang ditampilkan oleh broker ditandatangani oleh Certificate Authority Publik. Data yang disimpan selalu dienkripsi. Pilih apakah akan menggunakan kunci enkripsi yang dikelola Google atau Kunci enkripsi yang dikelola pelanggan (CMEK) untuk enkripsi saat istirahat.

Membuat patch

Tim layanan melacak kerentanan keamanan yang ditemukan dalam kode open source. Saat layanan menemukan kerentanan, layanan akan otomatis menambal cluster Anda.

Isolasi resource

Fitur keamanan lain dari layanan ini adalah isolasi resource. Layanan terkelola men-deploy cluster di project tenant dalam VPC pribadi yang tidak dapat diakses melalui alamat IP publik. Setiap project Anda memiliki project tenant khusus, dengan akun agen layanan khusus. Hal ini membantu membatasi cakupan akses yang diberikan ke layanan.

Registry skema

Untuk menyederhanakan koordinasi antara produsen dan konsumen, Managed Service for Apache Kafka menyertakan API registry skema. Registry yang disediakan oleh layanan berfungsi sebagai repositori skema yang dibagikan di antara aplikasi.

Layanan ini menerapkan Confluent Schema Registry REST API yang membantu integrasi dengan aplikasi Kafka yang ada. Format skema Apache Avro dan Protocol Buffer (Protobuf) didukung. JSON tidak didukung.

Managed Service for Apache Kafka juga menawarkan API dan toolset administratif untuk mengelola registri skema dan skema. Toolset ini mencakup konsolGoogle Cloud , gcloud CLI, dan library klien.

Untuk mengetahui informasi selengkapnya tentang schema registry, lihat Ringkasan schema registry.

Integrasi data dengan Kafka Connect

Managed Service untuk Apache Kafka menyederhanakan integrasi data melalui Kafka Connect. Kafka Connect menawarkan beberapa plugin konektor bawaan yang dihosting di cluster Connect. Konektor ini digunakan untuk migrasi, pencadangan, pemulihan bencana, ketersediaan tinggi, dan integrasi data. Konektor ini memungkinkan Anda menghubungkan cluster Managed Service for Apache Kafka ke berbagai sistem, termasuk deployment Kafka lainnya dan layanan seperti BigQuery, Cloud Storage, dan Pub/Sub. Google Cloud Kafka Connect menyediakan integrasi data yang skalabel dan andal dengan overhead operasional yang lebih rendah serta pemantauan dan logging yang terintegrasi.

Untuk mengetahui Kafka Connect lebih lanjut, lihat Ringkasan Kafka Connect.

Cluster ketersediaan tinggi

Tujuan layanan ini adalah menyediakan cluster regional untuk aplikasi penting. Secara khusus, layanan ini melindungi Anda dari kegagalan zona atau broker individual.

Untuk mencapai hal ini, semua cluster disediakan dalam konfigurasi tiga zona yang kompatibel dengan rak. Konfigurasi topik default memerlukan setidaknya tiga replika. Kesadaran rak memastikan bahwa replika dibuat di zona yang berbeda. Jumlah minimum replika yang sinkron secara default adalah dua. Artinya, cluster Anda dapat mentoleransi hilangnya zona atau broker secara keseluruhan.

Jika broker gagal, karena kegagalan software, hardware, atau jaringan, broker tersebut akan diganti secara otomatis. Saat mendeteksi kegagalan broker, layanan akan memulainya ulang secara otomatis, di komputer lain jika perlu. Setelah broker tersedia, Apache Kafka akan mengintegrasikan broker ke dalam cluster. Kegagalan zona lengkap dapat membuat pembuatan broker baru menjadi tidak mungkin. Namun, cluster akan terus beroperasi selama dua zona lainnya tetap tersedia.

Selain fitur khusus ini, daftar alat dan proses internal yang terus bertambah secara proaktif menjaga kesehatan layanan, kode Apache Kafka, dan update. Pencadangan data dan metadata dipertahankan di beberapa tingkat, sehingga layanan dapat dipulihkan dari banyak kesalahan manusia dan kegagalan software.

Layanan ini tidak memberikan perlindungan dari kegagalan regional atau zona ganda. Untuk aplikasi yang memerlukan tingkat perlindungan ini, sebaiknya jalankan dua cluster regional terpisah. Anda dapat menyinkronkan data antara dua cluster menggunakan alat seperti MirrorMaker 2.0 dari Kafka Connect.

Alat untuk gaya administrasi Anda

Layanan ini bertujuan untuk menawarkan serangkaian lengkap alat untuk gaya pengelolaan dan pemecahan masalah cluster Anda. Hal ini mencakup alat untuk administrasi, pemantauan, dan logging.

Managed Service for Apache Kafka diekspos sebagai Google Cloud API. Artinya, Anda dapat mengelola cluster dan resource cluster menggunakan REST dan gRPC API. Beberapa klien dan antarmuka disediakan untuk API ini, termasuk

  • Penyedia Terraform jika Anda lebih memilih pendekatan infrastructure as code.
  • UI di konsol Google Cloud untuk pekerjaan interaktif di browser.
  • gcloud CLI untuk pekerjaan interaktif di shell.
  • Library klien dalam Java, Python, Go, dan bahasa lainnya untuk pengembangan dan pembuatan skrip kustom.

Untuk pemantauan dan pemecahan masalah, layanan ini mengekspor metrik ke Cloud Monitoring. Beberapa metrik tersedia di UI layanan. Set lengkap tersedia di Cloud Monitoring untuk pekerjaan interaktif, mengonfigurasi pemberitahuan, dan mengekspor ke sistem lain.

Layanan ini juga mengekspor log broker ke Cloud Logging. Log ini dapat ditelusuri dan dapat digunakan untuk membuat metrik dan pemberitahuan berbasis log.

Upgrade dan patch

Cluster Managed Service for Apache Kafka berjalan di Apache Kafka versi 3.7.1. Layanan ini otomatis menerapkan patch pada kerentanan keamanan yang kritis.

Update pada infrastruktur pokok, termasuk sistem operasi dan lapisan orkestrasi, dilakukan secara berkelanjutan dan otomatis. Broker diupdate dengan mulai ulang berkelanjutan, tanpa periode nonaktif pada cluster.

Layanan ini tidak otomatis mengupgrade kode Apache Kafka yang berjalan di broker ke versi minor baru.

Biaya transparan

Model harga untuk Managed Service for Apache Kafka mirip dengan biaya yang Anda lihat saat menjalankan Apache Kafka sendiri di Compute Engine. Anda membayar resource yang Anda sediakan—vCPU, RAM, dan penyimpanan lokal—dan gunakan—penyimpanan persisten dan transfer data. Biaya penyimpanan persisten dan vCPU lebih mahal dengan Managed Service for Apache Kafka dibandingkan dengan menyiapkan sistem serupa sendiri. Sebaliknya, harga transfer data dan penyimpanan lokal serupa antara Managed Service for Apache Kafka dan Kafka yang dikelola sendiri. Untuk mengetahui informasi selengkapnya tentang harga, lihat Harga Managed Service for Apache Kafka.

Kompatibel karena kami menjalankan Apache Kafka

Terakhir, Managed Service for Apache Kafka menjalankan software open source yang sama yang mungkin sudah Anda jalankan di lingkungan Anda. Anda tidak perlu mengubah kode aplikasi untuk memigrasikannya ke layanan.

Batasan

Managed Service for Apache Kafka memiliki batasan berikut:

  • Setiap cluster harus memiliki resource yang sama di setiap dari tiga zona. Cluster Managed Service untuk Apache Kafka satu zona atau dua zona tidak didukung.

  • Anda tidak dapat memilih zona saat membuat cluster.

  • Anda tidak dapat mengonfigurasi volume penyimpanan lokal pada cluster.

  • Managed Service for Apache Kafka berjalan dalam mode KRaft. Mode Zookeeper tidak didukung.

  • JMX API untuk metrik tidak didukung.

  • Kompresi topik dengan zstd tidak didukung. Nilai yang didukung untuk compression.type mencakup lz4, gzip, snappy, dan uncompressed.

  • Meskipun Anda dapat mengubah konfigurasi broker dengan mode update read-only kapan saja, perubahan ini hanya akan diterapkan saat broker dimulai ulang. Restart terjadi secara berkala sebagai bagian dari proses pemeliharaan dan upgrade Google, tetapi tidak ada jadwal yang ditetapkan atau cara untuk memicunya secara manual. Akibatnya, Anda tidak dapat mengontrol kapan perubahan ini diterapkan. Contoh konfigurasi read-only mencakup auto.create.topics.enable dan background.threads. Update pada konfigurasi dengan mode update cluster-wide, seperti message.max.bytes, tidak memerlukan mulai ulang dan akan segera berlaku.

  • Beberapa parameter konfigurasi broker dikelola oleh layanan dan tidak dapat diperbarui. Hal ini mencakup broker.id dan setelan terkait penyimpanan, seperti remote.log.storage.system.enable.

Apa langkah selanjutnya?

Apache Kafka® adalah merek dagang terdaftar milik The Apache Software Foundation atau afiliasinya di Amerika Serikat dan/atau negara lain.