Mengonfigurasi jalur pipa Azure Monitor

Artikel ini menjelaskan proses penyiapan keseluruhan untuk pipeline Azure Monitor dan memberikan detail untuk penyiapan umum awal kluster Kubernetes yang terintegrasi dengan Arc untuk pipeline.

Menyelesaikan alur penyiapan

Penyebaran lengkap alur Azure Monitor mencakup langkah-langkah berikut:

  1. Verifikasi prasyarat.
  2. Instal cert-manager pada kluster Kubernetes dengan dukungan Arc.
  3. Selesaikan penerapan jalur pipa dengan menggunakan salah satu metode berikut:
  4. Jika Anda perlu memfilter, mengagregasi, atau membentuk ulang data masuk:
    1. Tambahkan transformasi pipa.
  5. Jika sumber data klien berada di luar kluster:
    1. Mengekspos alur melalui gateway. Lihat alur Azure Monitor - Gateway untuk penyebaran Kubernetes.
    2. Konfigurasikan klien eksternal Anda untuk menyambungkan ke IP dan port gateway yang tepat. Lihat Konfigurasi gateway Kubernetes untuk alur Azure Monitor.
  6. Jika Anda memerlukan penyerapan terenkripsi:
    1. Konfigurasikan TLS. Mulailah dengan konfigurasi TLS alur Azure Monitor.
  7. Jika perilaku penempatan pod default tidak memenuhi kebutuhan performa, isolasi, atau kepatuhan Anda:
    1. Atur penempatan pod untuk pipa.

Diagram alur penyiapan Azure Monitor dengan langkah-langkah untuk prasyarat, cert-manager, penerapan, dan titik keputusan untuk data, TLS, klien, dan penjadwalan.

Prasyarat

Menginstal cert-manager untuk Kubernetes dengan dukungan Arc

Bagian ini menjelaskan cara menginstal cert-manager sebagai ekstensi Azure Arc. Anda perlu menginstal cert-manager untuk alur Azure Monitor. Saat Anda menginstal cert-manager sebagai ekstensi terkelola kluster (CME), ia mendaftarkan layanan cert-manager dan trust-manager pada kluster Anda.

Untuk distribusi dan wilayah Kubernetes yang saat ini didukung, lihat Konfigurasi yang didukung.

Hapus instans cert-manager dan trust-manager yang sudah ada

Peringatan

Selama proses menguninstall versi sumber terbuka dan menginstal ekstensi Arc, rotasi sertifikat tidak terjadi, dan bundel kepercayaan tidak didistribusikan ke namespace baru. Pastikan periode ini sesingkat mungkin untuk meminimalkan potensi risiko keamanan. Menghapus instalan sumber terbuka cert-manager dan trust-manager tidak menghapus sertifikat yang ada atau sumber daya terkait yang Anda buat. Sumber daya ini tetap dapat digunakan setelah Azure cert-manager diinstal.

Hapus semua instans cert-manager dan trust-manager yang ada dari kluster. Anda harus menghapus versi sumber terbuka apa pun sebelum menginstal versi Microsoft. Langkah-langkah khusus untuk penghapusan bergantung pada metode penginstalan Anda. Untuk panduan terperinci, lihat Mencopot pemasangan cert-manager dan Mencopot pemasangan trust-manager. Jika Anda menggunakan Helm untuk penginstalan, gunakan perintah berikut untuk memeriksa namespace yang digunakan oleh cert-manager dan trust-manager.

helm list -A | grep -E 'trust-manager|cert-manager'

Jika Anda memiliki ekstensi cert-manager yang sudah ada yang terinstal, hapus instalannya dengan menggunakan perintah berikut:

export RESOURCE_GROUP="<resource-group-name>"
export CLUSTER_NAME="<arc-enabled-cluster-name>"
export LOCATION="<arc-enabled-cluster-location>"

NAME_OF_OLD_EXTENSION=$(az k8s-extension list --resource-group ${RESOURCE_GROUP} --cluster-name ${CLUSTER_NAME})
az k8s-extension delete --name ${NAME_OF_OLD_EXTENSION} --cluster-name ${CLUSTER_NAME} \
  --resource-group ${RESOURCE_GROUP} --cluster-type connectedClusters

Menginstal ekstensi cert-manager

Gunakan perintah berikut untuk menyambungkan kluster Anda ke Azure Arc jika belum tersambung.

az connectedk8s connect --name ${CLUSTER_NAME} --resource-group ${RESOURCE_GROUP} --location ${LOCATION}

Instal ekstensi cert-manager dengan menggunakan perintah berikut:

az k8s-extension create \
  --resource-group ${RESOURCE_GROUP} \
  --cluster-name ${CLUSTER_NAME} \
  --cluster-type connectedClusters \
  --name "azure-cert-management" \
  --extension-type "microsoft.certmanagement" \
  --release-train stable \
  --config subcharts.zdtrcontroller.enabled=true

Pilih metode konfigurasi

Pilih pendekatan yang sesuai dengan kebutuhan Anda:

Metode Kapan digunakan Fitur utama
Portal Azure *Persiapan
* Konfigurasi sederhana
* Penyebaran cepat
* Pengalaman antarmuka pengguna terpandu
* Pembuatan komponen otomatis
* Validasi bawaan
Templat CLI/ARM * Skenario tingkat lanjut
* Automasi diperlukan
* Persyaratan kustom
* Kontrol konfigurasi penuh
* Buffering ke volume persisten
* Tabel kustom
* Infrastruktur sebagai kode

Petunjuk / Saran

Baru mengenal alur Azure Monitor? Mulailah dengan portal. Anda selalu dapat beralih ke templat CLI/ARM nanti untuk fitur tingkat lanjut.

Verifikasi konfigurasi

Setelah Anda menyelesaikan konfigurasi dengan menggunakan metode yang Anda pilih, gunakan langkah-langkah berikut untuk memverifikasi bahwa alur berjalan dengan benar di lingkungan Anda.

Memverifikasi komponen alur yang berjalan di kluster

Di portal Azure, buka menu Kubernetes dan pilih kluster Kube yang mendukung Azure Arc. Pilih Layanan dan ingres dan pastikan Anda melihat layanan berikut:

  • <nama rangkaian>-layanan eksternal
  • <nama alur>-layanan

Screenshot komponen kluster yang mendukung Azure Monitor pipeline.

Memverifikasi detak jantung

Setiap alur yang Anda konfigurasikan dalam instans alur Anda mengirimkan rekaman heartbeat ke tabel Heartbeat di ruang kerja Log Analytics Anda setiap menit. Konten kolom OSMajorVersion harus sesuai dengan nama instansi alur Anda. Jika instans alur memiliki beberapa ruang kerja, ruang kerja pertama yang dikonfigurasi akan digunakan.

Untuk mengambil rekaman heartbeat, gunakan kueri log seperti yang diperlihatkan dalam contoh berikut:

Tangkapan layar kueri log yang mengembalikan catatan heartbeat untuk Azure Monitor pipeline.

Konfigurasikan Azure Private Link untuk menyambungkan ke Azure Monitor menggunakan titik akhir privat. Lihat Konfigurasi tautan privat untuk Azure Monitor untuk detail tentang membuat cakupan tautan Privat Azure Monitor dan menyambungkannya ke ruang kerja Log Analytics.

Saat Anda menggunakan tautan privat dengan alur Azure Monitor, ingatlah poin-poin utama berikut tentang arsitektur:

  • Instans alur berjalan di dalam kluster Kubernetes dengan dukungan Azure Arc.
  • Kluster terhubung ke jaringan virtual Azure yang menghosting titik akhir pribadi.
  • Nonaktifkan akses jaringan publik pada titik akhir pengumpulan data (DCE). Alur mengekspor telemetri secara privat ke Azure Monitor dengan menggunakan:

Nota

Klien masih dapat mengirim telemetri ke titik akhir publik, internal, atau penyeimbang beban alur. Private Link hanya mengamankan koneksi dari kluster ke Azure Monitor.

Membuat jaringan virtual dan subnet untuk titik akhir privat

Buat endpoint privat di jaringan virtual Azure yang dikelola oleh pelanggan dan dapat dijangkau oleh kluster Kubernetes.

Mengonfigurasi zona DNS privat

Tautkan zona DNS private ke jaringan virtual Azure yang menghosting titik akhir privat, belum tentu kluster Kubernetes itu sendiri. Pastikan setiap zona ada dan ditautkan ke jaringan virtual.

Nota

Kluster Kubernetes (termasuk kluster yang didukung Azure Arc) harus dapat menyelesaikan nama-nama ini melalui konfigurasi DNS jaringan virtual.

Setelah konfigurasi:

  • Pod Pipeline memetakan endpoint Azure Monitor ke alamat IP pribadi.
  • Telemetri mengalir ke Log Analytics.
  • DCE memblokir akses jaringan publik.

Untuk kluster Kubernetes dengan dukungan Azure Arc, validasi bahwa:

  • Resolusi DNS berfungsi dari dalam pod kluster.
  • Routing jaringan mengizinkan lalu lintas ke titik akhir privat Azure.

Troubleshooting

Pod operator di CrashLoopBackOff - Ekstensi Pengelola Sertifikat Tidak Ditemukan

Jika Anda melihat pod operator terus menerus restart berstatus CrashLoopBackOff seperti dalam contoh berikut:

kubectl get pods -n mon
NAME                                                              READY   STATUS             RESTARTS       AGE
edge-pipeline-pipeline-operator-controller-manager-6f847d4njwcn   1/2     CrashLoopBackOff   11 (24s ago)   31m

Periksa log dengan menggunakan perintah berikut:

kubectl logs <operator-pod-name> -n mon

Anda mungkin melihat kesalahan yang mirip dengan pesan berikut:

AttemptTlsBootstrap returned an error:  failed to apply resource: the server could not find the requested resource (patch clusterissuers.meta.k8s.io arc-amp-selfsigned-cluster-issuer)
Please ensure Azure Arc Cert Manager Extension is installed on the cluster.
panic: failed to apply resource: the server could not find the requested resource (patch clusterissuers.meta.k8s.io arc-amp-selfsigned-cluster-issuer)

Cause: Operator alur bergantung pada ekstensi Azure Arc Certificate Manager, yang menyediakan infrastruktur sertifikat (ClusterIssuer sumber daya). Operator tidak dapat memulai tanpanya.

Solusi: Instal ekstensi Pengelola Sertifikat terlebih dahulu untuk memulai operator alur dengan sukses. Untuk petunjuk penginstalan, lihat Menginstal cert-manager untuk Kubernetes dengan dukungan Arc.

Verifikasi ekstensi Pengelola Sertifikat diinstal:

az k8s-extension list --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --query "[?extensionType=='microsoft.certmanagement'].{Name:name, State:provisioningState}" -o table

Ekstensi harus menunjukkan status Succeeded provisi.