Pemantauan terbuka dengan Prometheus - Amazon Managed Streaming untuk Apache Kafka

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

Pemantauan terbuka dengan Prometheus

Anda dapat memantau MSK cluster Anda dengan Prometheus, sistem pemantauan sumber terbuka untuk data metrik deret waktu. Anda dapat mempublikasikan data ini ke Amazon Managed Service untuk Prometheus menggunakan fitur tulis jarak jauh Prometheus. Anda juga dapat menggunakan alat yang kompatibel dengan metrik atau alat berformat Prometheus yang terintegrasi dengan Amazon MSK Open Monitoring, seperti Datadog, Lensa, Relik Baru, dan logika Sumo. Pemantauan terbuka tersedia secara gratis tetapi biaya berlaku untuk transfer data di seluruh Availability Zone. Untuk informasi tentang Prometheus, lihat dokumentasi Prometheus.

Membuat MSK klaster Amazon dengan pemantauan terbuka diaktifkan

Menggunakan AWS Management Console
  1. Masuk ke AWS Management Console, dan buka MSK konsol Amazon di https://console.aws.amazon.com/msk/rumah? region=us-east-1#/home/.

  2. Di bagian Pemantauan, pilih kotak centang di sebelah Aktifkan pemantauan terbuka dengan Prometheus.

  3. Berikan informasi yang diperlukan di semua bagian halaman, dan tinjau semua opsi yang tersedia.

  4. Pilih Buat klaster.

Menggunakan AWS CLI
  • Panggil perintah create-cluster dan tentukan opsinya. open-monitoring AktifkanJmxExporter, yangNodeExporter, atau keduanya. Jika Anda menentukanopen-monitoring, kedua eksportir tidak dapat dinonaktifkan pada saat yang sama.

Menggunakan API
  • Memanggil CreateClusteroperasi dan menentukanOpenMonitoring. AktifkanjmxExporter, yangnodeExporter, atau keduanya. Jika Anda menentukanOpenMonitoring, kedua eksportir tidak dapat dinonaktifkan pada saat yang sama.

Mengaktifkan pemantauan terbuka untuk kluster Amazon MSK yang ada

Untuk mengaktifkan pemantauan terbuka, pastikan klaster dalam ACTIVE status.

Menggunakan AWS Management Console
  1. Masuk ke AWS Management Console, dan buka MSK konsol Amazon di https://console.aws.amazon.com/msk/rumah? region=us-east-1#/home/.

  2. Pilih nama cluster yang ingin Anda perbarui. Ini membawa Anda ke halaman yang berisi detail untuk cluster.

  3. Pada tab Properties, gulir ke bawah untuk menemukan bagian Monitoring.

  4. Pilih Edit.

  5. Pilih kotak centang di sebelah Aktifkan pemantauan terbuka dengan Prometheus.

  6. Pilih Simpan perubahan.

Menggunakan AWS CLI
  • Panggil perintah pembaruan-pemantauan dan tentukan opsinya. open-monitoring AktifkanJmxExporter, yangNodeExporter, atau keduanya. Jika Anda menentukanopen-monitoring, kedua eksportir tidak dapat dinonaktifkan pada saat yang sama.

Menggunakan API
  • Memanggil UpdateMonitoringoperasi dan menentukanOpenMonitoring. AktifkanjmxExporter, yangnodeExporter, atau keduanya. Jika Anda menentukanOpenMonitoring, kedua eksportir tidak dapat dinonaktifkan pada saat yang sama.

Menyiapkan host Prometheus di instans Amazon EC2

  1. Unduh server Prometheus dari https://prometheus.io/download/#prometheus ke instans Amazon Anda. EC2

  2. Ekstrak file yang diunduh ke direktori dan pergi ke direktori itu.

  3. Buat file dengan konten berikut dan beri namaprometheus.yml.

    # file: prometheus.yml # my global config global: scrape_interval: 60s # A scrape configuration containing exactly one endpoint to scrape: # Here it's Prometheus itself. scrape_configs: # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config. - job_name: 'prometheus' static_configs: # 9090 is the prometheus server port - targets: ['localhost:9090'] - job_name: 'broker' file_sd_configs: - files: - 'targets.json'
  4. Gunakan ListNodesoperasi untuk mendapatkan daftar broker cluster Anda.

  5. Buat file bernama targets.json dengan berikut iniJSON. Ganti broker_dns_1, broker_dns_2, dan sisa nama broker dengan DNS DNS nama yang Anda peroleh untuk broker Anda di langkah sebelumnya. Sertakan semua broker yang Anda peroleh pada langkah sebelumnya. Amazon MSK menggunakan port 11001 untuk JMX Eksportir dan port 11002 untuk Node Exporter.

    ZooKeeper mode targets.json
    [ { "labels": { "job": "jmx" }, "targets": [ "broker_dns_1:11001", "broker_dns_2:11001", . . . "broker_dns_N:11001" ] }, { "labels": { "job": "node" }, "targets": [ "broker_dns_1:11002", "broker_dns_2:11002", . . . "broker_dns_N:11002" ] } ]
    KRaft mode targets.json
    [ { "labels": { "job": "jmx" }, "targets": [ "broker_dns_1:11001", "broker_dns_2:11001", . . . "broker_dns_N:11001", "controller_dns_1:11001", "controller_dns_2:11001", "controller_dns_3:11001" ] }, { "labels": { "job": "node" }, "targets": [ "broker_dns_1:11002", "broker_dns_2:11002", . . . "broker_dns_N:11002" ] } ]
    catatan

    Untuk mengikis JMX metrik dari KRaft pengontrol, tambahkan DNS nama pengontrol sebagai target dalam file. JSON Misalnya:controller_dns_1:11001, mengganti controller_dns_1 dengan DNS nama pengontrol yang sebenarnya.

  6. Untuk memulai server Prometheus pada instance EC2 Amazon Anda, jalankan perintah berikut di direktori tempat Anda mengekstrak file Prometheus dan disimpan dan. prometheus.yml targets.json

    ./prometheus
  7. Temukan alamat IP IPv4 publik EC2 instance Amazon tempat Anda menjalankan Prometheus pada langkah sebelumnya. Anda memerlukan alamat IP publik ini pada langkah berikut.

  8. Untuk mengakses UI web Prometheus, buka browser yang dapat mengakses instans EC2 Amazon Anda, dan pergi ke, di mana Prometheus-Instance-Public-IP:9090 Prometheus-Instance-Public-IP adalah alamat IP publik yang Anda dapatkan pada langkah sebelumnya.

Metrik Prometheus

Semua metrik yang dipancarkan oleh Apache Kafka dapat diakses menggunakan pemantauan terbuka dengan JMX Prometheus. Untuk informasi tentang metrik Apache Kafka, lihat Pemantauan dalam dokumentasi Apache Kafka. Seiring dengan metrik Apache Kafka, metrik lag konsumen juga tersedia di port 11001 dengan nama. JMX MBean kafka.consumer.group:type=ConsumerLagMetrics Anda juga dapat menggunakan Prometheus Node CPU Exporter untuk mendapatkan dan disk metrik untuk broker Anda di port 11002.

Menyimpan metrik Prometheus di Amazon Managed Service untuk Prometheus

Amazon Managed Service for Prometheus adalah layanan pemantauan dan peringatan yang kompatibel dengan Prometheus yang dapat Anda gunakan untuk memantau kluster Amazon. MSK Ini adalah layanan yang dikelola sepenuhnya yang secara otomatis menskalakan konsumsi, penyimpanan, kueri, dan peringatan metrik Anda. Ini juga terintegrasi dengan layanan AWS keamanan untuk memberi Anda akses cepat dan aman ke data Anda. Anda dapat menggunakan bahasa kueri PromQL sumber terbuka untuk menanyakan metrik dan memperingatkannya.

Untuk informasi selengkapnya, lihat Memulai Layanan Terkelola Amazon untuk Prometheus.