Dokumen ini menjelaskan cara mengonfigurasi deployment Google Kubernetes Engine agar Anda dapat menggunakan Layanan Terkelola Google Cloud untuk Prometheus guna mengumpulkan metrik dari eksportir Jenkins. Dokumen ini menunjukkan cara melakukan hal berikut:
- Siapkan pengekspor Jenkins untuk melaporkan metrik.
- Konfigurasikan resource PodMonitoring untuk Managed Service for Prometheus guna mengumpulkan metrik yang diekspor.
- Akses dasbor di Cloud Monitoring untuk melihat metrik.
- Konfigurasikan aturan pemberitahuan untuk memantau metrik.
Petunjuk ini hanya berlaku jika Anda menggunakan koleksi terkelola dengan Managed Service for Prometheus. Jika Anda menggunakan koleksi yang di-deploy sendiri, lihat dokumentasi Jenkins untuk mengetahui informasi penginstalan.
Petunjuk ini diberikan sebagai contoh dan diharapkan berfungsi di sebagian besar lingkungan Kubernetes. Jika Anda mengalami masalah saat menginstal aplikasi atau eksportir karena kebijakan organisasi atau keamanan yang membatasi, sebaiknya konsultasikan dokumentasi open source untuk mendapatkan dukungan.
Untuk informasi tentang Jenkins, lihat Jenkins.
Prasyarat
Untuk mengumpulkan metrik dari eksportir Jenkins menggunakan Managed Service for Prometheus dan koleksi terkelola, deployment Anda harus memenuhi persyaratan berikut:
- Cluster Anda harus menjalankan Google Kubernetes Engine versi 1.21.4-gke.300 atau yang lebih baru.
- Anda harus menjalankan Managed Service for Prometheus dengan pengumpulan terkelola diaktifkan. Untuk informasi selengkapnya, lihat Mulai menggunakan koleksi terkelola.
- Untuk menggunakan dasbor yang tersedia di Cloud Monitoring untuk integrasi Jenkins, Anda harus menggunakan
jenkins
versi 2.0.11 atau yang lebih baru.Untuk mengetahui informasi selengkapnya tentang dasbor yang tersedia, lihat Melihat dasbor.
Jika menginstal diagram helm komunitas Jenkins, Anda dapat menambahkan plugin Metrics dan Prometheus di kolom nilai controller.installPlugins
:
controller: installPlugins: - kubernetes:3734.v562b_b_a_627ea_c - workflow-aggregator:590.v6a_d052e5a_a_b_5 - git:4.13.0 - configuration-as-code:1569.vb_72405b_80249 - metrics - prometheus:2.0.11
Atau, Anda dapat membuat image container Jenkins Anda sendiri dengan Dockerfile berikut:
FROM jenkins/jenkins:lts RUN jenkins-plugin-cli --plugins prometheus metrics
Untuk memverifikasi bahwa eksportir Jenkins memunculkan metrik di endpoint yang diharapkan, lakukan hal berikut:
Siapkan penerusan port dengan perintah berikut:
kubectl -n NAMESPACE_NAME port-forward POD_NAME 8080
Akses endpoint
localhost:8080/prometheus
menggunakan browser atau utilitascurl
di sesi terminal lain.
Menentukan resource PodMonitoring
Untuk penemuan target, Managed Service for Prometheus Operator memerlukan resource PodMonitoring yang sesuai dengan eksportir Jenkins di namespace yang sama.
Anda dapat menggunakan konfigurasi PodMonitoring berikut:
Pastikan nilai kolomport
dan matchLabels
cocok dengan nilai pod Jenkins yang ingin Anda pantau. Secara default, penginstalan Helm Jenkins
menyertakan nilai port
http
dan label app.kubernetes.io/name
dengan nilai jenkins
.
Untuk menerapkan perubahan konfigurasi dari file lokal, jalankan perintah berikut:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Anda juga dapat menggunakan Terraform untuk mengelola konfigurasi.
Menentukan aturan dan pemberitahuan
Anda dapat menggunakan konfigurasi Rules
berikut untuk menentukan pemberitahuan pada metrik Jenkins:
Untuk menerapkan perubahan konfigurasi dari file lokal, jalankan perintah berikut:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Anda juga dapat menggunakan Terraform untuk mengelola konfigurasi.
Untuk informasi selengkapnya tentang cara menerapkan aturan ke cluster, lihat Evaluasi dan pemberitahuan aturan terkelola.
Anda dapat menyesuaikan nilai minimum pemberitahuan agar sesuai dengan aplikasi Anda.Memverifikasi konfigurasi
Anda dapat menggunakan Metrics Explorer untuk memverifikasi bahwa Anda telah mengonfigurasi eksportir Jenkins dengan benar. Mungkin perlu waktu satu atau dua menit agar Cloud Monitoring menyerap metrik Anda.
Untuk memverifikasi bahwa metrik telah diserap, lakukan hal berikut:
-
Di konsol Google Cloud, buka halaman leaderboard Metrics explorer:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.
- Di toolbar panel pembuat kueri, pilih tombol yang namanya adalah code MQL atau code PromQL.
- Pastikan PromQL dipilih di tombol Language. Tombol bahasa berada di toolbar yang sama yang memungkinkan Anda memformat kueri.
- Masukkan dan jalankan kueri berikut:
up{job="jenkins", cluster="CLUSTER_NAME", namespace="NAMESPACE_NAME"}
Melihat dasbor
Integrasi Cloud Monitoring mencakup dasbor Ringkasan Prometheus Jenkins. Dasbor akan otomatis diinstal saat Anda mengonfigurasi integrasi. Anda juga dapat melihat pratinjau statis dasbor tanpa menginstal integrasi.
Untuk melihat dasbor yang terinstal, lakukan tindakan berikut:
-
Di konsol Google Cloud, buka halaman Dasbor:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.
- Pilih tab Daftar Dasbor.
- Pilih kategori Integrasi.
- Klik nama dasbor, misalnya, Jenkins Prometheus Overview.
Untuk melihat pratinjau statis dasbor, lakukan tindakan berikut:
-
Di konsol Google Cloud, buka halaman Integrations :
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.
- Klik filter platform deployment Kubernetes Engine.
- Temukan integrasi Jenkins, lalu klik Lihat Detail.
- Pilih tab Dasbor.
Pemecahan masalah
Untuk informasi tentang cara memecahkan masalah penyerapan metrik, lihat Masalah terkait pengumpulan dari eksportir di Memecahkan masalah sisi penyerapan.