Managed Service for Prometheus memungkinkan Anda memvisualisasikan data pemantauan menggunakan dasbor Grafana. Anda dapat membuat dasbor kustom atau mengimpornya dari situs resmi Grafana. Topik ini menjelaskan cara membuat dasbor Grafana kustom untuk aplikasi contoh yang diterapkan di kluster Container Service for Kubernetes (ACK) dan menggunakan Container Registry.
Prasyarat
- Kluster ACK telah terintegrasi dengan Managed Service for Prometheus. Untuk informasi selengkapnya, lihat Instans Prometheus untuk ACK.
- Repository image telah dibuat di Container Registry. Untuk informasi selengkapnya, lihat Langkah 2: Buat repository image.
Prosedur
Diagram berikut menunjukkan alur kerja untuk membuat dasbor Grafana kustom dengan Managed Service for Prometheus.
Langkah 1: Unggah aplikasi
Buat image untuk aplikasi Anda dan dorong ke repository image di Container Registry.
- Jalankan perintah berikut untuk mengompilasi ulang modul.
mvn clean install -DskipTests - Jalankan perintah berikut untuk membuat image.
docker build -t <your-image-name>:<your-image-tag> . --no-cacheContoh:docker build -t promethues-demo:v0 . --no-cache - Jalankan perintah berikut untuk memberi tag pada image.
sudo docker tag <your-image-name>:<your-image-tag> <registry-domain>/<namespace>/<image-name>:<image-tag>Contoh:sudo docker tag promethues-demo:v0 registry.cn-hangzhou.aliyuncs.com/testnamespace/promethues-demo:v0 - Jalankan perintah berikut untuk mendorong image ke repository image.
sudo docker push <registry-domain>/<namespace>/<image-name>:<image-tag>Contoh:sudo docker push registry.cn-hangzhou.aliyuncs.com/testnamespace/promethues-demo:v0Di Konsol Container Registry, image aplikasi yang diunggah muncul di halaman Image Version.
Langkah 2: Terapkan aplikasi
Terapkan aplikasi ke kluster ACK Anda.
Masuk ke Konsol ACK.
- Di panel navigasi sebelah kiri, klik Cluster.
- Di halaman Clusters, temukan kluster Anda, lalu di kolom Actions, klik Applications.
- Buat deployment.
- Di panel navigasi sebelah kiri, pilih .
- Di halaman Deployments, klik Create Resources in YAML.
- Di halaman Create, masukkan YAML berikut di editor Template dan klik Create.
apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1 kind: Deployment metadata: name: prometheus-demo spec: replicas: 2 template: metadata: annotations: prometheus.io/scrape: 'true' prometheus.io/path: '/prometheus-metrics' prometheus.io/port: '8081' labels: app: tomcat spec: containers: - name: tomcat imagePullPolicy: Always image: <registry-domain>/<namespace>/<image-name>:<image-tag> ports: - containerPort: 8080 name: tomcat-normal - containerPort: 8081 name: tomcat-monitorContoh:apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1 kind: Deployment metadata: name: prometheus-demo labels: app: tomcat spec: replicas: 2 selector: matchLabels: app: tomcat template: metadata: annotations: prometheus.io/scrape: 'true' prometheus.io/path: '/prometheus-metrics' prometheus.io/port: '8081' labels: app: tomcat spec: containers: - name: tomcat imagePullPolicy: Always image: registry.cn-hangzhou.aliyuncs.com/peiyu-test/prometheus-demo:v0 ports: - containerPort: 8080 name: tomcat-normal - containerPort: 8081 name: tomcat-monitor
Deployment yang dibuat muncul di halaman Deployments.
- Buat service.
- Di panel navigasi sebelah kiri, pilih .
- Di halaman Services, klik Create Resources in YAML.
- Di halaman Create, masukkan YAML berikut di editor Template dan klik Create.
apiVersion: v1 kind: Service metadata: labels: app: tomcat name: tomcat namespace: default spec: ports: - name: tomcat-normal port: 8080 protocol: TCP targetPort: 8080 - name: tomcat-monitor port: 8081 protocol: TCP targetPort: 8081 type: NodePort selector: app: tomcat
Service yang dibuat muncul di halaman Services.
Langkah 3: Konfigurasikan aturan pengumpulan
Secara default, Managed Service for Prometheus memantau metrik dasar untuk CPU, memori, dan jaringan. Untuk memantau data tambahan, seperti informasi pesanan, Anda harus membuat aturan pengumpulan data kustom di Managed Service for Prometheus.
-
Masuk ke Konsol Cloud Monitor.
-
Di panel navigasi kiri, pilih untuk membuka daftar instans Managed Service for Prometheus.
- Klik nama instans Prometheus Anda.
- Konfigurasikan aturan pengumpulan data untuk aplikasi Anda berdasarkan skenario berikut.
- Untuk memantau data bisnis dari aplikasi yang diterapkan di kluster ACK, seperti informasi pesanan, lakukan langkah-langkah berikut:
- Di panel navigasi sebelah kiri, klik Service Discovery, lalu klik tab Configure.
- Di halaman Configure, klik tab ServiceMonitor, lalu klik Add ServiceMonitor.
- Di kotak dialog yang muncul, masukkan konten berikut dan klik OK.
apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: # Enter a unique name. name: tomcat-demo # Enter the target namespace. namespace: default spec: endpoints: - interval: 30s # Set this to the `name` of the port for the Prometheus exporter, as defined in your Service YAML. port: tomcat-monitor # Set this to the path of the Prometheus exporter. path: /metrics namespaceSelector: any: true # The namespace of the demo application. selector: matchLabels: # Set this to the label value from your Service YAML to target the correct service. app: tomcatDi tab ServiceMonitor, penemuan layanan yang dikonfigurasi ditampilkan.
- Untuk memantau data bisnis dari sumber di luar kluster ACK, seperti jumlah koneksi Redis, lakukan langkah-langkah berikut:
- Di panel navigasi sebelah kiri, klik Settings. Di halaman Settings, klik Edit Prometheus.yaml.
- Di kotak dialog yang muncul, masukkan konten berikut dan klik Save.
global: scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute. scrape_configs: - job_name: 'prometheus' static_configs: - targets: ['localhost:9090']
- Untuk memantau data bisnis dari aplikasi yang diterapkan di kluster ACK, seperti informasi pesanan, lakukan langkah-langkah berikut:
Langkah 4: Konfigurasikan dasbor
Konfigurasikan dasbor Grafana untuk menampilkan data Anda.
- Buka halaman ikhtisar dasbor Grafana.
Catatan Edisi Expert untuk Grafana harus diaktifkan.
- Di panel navigasi sebelah kiri, pilih .
- Di halaman New dashboard, klik Add a new panel.
- Di halaman Edit Panel, pada tab Query, pilih kluster Anda dari daftar drop-down di bagian atas. Di bagian A, pilih metrik, seperti go_gc_duration_seconds, dari daftar drop-down Metrics.

- Di panel kanan, beri nama grafik tersebut, pilih jenis visualisasi seperti grafik, tabel, atau heatmap, dan konfigurasikan parameter lain sesuai kebutuhan.

- Klik Save di pojok kanan atas. Di kotak dialog yang muncul, beri nama dasbor, pilih kluster, lalu klik Save.
Anda dapat membuat beberapa dasbor dan grafik sesuai kebutuhan.
Gambar berikut menunjukkan dasbor Grafana yang telah dikonfigurasi.
Langkah 5: Pantau metrik kompleks
Untuk memantau metrik yang memerlukan perhitungan kompleks, bangun dan uji kueri PromQL di Managed Service for Prometheus.
- Buka halaman ikhtisar dasbor Grafana.
- Di panel navigasi sebelah kiri, klik ikon Explore.
- Di halaman Explore, pilih kluster Anda dari daftar drop-down di bagian atas. Masukkan pernyataan PromQL di bidang Metrics dan klik Run Query di pojok kanan atas untuk mengujinya.

- Setelah kueri berhasil dijalankan, Anda dapat menambahkan panel atau dasbor baru. Untuk informasi selengkapnya, lihat Langkah 4: Konfigurasikan dasbor.
Langkah 6: Buat peringatan
Untuk membuat aturan peringatan guna memantau metrik, lihat Buat aturan peringatan Prometheus.