Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Siapkan kolektor Prometheus yang dikelola untuk Amazon MSK
Untuk menggunakan Layanan Terkelola Amazon untuk kolektor Prometheus, Anda membuat scraper yang menemukan dan menarik metrik di cluster Amazon Managed Streaming for Apache Kafka. Anda juga dapat membuat scraper yang terintegrasi dengan Amazon Elastic Kubernetes Service. Untuk informasi selengkapnya, lihat Mengintegrasikan Amazon EKS.
Buat scraper
Layanan Dikelola Amazon untuk kolektor Prometheus terdiri dari scraper yang menemukan dan mengumpulkan metrik dari cluster MSK Amazon. Amazon Managed Service for Prometheus mengelola scraper untuk Anda, memberi Anda skalabilitas, keamanan, dan keandalan yang Anda butuhkan, tanpa harus mengelola instans, agen, atau pencakar apa pun sendiri.
Anda dapat membuat scraper menggunakan AWS API atau AWS CLI seperti yang dijelaskan dalam prosedur berikut.
Ada beberapa prasyarat untuk membuat scraper Anda sendiri:
-
Anda harus memiliki kluster MSK Amazon yang dibuat.
-
Konfigurasikan grup keamanan klaster MSK Amazon Anda untuk mengizinkan lalu lintas masuk pada port 11001 (Eksportir JMX) dan 11002 (Node Exporter) dalam VPC Amazon Anda, karena scraper memerlukan akses ke catatan DNS ini untuk mengumpulkan metrik Prometheus.
-
VPC Amazon tempat klaster MSK Amazon berada harus mengaktifkan DNS.
catatan
Cluster akan dikaitkan dengan scraper dengan nama sumber daya Amazon (ARN). Jika Anda menghapus cluster, dan kemudian membuat yang baru dengan nama yang sama, ARN akan digunakan kembali untuk cluster baru. Karena itu, scraper akan mencoba mengumpulkan metrik untuk cluster baru. Anda menghapus pencakar secara terpisah dari menghapus cluster.
-
Berikut ini adalah daftar lengkap operasi scraper yang dapat Anda gunakan dengan AWS API:
Buat scraper dengan operasi CreateScraperAPI.
-
Buat daftar scraper yang ada dengan operasi ListScrapersAPI.
-
Perbarui alias, konfigurasi, atau tujuan scraper dengan operasi UpdateScraperAPI.
-
Hapus scraper dengan operasi DeleteScraperAPI.
-
Dapatkan detail selengkapnya tentang scraper dengan operasi DescribeScraperAPI.
Pengaturan lintas akun
Untuk membuat scraper dalam penyiapan lintas akun saat klaster MSK Amazon tempat Anda ingin mengumpulkan metrik berada di akun yang berbeda dari kolektor Layanan Terkelola Amazon untuk Prometheus, gunakan prosedur di bawah ini.
Misalnya, ketika Anda memiliki dua akun, akun sumber pertama account_id_source tempat MSK Amazon berada, dan akun target kedua account_id_target tempat Amazon Managed Service untuk ruang kerja Prometheus berada.
Untuk membuat scraper dalam pengaturan lintas akun
-
Di akun sumber, buat peran
arn:aws:iam::dan tambahkan kebijakan kepercayaan berikut.111122223333:role/Source{ "Effect": "Allow", "Principal": { "Service": [ "scraper.aps.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:aps:aws-region:111122223333:scraper/scraper-id" }, "StringEquals": { "AWS:SourceAccount": "111122223333" } } } -
Di setiap kombinasi sumber (klaster MSK Amazon) dan target (Layanan Terkelola Amazon untuk ruang kerja Prometheus), Anda perlu membuat
arn:aws:iam::peran dan menambahkan kebijakan kepercayaan berikut dengan izin untuk. AmazonPrometheusRemoteWriteAccess444455556666:role/Target{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/Source" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "arn:aws:aps:aws-region:111122223333:scraper/scraper-id" } } } -
Buat scraper dengan
--role-configurationopsi.aws amp create-scraper \ --source vpcConfiguration="{subnetIds=[subnet-subnet-id], "securityGroupIds": ["sg-security-group-id"]}" \ --scrape-configuration configurationBlob=<base64-encoded-blob>\ --destination ampConfiguration="{workspaceArn='arn:aws:aps:aws-region:444455556666:workspace/ws-workspace-id'}"\ --role-configuration '{"sourceRoleArn":"arn:aws:iam::111122223333:role/Source", "targetRoleArn":"arn:aws:iam::444455556666:role/Target"}' -
Validasi pembuatan scraper.
aws amp list-scrapers { "scrapers": [ { "scraperId": "s-example123456789abcdef0", "arn": "arn:aws:aps:aws-region:111122223333:scraper/s-example123456789abcdef0": "arn:aws:iam::111122223333:role/Source", "status": "ACTIVE", "creationTime": "2025-10-27T18:45:00.000Z", "lastModificationTime": "2025-10-27T18:50:00.000Z", "tags": {}, "statusReason": "Scraper is running successfully", "source": { "vpcConfiguration": { "subnetIds": ["subnet-subnet-id"], "securityGroupIds": ["sg-security-group-id"] } }, "destination": { "ampConfiguration": { "workspaceArn": "arn:aws:aps:aws-region:444455556666:workspace/ws-workspace-id'" } }, "scrapeConfiguration": { "configurationBlob": "<base64-encoded-blob>" } } ] }
Mengubah antara RoleConfiguration dan peran terkait layanan
Jika Anda ingin beralih kembali ke peran terkait layanan alih-alih menulis RoleConfiguration ke Layanan Terkelola Amazon untuk ruang kerja Prometheus, Anda harus memperbarui UpdateScraper dan menyediakan ruang kerja di akun yang sama dengan scraper tanpa. RoleConfiguration RoleConfigurationAkan dihapus dari scraper dan peran terkait layanan akan digunakan.
Ketika Anda mengubah ruang kerja di akun yang sama dengan scraper dan Anda ingin terus menggunakanRoleConfiguration, Anda harus memberikan on lagi. RoleConfiguration UpdateScraper
Temukan dan hapus pencakar
Anda dapat menggunakan AWS API atau AWS CLI untuk membuat daftar pencakar di akun Anda atau untuk menghapusnya.
catatan
Pastikan Anda menggunakan versi terbaru AWS CLI atau SDK. Versi terbaru memberi Anda fitur dan fungsionalitas terbaru, serta pembaruan keamanan. Atau, gunakan AWS CloudShell, yang selalu memberikan pengalaman baris up-to-date perintah, secara otomatis.
Untuk mencantumkan semua pencakar di akun Anda, gunakan operasi ListScrapersAPI.
Atau, dengan AWS CLI, hubungi:
aws amp list-scrapers
ListScrapersmengembalikan semua pencakar di akun Anda, misalnya:
{ "scrapers": [ { "scraperId": "s-1234abcd-56ef-7890-abcd-1234ef567890", "arn": "arn:aws:aps:aws-region:123456789012:scraper/s-1234abcd-56ef-7890-abcd-1234ef567890", "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/AWSServiceRoleForAmazonPrometheusScraper_1234abcd-2931", "status": { "statusCode": "DELETING" }, "createdAt": "2023-10-12T15:22:19.014000-07:00", "lastModifiedAt": "2023-10-12T15:55:43.487000-07:00", "tags": {}, "source": { "vpcConfiguration": { "securityGroupIds": [ "sg-1234abcd5678ef90" ], "subnetIds": [ "subnet-abcd1234ef567890", "subnet-1234abcd5678ab90" ] } }, "destination": { "ampConfiguration": { "workspaceArn": "arn:aws:aps:aws-region:123456789012:workspace/ws-1234abcd-5678-ef90-ab12-cdef3456a78" } } } ] }
Untuk menghapus scraper, cari scraper yang ingin Anda hapus, menggunakan ListScrapers operasi, dan kemudian gunakan DeleteScraperoperasi untuk menghapusnya. scraperId
Atau, dengan AWS CLI, hubungi:
aws amp delete-scraper --scraper-idscraperId
Metrik dikumpulkan dari Amazon MSK
Saat Anda berintegrasi dengan Amazon MSK, kolektor Layanan Terkelola Amazon untuk Prometheus secara otomatis mengikis metrik berikut:
| Metrik | Deskripsi/Tujuan |
|---|---|
|
jmx_config_reload_failure_total |
Jumlah total eksportir JMX gagal memuat ulang file konfigurasinya. |
|
jmx_scrape_duration_seconds |
Waktu yang dibutuhkan untuk mengikis metrik JMX dalam hitungan detik untuk siklus pengumpulan saat ini. |
|
jmx_scrape_error |
Menunjukkan apakah terjadi kesalahan selama pengikisan metrik JMX (1 = kesalahan, 0 = sukses). |
|
java_lang_memory_ _digunakan HeapMemoryUsage |
Jumlah memori heap (dalam byte) yang saat ini digunakan oleh JVM. |
|
Java_lang_memory_ _max HeapMemoryUsage |
Jumlah maksimum memori heap (dalam byte) yang dapat digunakan untuk manajemen memori. |
|
java_lang_memory_ _digunakan NonHeapMemoryUsage |
Jumlah memori non-heap (dalam byte) yang saat ini digunakan oleh JVM. |
|
Kafka_cluster_partition_value |
Status atau nilai saat ini terkait dengan partisi cluster Kafka, dipecah berdasarkan ID partisi dan topik. |
|
kafka_consumer_consumer_coordinator_metrics_assigned_partitions |
Jumlah partisi yang saat ini ditugaskan untuk konsumen ini. |
|
kafka_consumer_consumer_coordinator_metrics_commit_latency_avg |
Rata-rata waktu yang dibutuhkan untuk melakukan offset dalam milidetik. |
|
kafka_consumer_consumer_coordinator_metrics_commit_rate |
Jumlah komit offset per detik. |
|
kafka_consumer_consumer_coordinator_metrics_failed_rebalance_total |
Jumlah total rebalances kelompok konsumen yang gagal. |
|
kafka_consumer_consumer_coordinator_metrics_last_heartbeat_seconds_ago |
Jumlah detik sejak detak jantung terakhir dikirim ke koordinator. |
|
kafka_consumer_consumer_coordinator_metrics_rebalance_latency_avg |
Rata-rata waktu yang dibutuhkan untuk menyeimbangkan kembali kelompok konsumen dalam milidetik. |
|
kafka_consumer_consumer_coordinator_metrics_rebalance_total |
Jumlah total penyeimbangan kembali kelompok konsumen. |
|
kafka_consumer_consumer_fetch_manager_metrics_bytes_consumed_rate |
Jumlah rata-rata byte yang dikonsumsi per detik oleh konsumen. |
|
kafka_consumer_consumer_fetch_manager_metrics_fetch_latency_avg |
Rata-rata waktu yang dibutuhkan untuk permintaan pengambilan dalam milidetik. |
|
kafka_consumer_consumer_fetch_manager_metrics_fetch_rate |
Jumlah permintaan pengambilan per detik. |
|
kafka_consumer_consumer_fetch_manager_metrics_records_consumed_rate |
Rata-rata jumlah catatan yang dikonsumsi per detik. |
|
kafka_consumer_consumer_fetch_manager_metrics_records_lag_max |
Kelambatan maksimum dalam hal jumlah catatan untuk partisi apa pun di konsumen ini. |
|
kafka_consumer_consumer_metrics_connection_count |
Jumlah koneksi aktif saat ini. |
|
kafka_consumer_consumer_metrics_incoming_byte_rate |
Jumlah rata-rata byte yang diterima per detik dari semua server. |
|
kafka_consumer_consumer_metrics_last_poll_seconds_ago |
Jumlah detik sejak panggilan polling konsumen terakhir (). |
|
kafka_consumer_consumer_metrics_request_rate |
Jumlah permintaan yang dikirim per detik. |
|
kafka_consumer_consumer_metrics_response_rate |
Jumlah tanggapan yang diterima per detik. |
|
kafka_consumer_group_ _Nilai ConsumerLagMetrics |
Nilai lag konsumen saat ini untuk kelompok konsumen, menunjukkan seberapa jauh di belakang konsumen. |
|
kafka_controller_ _Nilai KafkaController |
Keadaan atau nilai pengontrol Kafka saat ini (1 = pengontrol aktif, 0 = tidak aktif). |
|
kafka_controller_ _Hitung ControllerEventManager |
Jumlah total peristiwa pengontrol yang diproses. |
|
kafka_controller_ ControllerEventManager _Berarti |
Rata-rata (rata-rata) waktu yang dibutuhkan untuk memproses peristiwa pengontrol. |
|
kafka_controller_ _ ControllerStats MeanRate |
Tingkat rata-rata operasi statistik pengontrol per detik. |
|
kafka_coordinator_group_ _Nilai GroupMetadataManager |
Status atau nilai manajer metadata grup saat ini untuk grup konsumen. |
|
kafka_log_ _Hitung LogFlushStats |
Jumlah total operasi log flush. |
|
kafka_log_ LogFlushStats _Berarti |
Rata-rata (rata-rata) waktu yang dibutuhkan untuk operasi log flush. |
|
kafka_log_ _ LogFlushStats MeanRate |
Tingkat rata-rata operasi log flush per detik. |
|
kafka_network_ _Hitung RequestMetrics |
Jumlah total permintaan jaringan yang diproses. |
|
kafka_network_ RequestMetrics _Berarti |
Rata-rata (rata-rata) waktu yang dibutuhkan untuk memproses permintaan jaringan. |
|
RequestMetricskafka_jaringan_ _ MeanRate |
Rata-rata tingkat permintaan jaringan per detik. |
|
Kafka_network_Acceptor_ MeanRate |
Tingkat rata-rata koneksi yang diterima per detik. |
|
Kafka_Server_fetch_queue_size |
Ukuran antrian permintaan pengambilan saat ini. |
|
Kafka_Server_Produce_Queue_size |
Ukuran antrian permintaan produksi saat ini. |
|
Kafka_Server_Request_Queue_size |
Ukuran antrian permintaan umum saat ini. |
|
kafka_server_ _Hitung BrokerTopicMetrics |
Jumlah total operasi topik broker (pesanin/out, bytes in/out). |
|
kafka_server_ _ BrokerTopicMetrics MeanRate |
Tingkat rata-rata operasi topik broker per detik. |
|
kafka_server_ _ BrokerTopicMetrics OneMinuteRate |
Tingkat rata-rata pergerakan satu menit dari operasi topik broker. |
|
kafka_server_ _Nilai DelayedOperationPurgatory |
Jumlah operasi tertunda saat ini di api penyucian (menunggu untuk diselesaikan). |
|
kafka_server_ _ DelayedFetchMetrics MeanRate |
Tingkat rata-rata operasi pengambilan tertunda per detik. |
|
kafka_server_ _Nilai FetcherLagMetrics |
Nilai lag saat ini untuk utas pengambil replika (seberapa jauh di belakang pemimpin). |
|
kafka_server_ _ FetcherStats MeanRate |
Tingkat rata-rata operasi fetcher per detik. |
|
kafka_server_ _Nilai ReplicaManager |
Status atau nilai manajer replika saat ini. |
|
kafka_server_ _ ReplicaManager MeanRate |
Tingkat rata-rata operasi manajer replika per detik. |
|
kafka_server_ _byte_rate LeaderReplication |
Tingkat byte direplikasi per detik untuk partisi di mana broker ini adalah pemimpin. |
|
kafka_server_group_coordinator_metrics_group_completed_rebalance_count |
Jumlah total penyeimbangan kembali kelompok konsumen yang diselesaikan. |
|
kafka_server_group_coordinator_metrics_offset_commit_count |
Jumlah total operasi komit offset. |
|
kafka_server_group_coordinator_metrics_offset_commit_rate |
Tingkat operasi komit offset per detik. |
|
kafka_server_socket_server_metrics_connection_count |
Jumlah koneksi aktif saat ini. |
|
kafka_server_socket_server_metrics_connection_creation_rate |
Tingkat pembuatan koneksi baru per detik. |
|
kafka_server_socket_server_metrics_connection_close_rate |
Tingkat penutupan koneksi per detik. |
|
kafka_server_socket_server_metrics_failed_authentication_total |
Jumlah total upaya otentikasi yang gagal. |
|
kafka_server_socket_server_metrics_incoming_byte_rate |
Tingkat byte masuk per detik. |
|
kafka_server_socket_server_metrics_outgoing_byte_rate |
Tingkat byte keluar per detik. |
|
kafka_server_socket_server_metrics_request_rate |
Tingkat permintaan per detik. |
|
kafka_server_socket_server_metrics_response_rate |
Tingkat respons per detik. |
|
kafka_server_socket_server_metrics_network_io_rate |
Tingkat I/O operasi jaringan per detik. |
|
kafka_server_socket_server_metrics_io_ratio |
Sebagian kecil waktu yang dihabiskan dalam I/O operasi. |
|
kafka_server_controller_channel_metrics_connection_count |
Jumlah koneksi aktif saat ini untuk saluran pengontrol. |
|
kafka_server_controller_channel_metrics_incoming_byte_rate |
Tingkat byte masuk per detik untuk saluran pengontrol. |
|
kafka_server_controller_channel_metrics_outgoing_byte_rate |
Tingkat byte keluar per detik untuk saluran pengontrol. |
|
kafka_server_controller_channel_metrics_request_rate |
Tingkat permintaan per detik untuk saluran pengontrol. |
|
kafka_server_replica_fetcher_metrics_connection_count |
Jumlah koneksi aktif saat ini untuk pengambil replika. |
|
kafka_server_replica_fetcher_metrics_incoming_byte_rate |
Tingkat byte masuk per detik untuk replika fetcher. |
|
kafka_server_replica_fetcher_metrics_request_rate |
Tingkat permintaan per detik untuk replika fetcher. |
|
kafka_server_replica_fetcher_metrics_failed_authentication_total |
Jumlah total upaya otentikasi gagal untuk pengambil replika. |
|
kafka_server_ _Hitung ZooKeeperClientMetrics |
Jumlah total operasi ZooKeeper klien. |
|
kafka_server_ ZooKeeperClientMetrics _Berarti |
Rata-rata latensi operasi ZooKeeper klien. |
|
kafka_server_ _Nilai KafkaServer |
Status atau nilai server Kafka saat ini (biasanya menunjukkan server sedang berjalan). |
|
node_cpu_seconds_total |
Total detik yang CPUs dihabiskan dalam setiap mode (pengguna, sistem, idle, dll.), Diuraikan berdasarkan CPU dan mode. |
|
node_disk_read_bytes_total |
Jumlah total byte yang berhasil dibaca dari disk, dipecah berdasarkan perangkat. |
|
node_disk_reads_completed_total |
Jumlah total pembacaan berhasil diselesaikan untuk disk, dipecah berdasarkan perangkat. |
|
node_disk_writes_completed_total |
Jumlah total penulisan berhasil diselesaikan untuk disk, dipecah berdasarkan perangkat. |
|
node_disk_written_bytes_total |
Jumlah total byte yang berhasil ditulis ke disk, dipecah berdasarkan perangkat. |
|
node_filesystem_avail_bytes |
Ruang sistem file yang tersedia dalam byte untuk pengguna non-root, dipecah berdasarkan perangkat dan titik pemasangan. |
|
node_filesystem_size_bytes |
Ukuran total sistem file dalam byte, dipecah berdasarkan perangkat dan titik pemasangan. |
|
node_filesystem_free_bytes |
Ruang sistem file gratis dalam byte, dipecah berdasarkan perangkat dan titik pemasangan. |
|
node_filesystem_files |
Jumlah total node file (inode) pada sistem file, dipecah berdasarkan perangkat dan titik pemasangan. |
|
node_filesystem_files_free |
Jumlah node file gratis (inode) pada sistem file, dipecah berdasarkan perangkat dan titik pemasangan. |
|
node_filesystem_readonly |
Menunjukkan apakah sistem file dipasang hanya-baca (1 = hanya-baca, 0 = baca-tulis). |
|
node_filesystem_device_error |
Menunjukkan apakah terjadi kesalahan saat mendapatkan statistik sistem file (1 = kesalahan, 0 = sukses). |
Batasan
Integrasi MSK Amazon saat ini dengan Amazon Managed Service untuk Prometheus memiliki batasan berikut:
-
Hanya didukung untuk klaster Amazon MSK Provisioned (tidak tersedia untuk Amazon MSK Tanpa Server)
-
Tidak didukung untuk klaster MSK Amazon dengan akses publik diaktifkan dalam kombinasi dengan KRaft mode metadata
-
Tidak didukung untuk broker Amazon MSK Express
-
Saat ini mendukung pemetaan 1:1 antara kluster MSK Amazon dan Layanan Terkelola Amazon untuk kolektor/ruang kerja Prometheus