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.
Sebaiknya gunakan Cloud Monitoring (halaman ini) atau Prometheus untuk mengekspor metrik. Anda juga dapat menggunakan metrik kustom.
Mengonfigurasi metrik Cloud Monitoring memerlukan izin iam.serviceAccounts.setIamPolicy
pada project.
Untuk contoh cara melihat metrik ini, lihat
Contoh prosedur pen-debug-an.
Anda dapat melihat metrik ini dengan
Metrics Explorer atau dengan
menggunakan Cloud Monitoring API.
Memberikan izin penulisan metrik untuk Cloud Monitoring
Untuk 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 Federation untuk GKE diaktifkan.
Mengonfigurasi Cloud Monitoring dengan Workload Identity Federation untuk GKE
Jika Workload Identity Federation untuk GKE diaktifkan, izinkan Config Sync 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 Federation untuk GKE
Jika Workload Identity Federation untuk GKE tidak diaktifkan dan Config Sync berjalan di dalam lingkunganGoogle Cloud , Anda dapat menggunakan akun layanan default Compute Engine. Jika organisasi Anda menerapkan
batasan kebijakan organisasi iam.automaticIamGrantsForDefaultServiceAccounts
,
akun layanan ini mungkin tidak otomatis diberi peran Editor
(roles/editor
) di project Anda. Anda harus memberikan peran IAM
Monitoring Metric Writer (roles/monitoring.metricWriter
) di project kepada akun layanan default Compute Engine 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 yang disetujui metrik di Cloud Monitoring, ikuti petunjuk untuk membuat patch pada deployment pengumpul otel dengan ConfigMap.
Contoh prosedur pen-debug-an untuk Cloud Monitoring
Contoh Cloud Monitoring berikut mengilustrasikan beberapa pola untuk menggunakan metrik OpenCensus guna mendeteksi dan mendiagnosis masalah terkait Config Sync saat Anda menggunakan API RootSync dan RepoSync.
Format metrik
Di 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
Mengueri metrik menurut rekonsiliator
Objek RootSync dan RepoSync diinstrumentasikan dengan metrik tingkat tinggi yang memberi Anda insight berguna tentang cara Config Sync beroperasi di cluster. Hampir semua metrik diberi tag berdasarkan nama rekonsiliator, sehingga Anda dapat melihat apakah ada error yang terjadi dan dapat menyiapkan pemberitahuan untuk error tersebut di Cloud Monitoring.
Reconciler adalah Pod yang di-deploy sebagai Deployment. Sinkronisasi manifes dari
sumber tepercaya ke cluster. Saat Anda membuat objek RootSync, Config Sync akan membuat rekonsiliasi 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 rekonsiliator 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 rekonsiliasi saat sumber tepercaya adalah repositori Git:
Misalnya, untuk memfilter menurut nama rekonsiliator 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 penyerasian. Kotak kolom filter akan muncul.
Di kotak kolom filter, pilih = di kolom pertama dan nama rekonsiliasi (misalnya,
root-reconciler
) di kolom kedua.Klik Terapkan.
Sekarang Anda dapat melihat metrik untuk objek RootSync.
Untuk mengetahui petunjuk selengkapnya tentang cara memfilter menurut jenis data tertentu, lihat Memfilter data.
Mengueri operasi Config Sync menurut komponen dan status
Setelah Anda mengaktifkan API RootSync dan RepoSync, pengimporan dan pengambilan dari sumber tepercaya serta sinkronisasi ke cluster akan ditangani oleh rekonsiliator.
Metrik reconciler_errors
diberi label menurut komponen sehingga Anda dapat melihat tempat terjadinya error.
Misalnya, untuk memfilter menurut 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 Pilih metrik, tambahkan
custom.googleapis.com/opencensus/config_sync/reconciler_errors
.Di menu drop-down Filter, pilih komponen. Kotak kolom filter 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 mengambil data dari sumber tepercaya untuk penyelesaian Anda.
Anda juga dapat memeriksa metrik untuk proses sumber dan sinkronisasi itu sendiri dengan
mengirimkan kueri ke metrik berikut dan memfilter menurut 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