ApsaraMQ for Kafka dapat disambungkan ke Filebeat sebagai input. Topik ini menjelaskan cara menggunakan Filebeat untuk mengonsumsi pesan dari instans ApsaraMQ for Kafka melalui internet.
Informasi latar belakang
Sebelum memulai, selesaikan tugas-tugas berikut:
Beli dan deploy instans ApsaraMQ for Kafka. Topik ini menggunakan contoh instans non-serverless. Untuk informasi selengkapnya, lihat Sambungkan ke instans melalui internet dan VPC.
Unduh dan instal Filebeat. Untuk informasi selengkapnya, lihat Unduh Filebeat.
Unduh dan instal JDK 8. Untuk informasi selengkapnya, lihat Unduh JDK 8.
Langkah 1: Dapatkan titik akhir
Filebeat terhubung ke ApsaraMQ for Kafka melalui titik akhir ApsaraMQ for Kafka.
Masuk ke Konsol ApsaraMQ for Kafka.
Di bagian Resource Distribution pada halaman Overview, pilih wilayah tempat instans ApsaraMQ for Kafka yang ingin Anda kelola berada.
Pada halaman Instances, klik nama instans yang ingin Anda sambungkan ke Filebeat sebagai input.
Di bagian Endpoint Information pada halaman Instance Details, lihat titik akhir instans tersebut. Di bagian Configuration Information, peroleh nilai parameter Username dan Password.
CatatanUntuk informasi tentang perbedaan antara berbagai jenis titik akhir, lihat Perbandingan antar titik akhir.
Langkah 2: Buat topik
Buat topik untuk menyimpan pesan.
Masuk ke Konsol ApsaraMQ for Kafka.
Di bagian Resource Distribution pada halaman Overview, pilih wilayah tempat instans ApsaraMQ for Kafka yang ingin Anda kelola berada.
PentingAnda harus membuat topik di wilayah tempat instans Elastic Compute Service (ECS) Anda dideploy. Topik tidak dapat digunakan lintas wilayah. Misalnya, jika produsen dan konsumen pesan berjalan pada instans ECS yang dideploy di wilayah Tiongkok (Beijing), topik juga harus dibuat di wilayah Tiongkok (Beijing).
Pada halaman Instances, klik nama instans yang ingin Anda kelola.
Di panel navigasi sebelah kiri, klik Topics.
Pada halaman Topics, klik Create Topic.
Di panel Create Topic, tentukan properti topik dan klik OK.
Parameter
Deskripsi
Contoh
Name
Nama topik.
demo
Description
Deskripsi topik.
demo test
Partitions
Jumlah partisi dalam topik.
12
Storage Engine
CatatanAnda hanya dapat menentukan jenis mesin penyimpanan jika menggunakan instans Edisi Profesional non-serverless. Untuk jenis instans lainnya, Cloud Storage dipilih secara default.
Jenis mesin penyimpanan yang digunakan untuk menyimpan pesan dalam topik.
ApsaraMQ for Kafka mendukung jenis mesin penyimpanan berikut:
Cloud Storage: Jika Anda memilih nilai ini, sistem menggunakan disk Alibaba Cloud untuk topik dan menyimpan data dalam tiga replika secara terdistribusi. Mesin penyimpanan ini memiliki latensi rendah, performa tinggi, daya tahan panjang, dan keandalan tinggi. Jika Anda mengatur parameter Instance Edition ke Standard (High Write) saat membuat instans, Anda hanya dapat mengatur parameter ini ke Cloud Storage.
Local Storage: Jika Anda memilih nilai ini, sistem menggunakan algoritma in-sync replicas (ISR) dari Apache Kafka open source dan menyimpan data dalam tiga replika secara terdistribusi.
Cloud Storage
Message Type
Jenis pesan topik. Nilai yang valid:
Normal Message: Secara default, pesan yang memiliki kunci yang sama disimpan dalam partisi yang sama sesuai urutan pengiriman pesan. Jika broker dalam kluster gagal, urutan pesan yang disimpan dalam partisi mungkin tidak dipertahankan. Jika Anda mengatur parameter Storage Engine ke Cloud Storage, parameter ini secara otomatis diatur ke Normal Message.
Partitionally Ordered Message: Secara default, pesan yang memiliki kunci yang sama disimpan dalam partisi yang sama sesuai urutan pengiriman pesan. Jika broker dalam kluster gagal, pesan tetap disimpan dalam partisi sesuai urutan pengiriman pesan. Pesan dalam beberapa partisi tidak dapat dikirim hingga partisi tersebut dipulihkan. Jika Anda mengatur parameter Storage Engine ke Local Storage, parameter ini secara otomatis diatur ke Partitionally Ordered Message.
Normal Message
Log Cleanup Policy
Kebijakan pembersihan log yang digunakan oleh topik.
Jika Anda mengatur parameter Storage Engine ke Local Storage, Anda harus mengonfigurasi parameter Log Cleanup Policy. Anda hanya dapat mengatur parameter Mesin Penyimpanan ke Local Storage jika menggunakan instans ApsaraMQ for Kafka Edisi Profesional.
ApsaraMQ for Kafka menyediakan kebijakan pembersihan log berikut:
Delete: kebijakan pembersihan log default. Jika ruang penyimpanan yang tersedia mencukupi, pesan disimpan berdasarkan periode retensi maksimum. Setelah penggunaan penyimpanan melebihi 85%, sistem akan menghapus pesan yang paling awal disimpan untuk memastikan ketersediaan layanan.
Compact: kebijakan kompaksi log yang digunakan dalam Apache Kafka. Kompaksi log memastikan bahwa nilai terbaru dipertahankan untuk pesan yang memiliki kunci yang sama. Kebijakan ini cocok untuk skenario seperti memulihkan sistem yang gagal atau memuat ulang cache setelah sistem dimulai ulang. Misalnya, ketika Anda menggunakan Kafka Connect atau Confluent Schema Registry, Anda harus menyimpan informasi tentang status dan konfigurasi sistem dalam topik dengan kompaksi log.
PentingAnda hanya dapat menggunakan topik dengan kompaksi log dalam komponen cloud-native tertentu, seperti Kafka Connect dan Confluent Schema Registry. Untuk informasi selengkapnya, lihat aliware-kafka-demos.
Compact
Tag
Tag yang ingin Anda lampirkan ke topik.
demo
Setelah topik dibuat, Anda dapat melihat topik tersebut di halaman Topics.
Langkah 3: Kirim pesan
Kirim pesan ke topik yang telah Anda buat.
Masuk ke Konsol ApsaraMQ for Kafka.
Di bagian Resource Distribution pada halaman Overview, pilih wilayah tempat instans ApsaraMQ for Kafka yang ingin Anda kelola berada.
Pada halaman Instances, klik nama instans yang ingin Anda kelola.
Di panel navigasi sebelah kiri, klik Topics.
Pada halaman Topics, klik nama topik yang ingin Anda kelola. Di pojok kanan atas halaman Topic Details, klik Send Message.Name
Di panel Start to Send and Consume Message, konfigurasikan parameter untuk mengirim pesan uji coba.
Jika Anda mengatur parameter Sending Method ke Console, lakukan langkah-langkah berikut:
Di bidang Message Key, masukkan kunci pesan. Contoh: demo.
Di bidang Message Content, masukkan konten pesan. Contoh: {"key": "test"}.
Konfigurasikan parameter Send to Specified Partition untuk menentukan apakah akan mengirim pesan uji coba ke partisi tertentu.
Jika Anda ingin mengirim pesan uji coba ke partisi tertentu, klik Yes dan masukkan ID partisi di bidang Partition ID. Contoh: 0. Untuk informasi tentang cara menanyakan ID partisi, lihat Lihat status partisi.
Jika Anda tidak ingin mengirim pesan uji coba ke partisi tertentu, klik No.
Gunakan SDK ApsaraMQ for Kafka atau jalankan perintah Docker yang ditampilkan di panel Mulai Mengirim dan Mengonsumsi Pesan untuk berlangganan pesan uji coba.
Jika Anda mengatur parameter Sending Method ke Docker, lakukan langkah-langkah berikut untuk menjalankan kontainer Docker:
Jalankan perintah Docker yang ditampilkan di bagian Run the Docker container to produce a sample message untuk mengirim pesan uji coba.
Jalankan perintah Docker yang ditampilkan di bagian How do I consume a message after the message is sent? untuk berlangganan pesan uji coba.
Jika Anda mengatur parameter Sending Method ke SDK, pilih SDK untuk bahasa pemrograman atau framework yang diperlukan serta metode akses untuk mengirim dan berlangganan pesan uji coba.
Langkah 4: Buat grup
Buat Grup untuk Filebeat.
Masuk ke Konsol ApsaraMQ for Kafka.
Di bagian Resource Distribution pada halaman Overview, pilih wilayah tempat instans ApsaraMQ for Kafka yang ingin Anda kelola berada.
Pada halaman Instances, klik nama instans yang ingin Anda kelola.
Di panel navigasi sebelah kiri, klik Groups.
Pada halaman Groups, klik Create Group.
Di panel Create Group, masukkan nama grup di bidang Group ID dan deskripsi grup di bidang Description, lampirkan tag ke grup, lalu klik OK.
Setelah membuat kelompok konsumen, Anda dapat melihat kelompok konsumen tersebut di halaman Groups.
Langkah 5: Gunakan Filebeat untuk mengonsumsi pesan
Jalankan Filebeat di server tempat Filebeat diinstal untuk mengonsumsi pesan dari topik yang telah Anda buat.
Jalankan perintah cd untuk beralih ke direktori instalasi Filebeat.
Jalankan perintah berikut untuk mengunduh file sertifikat otoritas sertifikat (CA).
wget https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20220826/ytsw/only-4096-ca-certBuat file konfigurasi bernama input.yml.
Jalankan perintah
vim input.ymluntuk membuat file konfigurasi kosong.Tekan tombol i untuk memasuki mode insert.
Masukkan konten berikut.
filebeat.inputs: - type: kafka hosts: - alikafka-pre-cn-zv**********-1.alikafka.aliyuncs.com:9093 - alikafka-pre-cn-zv**********-2.alikafka.aliyuncs.com:9093 - alikafka-pre-cn-zv**********-3.alikafka.aliyuncs.com:9093 username: "alikafka_pre-cn-v641e1dt***" password: "aeN3WLRoMPRXmAP2jvJuGk84Kuuo***" topics: ["filebeat_test"] group_id: "filebeat_group" ssl.certificate_authorities: ["/home/admin/filebeat/filebeat-7.7.0-linux-x86_64/ca-cert"] ssl.verification_mode: none output.console: pretty: trueParameter
Deskripsi
Nilai contoh
hosts
Titik akhir publik yang disediakan oleh ApsaraMQ for Kafka adalah titik akhir SSL.
- alikafka-pre-cn-zv**********-1.alikafka.aliyuncs.com:9093 - alikafka-pre-cn-zv**********-2.alikafka.aliyuncs.com:9093 - alikafka-pre-cn-zv**********-3.alikafka.aliyuncs.com:9093username
Username instans yang terhubung ke Internet dan VPC.
alikafka_pre-cn-v641e1d***
password
Password instans yang terhubung ke Internet dan VPC.
aeN3WLRoMPRXmAP2jvJuGk84Kuuo***
topics
Nama topik.
filebeat_test
group_id
Nama Grup.
filebeat_group
ssl.certificate_authorities
Jalur tempat sertifikat CA disimpan.
/home/admin/filebeat/filebeat-7.7.0-linux-x86_64/ca-cert
ssl.verification_mode
Mode autentikasi.
none
Untuk informasi selengkapnya tentang parameter, lihat Plugin input Kafka.
Tekan tombol Esc untuk kembali ke mode CLI.
Tekan tombol : untuk memasuki mode baris bawah. Masukkan wq dan tekan tombol Enter untuk menyimpan file dan keluar.
Jalankan perintah berikut untuk mengonsumsi pesan.
./filebeat -c ./input.yml