Halaman ini menjelaskan cara menggunakan metrik untuk memantau Pengontrol Kebijakan.
Pengontrol Kebijakan menyertakan beberapa metrik yang terkait dengan penggunaan kebijakan. Misalnya, ada metrik yang mencatat jumlah batasan dan template batasan, serta jumlah pelanggaran audit yang terdeteksi. Untuk membuat dan mencatat metrik ini, Pengontrol Kebijakan menggunakan OpenTelemetry. Anda dapat mengonfigurasi Policy Controller untuk mengekspor metrik ini ke Prometheus atau Cloud Monitoring. Setelan default untuk mengekspor metrik mengekspor metrik ke Prometheus dan Cloud Monitoring.
Mengonfigurasi ekspor metrik
Anda dapat mengonfigurasi cara Pengontrol Kebijakan mengekspor metrikanya. Anda dapat memilih Prometheus, Cloud Monitoring, keduanya, atau tidak sama sekali saat menginstal Policy Controller. Secara default, Pengontrol Kebijakan mencoba mengekspor metrik ke Prometheus dan Cloud Monitoring.
Mengekspor metrik ke Cloud Monitoring
Jika Policy Controller berjalan di dalam lingkungan Google Cloud yang memiliki akun layanan default, Policy Controller akan otomatis mengekspor metrik ke Cloud Monitoring.
Jika Workload Identity Federation for GKE atau Workload Identity Federation fleet diaktifkan, izinkan Policy Controller mengirim metrik dengan menjalankan perintah ini:
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="serviceAccount:PROJECT_ID.svc.id.goog[gatekeeper-system/gatekeeper-admin]" \
--role=roles/monitoring.metricWriter
Ganti PROJECT_ID
dengan project ID Google Cloud cluster.
Anda dapat melihat metrik ini dengan Metrics Explorer atau dengan menggunakan Cloud Monitoring API.
Mengekspor metrik ke Prometheus
Pengontrol Kebijakan mengekspor metrik untuk Prometheus di port 8888 dari Pod gatekeeper-controller-manager-*
di bawah namespace gatekeeper-system
.
Jika Policy Controller berjalan di cluster dengan Google Cloud Managed Service for Prometheus yang dikonfigurasi, metrik ini akan otomatis dikumpulkan dan disimpan di Cloud Monitoring. Hal ini juga berfungsi untuk cluster yang mengaktifkan Google Cloud Managed Service for Prometheus setelah Pengontrol Kebijakan diinstal. Anda mungkin juga perlu memberikan izin tambahan ke akun layanan Compute Engine default yang digunakan Google Cloud Managed Service for Prometheus, bergantung pada kebijakan Anda. Untuk mengetahui detail tentang cara memberikan izin ke Google Cloud Managed Service for Prometheus, lihat Mengaktifkan Pengumpulan Terkelola: GKE. Untuk informasi selengkapnya tentang cara mengonfigurasi Google Cloud Managed Service for Prometheus, lihat Memulai koleksi terkelola.
Karena Policy Controller tersedia dengan GKE Enterprise, tidak ada biaya tambahan untuk Google Cloud Observability, termasuk Google Cloud Managed Service for Prometheus. Jika Anda telah menginstal Policy Controller sebelum memerlukan lisensi GKE Enterprise, dan telah mengaktifkan Google Cloud Managed Service for Prometheus, Anda mungkin melihat tagihan untuk metrik yang dikumpulkan. Untuk mengetahui informasi selengkapnya tentang harga Cloud Monitoring, lihat Harga untuk Google Cloud Managed Service for Prometheus.
Untuk contoh cara melihat metrik dengan solusi Google Cloud Managed Service for Prometheus, lihat Kueri menggunakan Cloud Monitoring.
Lihat metrik
Metrik Policy Controller diekspor ke project Cloud Monitoring Anda dalam format Prometheus. Akibatnya, Anda dapat membuat kueri metrik menggunakan Cloud Monitoring API dan dasbor di Konsol Google Cloud. Anda dapat mengedit dasbor ini untuk memenuhi kebutuhan bisnis dan operasional Anda.
Untuk membuat kueri Cloud Monitoring API, gunakan Prometheus Query Language (PromQL) (bahasa kueri de facto untuk metrik Kubernetes) atau Monitoring Query Language (MQL) (bahasa kueri metrik eksklusif Google).
Untuk membuat dasbor Pengontrol Kebijakan:
Di Konsol Google Cloud, buka halaman Dashboards.
Di halaman Ringkasan dasbor, klik tab Sample library. Tab ini menampilkan semua dasbor yang dapat Anda impor.
Di kolom Kategori, pilih Anthos Config Management.
Di tabel Contoh Anthos Config Management, pilih kotak centang Policy Controller.
Klik download Impor.
Untuk membuat dasbor, klik Konfirmasi di jendela konfirmasi.
Untuk melihat dan mengedit dasbor Pengontrol Kebijakan:
- Di halaman Ringkasan dasbor, pilih tab Daftar dasbor.
- Pilih dasbor Pengontrol Kebijakan.
- Untuk menyesuaikan dasbor, klik Edit dasbor.
- Lakukan perubahan yang diperlukan, lalu klik Simpan. Untuk mempelajari lebih lanjut cara menyesuaikan dasbor, lihat Memfilter dasbor dalam dokumentasi Cloud Monitoring.
Membuat pemberitahuan
Untuk menerima notifikasi saat metrik Anda memenuhi nilai minimum tertentu, buat kebijakan pemberitahuan di Cloud Monitoring.
Integrasi pihak ketiga
Dengan menggunakan Cloud Monitoring API, alat visibilitas pihak ketiga apa pun dapat menyerap metrik Pengontrol Kebijakan.
Misalnya, jika Anda menggunakan dasbor Grafana, tambahkan Cloud Monitoring API sebagai sumber data di Grafana. Untuk mempelajari lebih lanjut, lihat Google Cloud Monitoring di dokumentasi Grafana.
Metrik yang tersedia
Jika Pengontrol Kebijakan diaktifkan di cluster dan dikonfigurasi untuk diekspor ke Cloud Monitoring, Anda dapat membuat kueri untuk metrik berikut (semuanya diawali dengan OpenCensus/
):
Nama | Jenis | Label | Deskripsi |
---|---|---|---|
OpenCensus/audit_duration_seconds |
Kumulatif | Distribusi durasi siklus audit | |
OpenCensus/audit_last_run_time |
Meteran | Stempel waktu epoch sejak runtime audit terakhir, yang diberikan sebagai detik dalam floating point | |
OpenCensus/constraint_template_ingestion_count |
Kumulatif | status | Total jumlah tindakan penyerapan template batasan |
OpenCensus/constraint_template_ingestion_duration_seconds |
Kumulatif | status | Distribusi durasi penyerapan Template Batasan |
OpenCensus/constraint_templates |
Meteran | status | Jumlah template batasan saat ini |
OpenCensus/validation_request_count |
Penghitung | admission_status | Jumlah permintaan izin masuk dari server API |
OpenCensus/validation_request_duration_seconds |
Kumulatif | admission_status | Distribusi durasi permintaan pendaftaran |
OpenCensus/violations |
Meteran | enforcement_action | Jumlah pelanggaran audit yang terdeteksi dalam siklus audit terakhir |
OpenCensus/watch_manager_intended_watch_gvk |
Meteran | Jumlah GroupVersionKinds Policy Controller unik yang dimaksudkan untuk dipantau. Metrik ini adalah kombinasi dari resource dan batasan yang disinkronkan. | |
OpenCensus/watch_manager_watched_gvk |
Meteran | Jumlah GroupVersionKinds Policy Controller unik yang sebenarnya sedang dipantau. Metrik ini dimaksudkan untuk konvergen menjadi sama dengan OpenCensus/watch_manager_intended_watch_gvk . |
Jika Pengontrol Kebijakan dikonfigurasi untuk diekspor ke Prometheus, Anda dapat membuat kueri metrik berikut (semua diawali dengan Prometheus/
):
Nama | Jenis | Label | Deskripsi |
---|---|---|---|
Prometheus/gatekeeper_audit_duration_seconds/histogram |
Kumulatif | Distribusi durasi siklus audit | |
Prometheus/gatekeeper_audit_last_run_end_time/gauge |
Meteran | Stempel waktu epoch akhir audit terakhir yang dijalankan, diberikan sebagai detik dalam floating point | |
Prometheus/gatekeeper_audit_last_run_time/gauge |
Meteran | Stempel waktu epoch awal audit terakhir yang dijalankan, diberikan sebagai detik dalam floating point | |
Prometheus/gatekeeper_constraint_template_ingestion_count/counter |
Kumulatif | status | Total jumlah tindakan penyerapan template batasan |
Prometheus/gatekeeper_constraint_template_ingestion_duration_seconds/histogram |
Kumulatif | status | Distribusi durasi penyerapan Template Batasan |
Prometheus/gatekeeper_constraint_templates/gauge |
Meteran | status | Jumlah template batasan saat ini |
Prometheus/gatekeeper_validation_request_count/counter |
Kumulatif | admission_status, admission_dryrun | Jumlah permintaan izin masuk dari server API |
Prometheus/gatekeeper_validation_request_duration_seconds/histogram |
Kumulatif | admission_status | Distribusi durasi permintaan pendaftaran |
Prometheus/gatekeeper_violations/gauge |
Meteran | enforcement_action | Jumlah pelanggaran audit yang terdeteksi dalam siklus audit terakhir |
Prometheus/gatekeeper_watch_manager_intended_watch_gvk/gauge |
Meteran | Jumlah GroupVersionKinds Policy Controller unik yang dimaksudkan untuk dipantau. Metrik ini adalah kombinasi dari resource dan batasan yang disinkronkan. | |
Prometheus/gatekeeper_watch_manager_watched_gvk/gauge |
Meteran | Jumlah GroupVersionKinds Policy Controller unik yang sebenarnya sedang dipantau. Metrik ini dimaksudkan untuk konvergen menjadi sama dengan Prometheus/gatekeeper_watch_manager_intended_watch_gvk/gauge . |