Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Layanan Terkelola Amazon untuk Prometheus mendukung pengambilan metrik dari server Prometheus di cluster yang menjalankan Amazon EKS dan di cluster Kubernetes yang dikelola sendiri yang berjalan di Amazon. EC2 Petunjuk terperinci di bagian ini adalah untuk server Prometheus di cluster Amazon EKS. Langkah-langkah untuk cluster Kubernetes yang dikelola sendiri di Amazon EC2 adalah sama, kecuali Anda perlu menyiapkan sendiri peran penyedia OIDC dan IAM untuk akun layanan di cluster Kubernetes.
Instruksi di bagian ini menggunakan Helm sebagai manajer paket Kubernetes.
Topik
Langkah 1: Siapkan peran IAM untuk akun layanan
Untuk metode orientasi yang kami dokumentasikan, Anda perlu menggunakan peran IAM untuk akun layanan di cluster Amazon EKS tempat server Prometheus berjalan. Peran ini juga disebut peran layanan.
Dengan peran layanan, Anda dapat mengaitkan peran IAM dengan akun layanan Kubernetes. Akun layanan ini kemudian dapat memberikan AWS izin ke container di pod mana pun yang menggunakan akun layanan tersebut. Untuk informasi selengkapnya, lihat peran IAM untuk akun layanan.
Jika Anda belum mengatur peran ini, ikuti instruksi di Menyiapkan peran layanan untuk menelan metrik dari kluster Amazon EKS untuk mengatur peran.
Langkah 2: Tingkatkan server Prometheus Anda yang ada menggunakan Helm
Petunjuk di bagian ini mencakup pengaturan penulisan jarak jauh dan sigv4 untuk mengautentikasi dan mengotorisasi server Prometheus untuk menulis jarak jauh ke Layanan Terkelola Amazon Anda untuk ruang kerja Prometheus.
Menggunakan Prometheus versi 2.26.0 atau yang lebih baru
Ikuti langkah-langkah ini jika Anda menggunakan bagan Helm dengan gambar Prometheus Server versi 2.26.0 atau yang lebih baru.
Untuk mengatur penulisan jarak jauh dari server Prometheus menggunakan bagan Helm
-
Buat bagian penulisan jarak jauh baru di file konfigurasi Helm Anda:
-
Ganti
${IAM_PROXY_PROMETHEUS_ROLE_ARN}
dengan ARN dari amp-iamproxy-ingest-roleyang Anda buat. Langkah 1: Siapkan peran IAM untuk akun layanan Peran ARN harus memiliki format.arn:aws:iam::
your account ID
:role/amp-iamproxy-ingest-role -
Ganti
${WORKSPACE_ID}
dengan Layanan Terkelola Amazon Anda untuk ID ruang kerja Prometheus. -
Ganti
${REGION}
dengan Wilayah Layanan Terkelola Amazon untuk ruang kerja Prometheus (seperti).us-west-2
## The following is a set of default values for prometheus server helm chart which enable remoteWrite to AMP ## For the rest of prometheus helm chart values see: https://github.com/prometheus-community/helm-charts/blob/main/charts/prometheus/values.yaml ## serviceAccounts: server: name: amp-iamproxy-ingest-service-account annotations: eks.amazonaws.com/role-arn: ${IAM_PROXY_PROMETHEUS_ROLE_ARN} server: remoteWrite: - url: https://aps-workspaces.${REGION}.amazonaws.com/workspaces/${WORKSPACE_ID}/api/v1/remote_write sigv4: region: ${REGION} queue_config: max_samples_per_send: 1000 max_shards: 200 capacity: 2500
-
-
Perbarui konfigurasi Server Prometheus Anda yang ada menggunakan Helm:
-
Ganti
prometheus-chart-name
dengan nama rilis Prometheus Anda. -
Ganti
prometheus-namespace
dengan namespace Kubernetes tempat Server Prometheus Anda diinstal. -
Ganti
my_prometheus_values_yaml
dengan path ke file konfigurasi Helm Anda. -
Ganti
current_helm_chart_version
dengan versi grafik Helm Server Prometheus Anda saat ini. Anda dapat menemukan versi bagan saat ini dengan menggunakan perintah helm list.
helm upgrade
prometheus-chart-name
prometheus-community/prometheus \ -nprometheus-namespace
\ -fmy_prometheus_values_yaml
\ --versioncurrent_helm_chart_version
-
Menggunakan Prometheus versi sebelumnya
Ikuti langkah-langkah ini jika Anda menggunakan versi Prometheus lebih awal dari 2.26.0. Langkah-langkah ini menggunakan pendekatan sespan, karena versi Prometheus sebelumnya tidak mendukung AWS proses penandatanganan Signature Version 4 (SiGv4).AWS
Instruksi ini mengasumsikan bahwa Anda menggunakan Helm untuk menyebarkan Prometheus.
Untuk mengatur penulisan jarak jauh dari server Prometheus
-
Di server Prometheus Anda, buat konfigurasi penulisan jarak jauh baru. Pertama, buat file pembaruan baru. Kami akan memanggil file tersebut
amp_ingest_override_values.yaml
.Tambahkan nilai berikut ke file YAMM.
serviceAccounts: server: name: "amp-iamproxy-ingest-service-account" annotations: eks.amazonaws.com/role-arn: "${SERVICE_ACCOUNT_IAM_INGEST_ROLE_ARN}" server: sidecarContainers: - name: aws-sigv4-proxy-sidecar image: public.ecr.aws/aws-observability/aws-sigv4-proxy:1.0 args: - --name - aps - --region - ${REGION} - --host - aps-workspaces.${REGION}.amazonaws.com - --port - :8005 ports: - name: aws-sigv4-proxy containerPort: 8005 statefulSet: enabled: "true" remoteWrite: - url: http://localhost:8005/workspaces/${WORKSPACE_ID}/api/v1/remote_write
Ganti
${REGION}
dengan Wilayah Layanan Terkelola Amazon untuk ruang kerja Prometheus.Ganti
${SERVICE_ACCOUNT_IAM_INGEST_ROLE_ARN}
dengan ARN dari amp-iamproxy-ingest-roleyang Anda buat. Langkah 1: Siapkan peran IAM untuk akun layanan Peran ARN harus memiliki format.arn:aws:iam::
your account ID
:role/amp-iamproxy-ingest-roleGanti
${WORKSPACE_ID}
dengan ID ruang kerja Anda. -
Tingkatkan bagan Prometheus Helm Anda. Pertama, temukan nama bagan Helm Anda dengan memasukkan perintah berikut. Pada output dari perintah ini, cari bagan dengan nama yang disertakan
prometheus
.helm ls --all-namespaces
Masukkan perintah berikut ini.
helm upgrade --install
prometheus-helm-chart-name
prometheus-community/prometheus -nprometheus-namespace
-f ./amp_ingest_override_values.yamlGanti
prometheus-helm-chart-name
dengan nama bagan helm Prometheus yang dikembalikan pada perintah sebelumnya. Gantiprometheus-namespace
dengan nama namespace Anda.
Mengunduh grafik Helm
Jika Anda belum mengunduh bagan Helm secara lokal, Anda dapat menggunakan perintah berikut untuk mengunduhnya.
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts helm pull prometheus-community/prometheus --untar