Memantau Config Sync dengan Cloud Monitoring
Halaman ini menjelaskan cara mengirim metrik dari Config Sync ke Cloud Monitoring.
Config Sync menggunakan OpenTelemetry untuk membuat, merekam, dan mengekspor metriknya. Halaman ini menjelaskan cara mengonfigurasi metrik Cloud Monitoring. Cara lain untuk mengekspor metrik, lihat Memantau Config Sync dengan Prometheus atau Memantau Config Sync dengan pemantauan kustom.
Mengonfigurasi metrik Cloud Monitoring memerlukan izin iam.serviceAccounts.setIamPolicy
pada project.
Untuk mengetahui contoh cara melihat metrik ini, baca artikel Contoh prosedur proses debug dan artikel metrik OpenCensus di Cloud Monitoring.
Memberikan izin penulisan metrik untuk Cloud Monitoring
Guna mengonfigurasi Cloud Monitoring untuk Config Sync, Anda harus memberikan izin penulisan metrik ke akun layanan di project Anda. Izin yang diperlukan bergantung pada apakah Workload Identity diaktifkan atau tidak.
Mengonfigurasi Cloud Monitoring dengan Workload Identity
Jika Workload Identity diaktifkan, izinkan Config Sync untuk mengirim metrik dengan menjalankan perintah ini:
gcloud projects add-iam-policy-binding PROJECT_ID \
--role=roles/monitoring.metricWriter \
--member="serviceAccount:PROJECT_ID.svc.id.goog[config-management-monitoring/default]"
Ganti PROJECT_ID
dengan project ID cluster.
Mengonfigurasi Cloud Monitoring tanpa Workload Identity
Jika Workload Identity tidak diaktifkan dan Config Sync berjalan di dalam lingkungan Google Cloud, Anda dapat menggunakan akun layanan default Compute Engine. Jika pemberian peran Editor otomatis (roles/editor
) dinonaktifkan, berikan peran IAM Monitoring Metric Writer (roles/monitoring.metricWriter
) ke akun layanan dengan menjalankan perintah berikut:
gcloud projects add-iam-policy-binding PROJECT_ID \
--role=roles/monitoring.metricWriter \
--member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com
Ganti kode berikut:
PROJECT_ID
: project ID Anda.PROJECT_NUMBER
: nomor project Anda.
Daftar metrik default di Cloud Monitoring
Nama | Jenis |
---|---|
api_duration_seconds | Distribusi |
apply_duration_seconds | Distribusi |
apply_operations_total | Jumlah |
declared_resources | Nilai Terakhir |
internal_errors_total | Jumlah |
last_sync_timestamp | Nilai Terakhir |
pipeline_error_observed | Nilai Terakhir |
reconciler_errors | Nilai Terakhir |
resource_fights_total | Jumlah |
reconcile_duration_seconds | Distribusi |
resource_group_total | Nilai Terakhir |
resource_count | Nilai Terakhir |
ready_resource_count | Nilai Terakhir |
resource_ns_count | Nilai Terakhir |
cluster_scoped_resource_count | Nilai Terakhir |
kcc_resource_count | Meteran |
Untuk mengubah daftar metrik yang diizinkan di Cloud Monitoring, ikuti petunjuk untuk mem-patch deployment kolektor OAuth dengan ConfigMap.
Contoh prosedur proses debug untuk Cloud Monitoring
Contoh Cloud Monitoring berikut mengilustrasikan beberapa pola penggunaan metrik OpenCensus untuk mendeteksi dan mendiagnosis masalah yang terkait dengan Config Sync saat Anda menggunakan API RootSync dan RepoSync.
Format metrik
Dalam Cloud Monitoring, metrik memiliki format berikut: custom.googleapis.com/opencensus/config_sync/METRIC
.
Nama metrik ini terdiri dari komponen berikut:
custom.googleapis.com
: semua metrik kustom memiliki awalan iniopencensus
: awalan ini ditambahkan karena Config Sync menggunakan library OpenCensusconfig_sync/
: metrik yang diekspor Config Sync ke Cloud Monitoring memiliki awalan iniMETRIC
: nama metrik yang ingin Anda kueri
Mengkueri metrik dengan rekonsiler
Objek RootSync dan RepoSync diinstrumentasikan dengan metrik tingkat tinggi yang memberi Anda insight berguna tentang cara kerja Config Sync di cluster tersebut. Hampir semua metrik diberi tag dengan nama rekonsiler, sehingga Anda dapat melihat apakah terjadi error dan menyiapkan pemberitahuan untuk error tersebut di Cloud Monitoring.
Rekonsiler adalah Pod yang di-deploy sebagai Deployment. Menyinkronkan manifes dari
sumber kebenaran ke cluster. Saat Anda membuat objek RootSync, Config Sync akan membuat rekonsiler yang disebut root-reconciler-ROOT_SYNC_NAME
atau root-reconciler
jika nama RootSync adalah root-sync
. Saat Anda membuat
objek RepoSync, Config Sync akan membuat rekonsiler yang disebut
ns-reconciler-NAMESPACE-REPO_SYNC_NAME-REPO_SYNC_NAME_LENGTH
atau ns-reconciler-NAMESPACE
jika nama RepoSync adalah
repo-sync
, dengan NAMESPACE
adalah namespace tempat Anda membuat
objek RepoSync.
Diagram berikut menunjukkan cara kerja Pod rekonsiler jika sumber kebenaran adalah repositori Git:
Misalnya, untuk memfilter berdasarkan nama rekonsiler saat Anda menggunakan Cloud Monitoring, selesaikan tugas berikut:
Di konsol Google Cloud, buka Monitoring:
Di panel navigasi Monitoring, klik leaderboard Metrics Explorer.
Di menu drop-down Pilih metrik, tambahkan:
custom.googleapis.com/opencensus/config_sync/reconciler_errors
.Di menu drop-down Filter, pilih rekonsiliasi. Kotak filter kolom akan muncul.
Di kotak kolom filter, pilih = di kolom pertama dan nama rekonsiler (misalnya,
root-reconciler
) di kolom kedua.Klik Terapkan.
Anda kini dapat melihat metrik untuk objek RootSync.
Untuk petunjuk lebih lanjut tentang cara memfilter menurut jenis data tertentu, lihat Memfilter data.
Operasi Query Config Sync menurut komponen dan status
Setelah Anda mengaktifkan RootSync dan RepoSync API, impor dan sumber
dari sumber tepercaya serta sinkronisasi ke cluster akan ditangani oleh rekonsiler.
Metrik reconciler_errors
diberi label menurut komponen sehingga Anda dapat melihat di mana terjadi error.
Misalnya, untuk memfilter berdasarkan komponen saat Anda menggunakan Cloud Monitoring, selesaikan tugas berikut:
Di konsol Google Cloud, buka Monitoring:
Di panel navigasi Monitoring, klik leaderboard Metrics Explorer.
Di menu drop-down Select a metric, tambahkan
custom.googleapis.com/opencensus/config_sync/reconciler_errors
.Di menu drop-down Filter, pilih komponen. Kotak filter kolom akan muncul.
Di kotak kolom filter, pilih = di kotak pertama dan sumber di kotak kedua.
Klik Terapkan.
Sekarang Anda dapat melihat error yang terjadi saat mencari sumber dari sumber tepercaya untuk rekonsiler Anda.
Anda juga dapat memeriksa metrik sumber dan menyinkronkan proses itu sendiri dengan membuat kueri metrik dan memfilter berikut berdasarkan tag status
:
custom.googleapis.com/opencensus/config_sync/parser_duration_seconds
custom.googleapis.com/opencensus/config_sync/apply_duration_seconds
custom.googleapis.com/opencensus/config_sync/remediate_duration_seconds