Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan pipeline OpenSearch Ingestion dengan Amazon Managed Service untuk Prometheus
Anda dapat menggunakan Amazon Managed Service for Prometheus sebagai tujuan pipeline Ingestion untuk OpenSearch menyimpan metrik dalam format deret waktu. Wastafel Prometheus memungkinkan Anda OpenTelemetry mengirim metrik atau data deret waktu lainnya dari pipeline ke ruang kerja Layanan Terkelola Amazon untuk Prometheus untuk pemantauan, peringatan, dan analisis.
Plugin prometheus sink memungkinkan pipeline OpenSearch Ingestion untuk menulis data metrik ke Amazon Managed Service untuk ruang kerja Prometheus menggunakan protokol penulisan jarak jauh Prometheus. Integrasi ini memungkinkan Anda untuk:
-
Simpan data metrik deret waktu di Amazon Managed Service untuk Prometheus
-
Pantau dan beri tahu metrik menggunakan Layanan Terkelola Amazon untuk Prometheus dan Grafana Terkelola Amazon
-
Rutekan metrik ke beberapa tujuan secara bersamaan (misalnya, OpenSearch dan Layanan Terkelola Amazon untuk Prometheus)
-
Memproses OpenTelemetry metrik dari agen eksternal atau menghasilkan metrik dalam pipeline
Topik
Prasyarat
Sebelum Anda mengkonfigurasi wastafel Prometheus, pastikan Anda memiliki yang berikut:
-
Amazon Managed Service untuk ruang kerja Prometheus: Buat ruang kerja yang sama dan sebagai pipeline Ingestion Anda. Akun AWS Wilayah AWS OpenSearch Untuk petunjuknya, lihat Membuat ruang kerja di Amazon Managed Service for Prometheus User Guide.
-
Izin IAM: Konfigurasikan peran IAM dengan izin untuk menulis ke Amazon Managed Service untuk Prometheus. Untuk informasi selengkapnya, lihat Langkah 1: Konfigurasikan peran pipeline.
catatan
Layanan Terkelola Amazon untuk ruang kerja Prometheus harus menggunakan kunci yang dikelola layanan. AWS AWS KMS AWS KMS Kunci yang dikelola pelanggan saat ini tidak didukung untuk Layanan Terkelola Amazon untuk sink Prometheus di pipeline Ingestion. OpenSearch
Langkah 1: Konfigurasikan peran pipeline
Sink Prometheus secara otomatis mewarisi izin IAM peran pipeline untuk otentikasi, jadi tidak ada konfigurasi peran tambahan (seperti) yang diperlukan dalam pengaturan wastafel. sts_role_arn
Kebijakan contoh berikut menunjukkan izin yang diperlukan untuk menggunakan Layanan Terkelola Amazon untuk Prometheus sebagai wastafel:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AMPRemoteWrite", "Effect": "Allow", "Action": [ "aps:RemoteWrite" ], "Resource": "arn:aws:aps:region:account-id:workspace/workspace-id" } ] }
Ganti placeholder berikut:
-
: Anda Wilayah AWS (misalnya,regionus-east-1) -
: Akun AWS ID Andaaccount-id -
: Layanan Terkelola Amazon Anda untuk ID ruang kerja Prometheusworkspace-id
Anda harus melampirkan izin ini ke peran pipeline Anda.
Pastikan peran pipeline Anda memiliki hubungan kepercayaan yang memungkinkan OpenSearch Ingestion untuk menganggapnya:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "osis-pipelines.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Langkah 2: Buat pipa
Setelah menyiapkan izin, Anda dapat mengonfigurasi pipeline OpenSearch Ingestion untuk menggunakan Amazon Managed Service untuk Prometheus sebagai wastafel.
Konfigurasi dasar
Contoh berikut menunjukkan konfigurasi wastafel Prometheus minimal:
version: "2" sink: - prometheus: url: "https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write" aws: region: "region"
Anda harus menentukan url opsi dalam konfigurasi prometheus wastafel, yang merupakan Layanan Terkelola Amazon untuk titik akhir penulisan jarak jauh Prometheus. Untuk memformat URL, cari ID ruang kerja Anda di Amazon Managed Service for Prometheus console dan buat URL sebagai berikut: https://aps-workspaces.region.amazonaws.com/workspaces/workspace-id/api/v1/remote_write
Opsi konfigurasi
Gunakan opsi berikut untuk mengonfigurasi perilaku batching dan flushing untuk sink Prometheus:
| Opsi | Diperlukan | Tipe | Deskripsi |
|---|---|---|---|
max_events |
Tidak | Bilangan Bulat | Jumlah maksimum peristiwa yang terakumulasi sebelum disiram ke Prometheus. Default-nya adalah 1000. |
max_request_size |
Tidak | Hitungan Byte | Ukuran maksimum payload permintaan sebelum pembilasan. Default-nya adalah 1mb. |
flush_interval |
Tidak | Durasi | Jumlah maksimum waktu untuk menunggu sebelum acara pembilasan. Default-nya adalah 10s. Nilai maksimum yang diizinkan adalah60s. |
Contoh pipa
Contoh 1: OpenTelemetry metrik ke Amazon Managed Service untuk Prometheus
Pipeline ini menerima OpenTelemetry metrik dari agen eksternal dan menuliskannya ke Amazon Managed Service untuk Prometheus:
version: "2" source: otel_metrics_source: path: "/v1/metrics" output_format: otel sink: - prometheus: url: "https://aps-workspaces.us-east-1.amazonaws.com/workspaces/ws-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111/api/v1/remote_write" aws: region: "us-east-1"
Contoh 2: Wastafel ganda - OpenSearch dan Layanan Dikelola Amazon untuk Prometheus
Pipeline ini merutekan metrik ke keduanya OpenSearch dan Layanan Terkelola Amazon untuk Prometheus:
version: "2" source: otel_metrics_source: path: "/v1/metrics" output_format: otel sink: - opensearch: hosts: - "https://search-domain-endpoint.us-east-1.es.amazonaws.com" index: "metrics-%{yyyy.MM.dd}" aws: region: "us-east-1" sts_role_arn: "arn:aws:iam::123456789012:role/OSI-Pipeline-Role" - prometheus: url: "https://aps-workspaces.us-east-1.amazonaws.com/workspaces/ws-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111/api/v1/remote_write" aws: region: "us-east-1"
Contoh 3: Metrik dengan penyaringan
Pipeline ini memfilter metrik sebelum mengirim ke Amazon Managed Service untuk Prometheus:
version: "2" source: otel_metrics_source: path: "/v1/metrics" output_format: otel processor: - drop_events: drop_when: '/name != "http.server.duration" and /name != "http.client.duration"' sink: - prometheus: url: "https://aps-workspaces.us-east-1.amazonaws.com/workspaces/ws-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111/api/v1/remote_write" aws: region: "us-east-1"
Anda dapat menggunakan cetak biru Layanan Terkelola Amazon untuk Prometheus yang telah dikonfigurasi sebelumnya untuk membuat pipeline ini. Untuk informasi selengkapnya, lihat Bekerja dengan cetak biru.
Membuat pipeline dengan Amazon Managed Service untuk wastafel Prometheus
Menggunakan AWS Konsol
-
Arahkan ke konsol OpenSearch Layanan.
-
Pilih Pipa di bawah Tertelan.
-
Pilih Buat pipeline.
-
Pilih Bangun menggunakan cetak biru dan pilih OpenTelemetry metrik untuk cetak biru Amazon Prometheus.
-
Konfigurasikan pipa:
-
Masukkan Layanan Terkelola Amazon untuk ID ruang kerja Prometheus
-
Tentukan peran pipa ARN
-
Konfigurasikan pengaturan sumber dan prosesor sesuai kebutuhan
-
-
Tinjau dan buat pipa.
Menggunakan AWS CLI
Buat file konfigurasi pipeline (misalnya,amp-pipeline.yaml) dengan konfigurasi yang Anda inginkan, lalu jalankan:
aws osis create-pipeline \ --pipeline-name my-amp-pipeline \ --min-units 2 \ --max-units 4 \ --pipeline-configuration-body file://amp-pipeline.yaml
Menggunakan AWS CloudFormation
Resources: MyAMPPipeline: Type: AWS::OSIS::Pipeline Properties: PipelineName: my-amp-pipeline MinUnits: 2 MaxUnits: 4 PipelineConfigurationBody: | version: "2" source: otel_metrics_source: path: "/v1/metrics" output_format: otel sink: - prometheus: url: "https://aps-workspaces.us-east-1.amazonaws.com/workspaces/ws-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111/api/v1/remote_write" aws: region: "us-east-1"
Pemantauan dan pemecahan masalah
CloudWatch metrik
Pantau performa pipeline Anda menggunakan CloudWatch metrik:
-
DocumentsWritten: Jumlah metrik yang berhasil ditulis ke Amazon Managed Service untuk Prometheus -
DocumentsWriteFailed: Jumlah metrik yang gagal ditulis -
RequestLatency: Latensi permintaan tulis jarak jauh
Masalah umum
Masalah: Pipeline gagal menulis ke Amazon Managed Service untuk Prometheus
Solusi:
-
Verifikasi ID ruang kerja dan wilayah di URL sudah benar
-
Pastikan peran pipa memiliki
aps:RemoteWriteizin -
Periksa apakah ruang kerja menggunakan kunci yang dikelola layanan AWS KMS
-
Verifikasi pipa dan ruang kerja berada di tempat yang sama Akun AWS
Masalah: Kesalahan otentikasi
Solusi:
-
Verifikasi hubungan kepercayaan memungkinkan
osis-pipelines.amazonaws.comuntuk mengambil peran pipeline -
Pastikan peran pipa memiliki
aps:RemoteWriteizin yang diperlukan
Masalah: Latensi tinggi atau pelambatan
Solusi:
-
Meningkatkan unit kapasitas pipa
-
Menerapkan batching di prosesor
-
Tinjau Layanan Terkelola Amazon untuk kuota layanan Prometheus
Batasan
Pertimbangkan batasan berikut saat Anda menyiapkan saluran OpenSearch Ingestion untuk Layanan Terkelola Amazon untuk Prometheus:
-
Layanan Terkelola Amazon untuk ruang kerja Prometheus harus menggunakan kunci yang dikelola layanan. AWS AWS KMS AWS KMS Kunci yang dikelola pelanggan saat ini tidak didukung.
-
Pipeline dan Layanan Terkelola Amazon untuk ruang kerja Prometheus harus sama. Akun AWS
Praktik terbaik
-
Gunakan peran IAM yang sama: Wastafel Prometheus secara otomatis menggunakan peran pipa. Jika sink lain digunakan, pastikan
sts_role_arnsama dengan peran pipa -
Monitor metrik: Siapkan CloudWatch alarm untuk penulisan yang gagal dan latensi tinggi
-
Terapkan pemfilteran: Gunakan prosesor untuk memfilter metrik yang tidak perlu sebelum mengirim ke Amazon Managed Service untuk Prometheus
-
Kapasitas ukuran kanan: Mulai dengan kapasitas minimum dan skala berdasarkan volume metrik
-
Gunakan cetak biru: Manfaatkan cetak biru yang telah dikonfigurasi sebelumnya untuk kasus penggunaan umum