Dokumen ini menjelaskan cara mengonfigurasi deployment Google Kubernetes Engine agar Anda dapat menggunakan Google Cloud Managed Service for Prometheus untuk mengumpulkan metrik dari Kibana. Dokumen ini menunjukkan cara melakukan hal berikut:
- Siapkan Kibana untuk melaporkan metrik.
- Akses dasbor di Cloud Monitoring untuk melihat metrik.
- Konfigurasi aturan pemberitahuan untuk memantau metrik.
Petunjuk ini hanya berlaku jika Anda menggunakan koleksi terkelola dengan Managed Service for Prometheus. Jika Anda menggunakan pengumpulan yang di-deploy sendiri, lihat dokumentasi Kibana 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 keamanan atau organisasi yang ketat, sebaiknya lihat dokumentasi open source untuk mendapatkan dukungan.
Untuk mengetahui informasi tentang Kibana, lihat Kibana.
Prasyarat
Untuk mengumpulkan metrik dari pengekspor Kibana dengan menggunakan Managed Service for Prometheus dan pengumpulan terkelola, deployment Anda harus memenuhi persyaratan berikut:
- Cluster Anda harus menjalankan Google Kubernetes Engine versi 1.28.15-gke.2475000 atau yang lebih baru.
- Anda harus menjalankan Managed Service for Prometheus dengan koleksi terkelola yang diaktifkan. Untuk mengetahui informasi selengkapnya, lihat Mulai menggunakan koleksi terkelola.
- Untuk menggunakan dasbor yang tersedia di Cloud Monitoring untuk integrasi Kibana, Anda harus menggunakan
kibana-prometheus-exporter
versi 8.0.0 atau yang lebih baru.Untuk mengetahui informasi selengkapnya tentang dasbor yang tersedia, lihat Melihat dasbor.
Proses penginstalan memerlukan penggunaan bin/kibana-plugin install PLUGIN
. Salah satu cara untuk menginstal plugin adalah
dengan menentukan image Docker Kibana kustom; lihat contoh berikut:
FROM kibana:KIBANA_VERSION
RUN bin/kibana-plugin install https://github.com/pjhampton/kibana-prometheus-exporter/releases/download/PLUGIN_VERSION/kibanaPrometheusExporter-PLUGIN_VERSION.zip
Setelah dibangun dan dikirim ke repositori jarak jauh, image dapat digunakan dalam deployment Kubernetes. Contoh:
apiVersion: v1
kind: ConfigMap
metadata:
name: kibana
data:
kibana.yml: |
server.name: kibana
server.host: "0.0.0.0"
# Update this with credentials to match your Elasticsearch instance
elasticsearch.hosts: http://username:password@elasticsearch-service-name:9200
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: kibana
labels:
app.kubernetes.io/name: kibana
spec:
...
template:
...
spec:
containers:
- name: kibana
image: CUSTOM_IMAGE
ports:
- containerPort: 5601
name: kibana
protocol: TCP
volumeMounts:
- mountPath: /usr/share/kibana/config/kibana.yml
subPath: kibana.yml
name: kibana
volumes:
- name: kibana
configMap:
name: kibana
items:
- key: kibana.yml
path: kibana.yml
Untuk memverifikasi bahwa eksportir Kibana memancarkan metrik di endpoint yang diharapkan, lakukan hal berikut:
Siapkan penerusan port dengan perintah berikut:
kubectl -n NAMESPACE_NAME port-forward POD_NAME 5601
Akses endpoint
localhost:5601/_prometheus/metrics
menggunakan browser atau utilitascurl
di sesi terminal lain.
Tentukan resource PodMonitoring
Untuk penemuan target, Managed Service for Prometheus Operator memerlukan resource PodMonitoring yang sesuai dengan eksportir Kibana di namespace yang sama.
Anda dapat menggunakan konfigurasi PodMonitoring berikut:
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 Anda.
Menentukan aturan dan pemberitahuan
Anda dapat menggunakan konfigurasi Rules
berikut untuk menentukan
pemberitahuan pada metrik Kibana Anda:
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 Anda.
Untuk mengetahui informasi selengkapnya tentang penerapan aturan ke cluster Anda, lihat Evaluasi dan pemberitahuan aturan terkelola.
Anda dapat menyesuaikan batas pemberitahuan agar sesuai dengan aplikasi Anda.Memverifikasi konfigurasi
Anda dapat menggunakan Metrics Explorer untuk memverifikasi bahwa Anda telah mengonfigurasi pengekspor Kibana dengan benar. Mungkin perlu waktu satu atau dua menit agar Cloud Monitoring dapat memproses metrik Anda.
Untuk memverifikasi bahwa metrik telah di-ingest, 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 code MQL atau code PromQL.
- Pastikan PromQL dipilih di tombol Language. Tombol bahasa ada di toolbar yang sama yang memungkinkan Anda memformat kueri.
- Masukkan dan jalankan kueri berikut:
up{job="kibana", cluster="CLUSTER_NAME", namespace="NAMESPACE_NAME"}
Melihat dasbor
Integrasi Cloud Monitoring mencakup dasbor Kibana Prometheus Overview. 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
Dashboards:
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, Kibana 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 Kibana, lalu klik Lihat Detail.
- Pilih tab Dasbor.
Pemecahan masalah
Untuk mengetahui informasi tentang cara memecahkan masalah penyerapan metrik, lihat Masalah pengumpulan dari eksportir di Memecahkan masalah sisi penyerapan.