Bagikan melalui


Mengirim metrik Prometheus dari komputer virtual, set skala, atau kluster Kubernetes ke ruang kerja Azure Monitor

Prometheus tidak terbatas pada pemantauan kluster Kubernetes. Gunakan Prometheus untuk memantau aplikasi dan layanan yang berjalan di server Anda, di mana pun mereka berjalan. Misalnya, Anda dapat memantau aplikasi yang berjalan di Virtual Machines, Virtual Machine Scale Sets, atau bahkan server lokal. Anda juga dapat mengirim metrik Prometheus ke ruang kerja Azure Monitor dari kluster yang dikelola sendiri dan server Prometheus Anda. Instal prometheus di server Anda dan konfigurasikan tulis jarak jauh untuk mengirim metrik ke ruang kerja Azure Monitor.

Artikel ini menjelaskan cara mengonfigurasi penulisan jarak jauh untuk mengirim data dari instans Prometheus yang dikelola sendiri ke ruang kerja Azure Monitor.

Opsi tulis jarak jauh

Prometheus yang dikelola sendiri dapat berjalan di lingkungan Azure dan non-Azure. Berikut ini adalah opsi autentikasi untuk menulis jarak jauh ke ruang kerja Azure Monitor berdasarkan lingkungan tempat Prometheus berjalan.

Komputer Virtual yang dikelola Azure, Virtual Machine Scale Sets, dan kluster Kubernetes

Gunakan autentikasi identitas terkelola yang ditetapkan pengguna untuk layanan yang menjalankan Prometheus yang dikelola sendiri di lingkungan Azure. Layanan yang dikelola Azure meliputi:

  • Azure Virtual Machines
  • Kumpulan Skala Komputer Virtual Azure
  • Komputer Virtual dengan dukungan Azure Arc
  • Azure Kubernetes Service (AKS)

Untuk menyiapkan penulisan jarak jauh untuk sumber daya yang dikelola Azure, lihat Penulisan jarak jauh menggunakan identitas terkelola yang ditetapkan pengguna.

Komputer virtual dan kluster Kubernetes yang berjalan di lingkungan non-Azure.

Jika Anda memiliki komputer virtual, atau kluster Kubernetes di lingkungan non-Azure, dan Anda tidak ingin onboard ke Azure Arc, instal Prometheus yang dikelola sendiri, dan konfigurasikan penulisan jarak jauh menggunakan autentikasi aplikasi ID Microsoft Entra. Untuk informasi selengkapnya, lihat Menulis jarak jauh menggunakan autentikasi aplikasi MICROSOFT Entra ID.

Onboarding ke layanan dengan dukungan Azure Arc memungkinkan Anda mengelola dan mengonfigurasi komputer virtual non-Azure di Azure. Setelah onboarding, konfigurasikan Remote-write menggunakan autentikasi identitas terkelola yang ditetapkan pengguna. Untuk informasi selengkapnya tentang onboarding Virtual Machines ke server dengan dukungan Azure Arc, lihat Server dengan dukungan Azure Arc dan Kubernetes dengan dukungan Azure Arc.

Prasyarat

Versi yang didukung

  • Versi Prometheus yang lebih besar dari v2.45 diperlukan untuk autentikasi identitas terkelola.
  • Versi Prometheus yang lebih besar dari v2.48 diperlukan untuk autentikasi aplikasi ID Microsoft Entra.

Ruang kerja Azure Monitor

Artikel ini membahas pengiriman metrik Prometheus ke ruang kerja Azure Monitor. Untuk membuat ruang kerja azure monitor, lihat Mengelola ruang kerja Azure Monitor.

Izin

Izin administrator untuk kluster atau sumber daya diperlukan untuk menyelesaikan langkah-langkah dalam artikel ini.

Menyiapkan autentikasi untuk tulis jarak jauh

Bergantung pada lingkungan tempat Prometheus berjalan, Anda dapat mengonfigurasi penulisan jarak jauh untuk menggunakan identitas terkelola yang ditetapkan pengguna atau autentikasi aplikasi MICROSOFT Entra ID untuk mengirim data ke ruang kerja Azure Monitor.

Gunakan portal Azure atau CLI untuk membuat identitas terkelola yang ditetapkan pengguna atau aplikasi ID Microsoft Entra.

Tulis jarak jauh menggunakan autentikasi identitas terkelola yang ditetapkan pengguna

Autentikasi identitas terkelola yang ditetapkan pengguna dapat digunakan di lingkungan apa pun yang dikelola Azure. Jika layanan Prometheus Anda berjalan di lingkungan non-Azure, Anda dapat menggunakan autentikasi aplikasi Entra ID.

Untuk mengonfigurasi identitas terkelola yang ditetapkan pengguna untuk penulisan jarak jauh ke ruang kerja Azure Monitor, selesaikan langkah-langkah berikut.

Membuat identitas terkelola yang ditetapkan pengguna

Untuk membuat identitas yang dikelola pengguna untuk digunakan dalam konfigurasi tulis jarak jauh Anda, lihat Mengelola identitas terkelola yang ditetapkan pengguna.

Perhatikan nilai clientId identitas terkelola yang Anda buat. ID ini digunakan dalam konfigurasi tulis jarak jauh Prometheus.

Menetapkan peran Penerbit Metrik Pemantauan ke aplikasi

Pada aturan pengumpulan data ruang kerja, tetapkan Monitoring Metrics Publisher peran ke identitas terkelola.

  1. Pada halaman Gambaran Umum ruang kerja Azure Monitor, pilih tautan Aturan pengumpulan data.

    Cuplikan layar memperlihatkan tautan aturan pengumpulan data di halaman ruang kerja Azure Monitor.

  2. Pada halaman aturan pengumpulan data, pilih Kontrol akses (IAM).

  3. Pilih Tambahkan, dan Tambahkan penetapan peran. Cuplikan layar memperlihatkan aturan pengumpulan data.

  4. Cari dan pilih Penerbit Metrik Pemantauan, lalu pilih Berikutnya. Cuplikan layar memperlihatkan menu penetapan peran untuk aturan pengumpulan data.

  5. Pilih Identitas Terkelola.

  6. Pilih Pilih anggota.

  7. Di menu dropdown Entitas Terkelola, Identitas terkelola yang ditetapkan pengguna.

  8. Pilih identitas yang ditetapkan pengguna yang ingin Anda gunakan, lalu klik Pilih.

  9. Pilih Tinjau + tetapkan untuk menyelesaikan penetapan peran.

    Cuplikan layar memperlihatkan menu pilih anggota untuk aturan pengumpulan data.

Menetapkan identitas terkelola ke Virtual Machine atau Virtual Machine Scale Set

Penting

Untuk menyelesaikan langkah-langkah di bagian ini, Anda harus memiliki izin pemilik atau administrator akses pengguna untuk Virtual Machine atau Virtual MAchine Scale Set.

  1. Di portal Azure, buka halaman kluster, Komputer Virtual, atau Set Skala Komputer Virtual.

  2. Pilih Identitas.

  3. Pilih Pengguna yang ditetapkan.

  4. Pilih Tambahkan.

  5. Pilih identitas terkelola yang ditetapkan pengguna yang Anda buat, lalu pilih Tambahkan.

    Cuplikan layar memperlihatkan halaman tambahkan identitas terkelola yang ditetapkan pengguna.

Menetapkan identitas terkelola untuk Azure Kubernetes Service

Untuk layanan Azure Kubernetes (AKS), identitas terkelola harus ditetapkan ke set skala komputer virtual.

AKS membuat grup sumber daya yang berisi set skala komputer virtual. Nama grup sumber daya dalam format MC_<resource group name>_<AKS cluster name>_<region>. Untuk setiap Set Skala Komputer Virtual dalam grup sumber daya, tetapkan identitas terkelola sesuai dengan langkah-langkah di bagian sebelumnya, Tetapkan identitas terkelola ke Komputer Virtual atau Set Skala Komputer Virtual.

Mengonfigurasi penulisan jarak jauh

Penulisan jarak jauh dikonfigurasi dalam file prometheus.ymlkonfigurasi Prometheus , atau di Operator Prometheus.

Untuk informasi selengkapnya tentang mengonfigurasi penulisan jarak jauh, lihat artikel Prometheus.io: Konfigurasi. Untuk informasi selengkapnya tentang penyetelan konfigurasi tulis jarak jauh, lihat Penyetelan tulis jarak jauh.

Jika Anda menjalankan Operator Prometheus pada kluster Kubernetes, ikuti langkah-langkah di bawah ini untuk mengirim data ke Ruang Kerja Azure Monitor Anda.

  1. Jika Anda menggunakan autentikasi MICROSOFT Entra ID, konversi rahasia menggunakan pengodean base64, lalu terapkan rahasia ke dalam kluster Kubernetes Anda. Simpan yang berikut ini ke dalam file yaml. Lewati langkah ini jika Anda menggunakan autentikasi identitas terkelola.
apiVersion: v1
kind: Secret
metadata:
  name: remote-write-secret
  namespace: monitoring # Replace with namespace where Prometheus Operator is deployed. 
type: Opaque
data:
  password: <base64-encoded-secret>

Terapkan rahasia.

# set context to your cluster 
az aks get-credentials -g <aks-rg-name> -n <aks-cluster-name> 

kubectl apply -f <remote-write-secret.yaml>
  1. Anda perlu memperbarui nilai untuk bagian tulis jarak jauh di Operator Prometheus. Salin yang berikut ini dan simpan sebagai file yaml. Untuk nilai file yaml, lihat bagian di bawah ini. Lihat dokumentasi Operator Prometheus untuk detail selengkapnya tentang spesifikasi penulisan jarak jauh Ruang Kerja Azure Monitor di Operator Prometheus.
prometheus:
  prometheusSpec:
    remoteWrite:
    - url: "<metrics ingestion endpoint for your Azure Monitor workspace>"
      azureAd:
# AzureAD configuration.
# The Azure Cloud. Options are 'AzurePublic', 'AzureChina', or 'AzureGovernment'.
        cloud: 'AzurePublic'
        managedIdentity:
          clientId: "<clientId of the managed identity>"
        oauth:
          clientId: "<clientId of the Entra app>"
          clientSecret:
            name: remote-write-secret
            key: password
          tenantId: "<Azure subscription tenant Id>"
  1. Gunakan helm untuk memperbarui konfigurasi tulis jarak jauh Anda menggunakan file yaml di atas.
helm upgrade -f <YAML-FILENAME>.yml prometheus prometheus-community/kube-prometheus-stack --namespace <namespace where Prometheus Operator is deployed>

Parameter url menentukan titik akhir penyerapan metrik ruang kerja Azure Monitor. Ini dapat ditemukan di halaman Gambaran Umum ruang kerja Azure Monitor Anda di portal Azure.

Cuplikan layar memperlihatkan titik akhir penyerapan metrik untuk ruang kerja Azure Monitor.

managed_identityGunakan , atau oauth untuk autentikasi aplikasi ID Microsoft Entra, tergantung pada implementasi Anda. Hapus objek yang tidak Anda gunakan.

Temukan ID klien Anda untuk identitas terkelola menggunakan perintah Azure CLI berikut:

az identity list --resource-group <resource group name>

Untuk informasi selengkapnya, lihat az identity list.

Untuk menemukan klien Anda untuk autentikasi identitas terkelola di portal, buka halaman Identitas Terkelola di portal Azure dan pilih nama identitas yang relevan. Salin nilai ID Klien dari halaman Gambaran umum identitas.

Cuplikan layar memperlihatkan ID klien pada halaman Gambaran umum identitas.

Untuk menemukan ID klien untuk aplikasi ID Microsoft Entra, gunakan CLI berikut atau lihat langkah pertama di bagian Membuat aplikasi ID Microsoft Entra menggunakan portal Azure.

$ az ad app list --display-name < application name>

Untuk informasi selengkapnya, lihat daftar aplikasi az ad.

Catatan

Setelah mengedit file konfigurasi, mulai ulang Prometheus agar perubahan diterapkan.

Verifikasi bahwa data tulis jarak jauh mengalir

Gunakan metode berikut untuk memverifikasi bahwa data Prometheus sedang dikirim ke ruang kerja Azure Monitor Anda.

Penjelajah metrik Azure Monitor dengan PromQL

Untuk memeriksa apakah metrik mengalir ke ruang kerja Azure Monitor, dari ruang kerja Azure Monitor Anda di portal Azure, pilih Metrik. Gunakan penjelajah metrik untuk mengkueri metrik yang Anda harapkan dari lingkungan Prometheus yang dikelola sendiri. Untuk informasi selengkapnya, lihat Penjelajah metrik.

Penjelajah Prometheus di Ruang Kerja Azure Monitor

Prometheus Explorer menyediakan cara mudah untuk berinteraksi dengan metrik Prometheus dalam lingkungan Azure Anda, membuat pemantauan dan pemecahan masalah lebih efisien. Untuk menggunakan penjelajah Prometheus, buka ruang kerja Azure Monitor Anda di portal Azure dan pilih Prometheus Explorer untuk mengkueri metrik yang Anda harapkan dari lingkungan Prometheus yang dikelola sendiri. Untuk informasi selengkapnya, lihat Penjelajah Prometheus.

Grafana

Gunakan kueri PromQL di Grafana untuk memverifikasi bahwa hasilnya mengembalikan data yang diharapkan. Untuk mengonfigurasi Grafana, lihat mendapatkan penyiapan Grafana dengan Managed Prometheus

Memecahkan masalah penulisan jarak jauh

Jika data jarak jauh tidak muncul di ruang kerja Azure Monitor Anda, lihat Memecahkan masalah penulisan jarak jauh untuk masalah dan solusi umum.

Langkah berikutnya