Penyiapan Network Observability untuk Azure Kubernetes Service (AKS) - BYO Prometheus dan Grafana

Observabilitas Jaringan AKS digunakan untuk mengumpulkan data lalu lintas jaringan kluster AKS Anda. Network Observability memungkinkan platform terpusat untuk memantau aplikasi dan kesehatan jaringan. Prometheus mengumpulkan metrik Observabilitas Jaringan AKS, dan Grafana memvisualisasikannya. Baik Cilium maupun sarana data non-Cilium didukung. Dalam artikel ini, pelajari cara mengaktifkan add-on Network Observability dan menggunakan BYO Prometheus dan Grafana untuk memvisualisasikan metrik yang diekstraksi.

Catatan

Dimulai dengan Kubernetes versi 1.29, fitur pengamatan jaringan tidak lagi mendukung Bring Your Own (BYO) Prometheus dan Grafana. Namun, Anda masih dapat mengaktifkannya menggunakan penawaran Azure Managed Prometheus dan Grafana

Penting

Observabilitas Jaringan AKS saat ini dalam PRATINJAU. Lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure untuk persyaratan hukum yang berlaku pada fitur Azure dalam versi beta, pratinjau, atau belum dirilis secara umum.

Untuk informasi selengkapnya tentang Observabilitas Jaringan AKS, lihat Apa itu Azure Kubernetes Service (AKS) Network Observability?.

Prasyarat

  • Versi minimum Azure CLI yang diperlukan untuk langkah-langkah dalam artikel ini adalah 2.44.0. Jalankan az --version untuk menemukan versinya. Jika Anda perlu memasang atau meningkatkan, lihat Memasang Azure CLI.

Memasang ekstensi aks-preview Azure CLI

Penting

Fitur pratinjau AKS tersedia berdasarkan layanan mandiri. Pratinjau disediakan "apa adanya" dan "sebagaimana tersedia," dan mereka dikecualikan dari perjanjian tingkat layanan dan garansi terbatas. Pratinjau AKS sebagian dicakup oleh dukungan pelanggan berdasarkan upaya terbaik. Dengan demikian, fitur-fitur ini tidak dimaksudkan untuk penggunaan produksi. Untuk informasi lebih lanjut, lihat artikel dukungan berikut ini:

# Install the aks-preview extension
az extension add --name aks-preview

# Update the extension to make sure you have the latest version installed
az extension update --name aks-preview

Daftarkan NetworkObservabilityPreview bendera fitur

az feature register --namespace "Microsoft.ContainerService" --name "NetworkObservabilityPreview"

Gunakan az feature show untuk memeriksa status pendaftaran bendera fitur:

az feature show --namespace "Microsoft.ContainerService" --name "NetworkObservabilityPreview"

Tunggu hingga fitur mengatakan Terdaftar sebelum mendahului artikel.

{
  "id": "/subscriptions/23250d6d-28f0-41dd-9776-61fc80805b6e/providers/Microsoft.Features/providers/Microsoft.ContainerService/features/NetworkObservabilityPreview",
  "name": "Microsoft.ContainerService/NetworkObservabilityPreview",
  "properties": {
    "state": "Registering"
  },
  "type": "Microsoft.Features/providers/features"
}

Saat fitur terdaftar, refresh pendaftaran penyedia sumber daya Microsoft.ContainerService dengan daftar penyedia az:

az provider register -n Microsoft.ContainerService

Buat grup sumber daya

Grup sumber daya adalah kontainer logis yang disebarkan dan dikelola oleh sumber daya Azure. Buat grup sumber daya dengan perintah az group create . Contoh berikut ini menampilkan cara membuat grup sumber daya bernama myResourceGroup di lokasi eastus:

az group create \
    --name myResourceGroup \
    --location eastus

Membuat kluster AKS

Buat kluster AKS dengan perintah az aks create . Contoh berikut membuat kluster AKS bernama myAKSCluster di grup sumber daya myResourceGroup :

Kluster non-Cilium mendukung pengaktifan Network Observability pada kluster yang ada atau selama pembuatan kluster baru.

Kluster baru

Gunakan az aks create dalam contoh berikut untuk membuat kluster AKS dengan Network Observability dan non-Cilium.

az aks create \
    --name myAKSCluster \
    --resource-group myResourceGroup \
    --location eastus \
    --generate-ssh-keys \
    --network-plugin azure \
    --network-plugin-mode overlay \
    --pod-cidr 192.168.0.0/16 \
    --enable-network-observability

Kluster yang ada

Gunakan az aks update untuk mengaktifkan Network Observability pada kluster yang ada.

az aks update \
    --resource-group myResourceGroup \
    --name myAKSCluster \
    --enable-network-observability 

Mendapatkan kredensial kluster

az aks get-credentials --name myAKSCluster --resource-group myResourceGroup

Mengaktifkan Visualisasi di Grafana

Gunakan contoh berikut untuk mengonfigurasi pekerjaan scrape di Prometheus dan mengaktifkan visualisasi di Grafana untuk kluster AKS Anda.

Catatan

Bagian berikut memerlukan penginstalan Prometheus dan Grafana.

  1. Tambahkan pekerjaan scrape berikut ke konfigurasi Prometheus yang ada dan mulai ulang server Prometheus Anda:

    scrape_configs:
      - job_name: "network-obs-pods"
        kubernetes_sd_configs:
          - role: pod
        relabel_configs:
          - source_labels: [__meta_kubernetes_pod_container_name]
            action: keep
            regex: kappie(.*)
          - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
            separator: ":"
            regex: ([^:]+)(?::\d+)?
            target_label: __address__
            replacement: ${1}:${2}
            action: replace
          - source_labels: [__meta_kubernetes_pod_node_name]
            action: replace
            target_label: instance
        metric_relabel_configs:
          - source_labels: [__name__]
            action: keep
            regex: (.*)
    
  2. Dalam Target Prometheus, verifikasi bahwa ada network-obs-pods .

  3. Masuk ke Grafana dan impor dasbor Network Observability dengan ID 18814.

Membersihkan sumber daya

Jika Anda tidak akan terus menggunakan aplikasi ini, hapus kluster AKS dan sumber daya lain yang dibuat dalam artikel ini dengan contoh berikut:

  az group delete \
    --name myResourceGroup

Langkah berikutnya

Dalam artikel panduan ini, Anda mempelajari cara menginstal dan mengaktifkan AKS Network Observability untuk kluster AKS Anda.