

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
<a name="configure-client-prometheus"></a>

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 di dalam pipeline

**Topics**
+ [Prasyarat](#prometheus-prereqs)
+ [Langkah 1: Konfigurasikan peran pipeline](#prometheus-pipeline-role)
+ [Langkah 2: Buat pipa](#prometheus-pipeline)
+ [Pemantauan dan pemecahan masalah](#prometheus-monitoring)
+ [Batasan](#prometheus-limitations)
+ [Praktik terbaik](#prometheus-best-practices)

## Prasyarat
<a name="prometheus-prereqs"></a>

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](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-onboard-create-workspace.html) di *Amazon Managed Service for Prometheus* User Guide.
+ **Izin IAM**: Konfigurasikan peran IAM dengan izin untuk menulis ke Amazon Managed Service for Prometheus. Untuk informasi selengkapnya, lihat [Langkah 1: Konfigurasikan peran pipeline](#prometheus-pipeline-role).

**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
<a name="prometheus-pipeline-role"></a>

Sink Prometheus secara otomatis mewarisi izin IAM [peran pipeline](pipeline-security-overview.md#pipeline-security-sink) 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:
+ `region`: Anda Wilayah AWS (misalnya,`us-east-1`)
+ `account-id`: Akun AWS ID Anda
+ `workspace-id`: Layanan Terkelola Amazon Anda untuk ID ruang kerja Prometheus

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
<a name="prometheus-pipeline"></a>

Setelah menyiapkan izin, Anda dapat mengonfigurasi pipeline OpenSearch Ingestion untuk menggunakan Amazon Managed Service untuk Prometheus sebagai wastafel.

### Konfigurasi dasar
<a name="prometheus-basic-config"></a>

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
<a name="prometheus-config-options"></a>

Gunakan opsi berikut untuk mengonfigurasi perilaku batching dan flushing untuk sink Prometheus:


**Opsi konfigurasi wastafel Prometheus**  

| Opsi | Diperlukan | Tipe | Deskripsi | 
| --- | --- | --- | --- | 
| max\$1events | Tidak | Bilangan Bulat | Jumlah maksimum peristiwa yang terakumulasi sebelum disiram ke Prometheus. Default-nya adalah 1000. | 
| max\$1request\$1size | Tidak | Hitungan Byte | Ukuran maksimum payload permintaan sebelum pembilasan. Default-nya adalah 1mb. | 
| flush\$1interval | Tidak | Durasi | Jumlah maksimum waktu untuk menunggu sebelum acara pembilasan. Default-nya adalah 10s. Nilai maksimum yang diizinkan adalah60s. | 

### Contoh saluran pipa
<a name="prometheus-example-pipelines"></a>

**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](pipeline-blueprint.md).

### Membuat pipeline dengan Amazon Managed Service untuk wastafel Prometheus
<a name="prometheus-create-pipeline"></a>

#### Menggunakan AWS Konsol
<a name="prometheus-console"></a>

1. Arahkan ke konsol OpenSearch Layanan.

1. Pilih **Pipa** di bawah **Tertelan**.

1. Pilih **Buat pipeline**.

1. Pilih **Build menggunakan cetak biru dan pilih OpenTelemetry metrik untuk cetak** **biru Amazon** Prometheus.

1. Konfigurasikan pipa:
   + Masukkan Layanan Terkelola Amazon untuk ID ruang kerja Prometheus
   + Tentukan peran pipa ARN
   + Konfigurasikan pengaturan sumber dan prosesor sesuai kebutuhan

1. Tinjau dan buat pipa.

#### Menggunakan AWS CLI
<a name="prometheus-cli"></a>

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
<a name="prometheus-cfn"></a>

```
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
<a name="prometheus-monitoring"></a>

### CloudWatch metrik
<a name="prometheus-cloudwatch-metrics"></a>

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
<a name="prometheus-troubleshooting"></a>

**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:RemoteWrite` izin
+ 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.com` untuk mengambil peran pipeline
+ Pastikan peran pipa memiliki `aps:RemoteWrite` izin 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
<a name="prometheus-limitations"></a>

Pertimbangkan batasan berikut saat Anda menyiapkan pipeline 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
<a name="prometheus-best-practices"></a>
+ **Gunakan peran IAM yang sama**: Wastafel Prometheus secara otomatis menggunakan peran pipa. Jika sink lain digunakan, pastikan `sts_role_arn` sama 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