Halaman ini menjelaskan proses pembuatan dan pengelolaan dasbor di instance Grafana instance pemantauan sistem. Gunakan dasbor untuk melakukan operasi pemantauan di project Anda, seperti pemantauan jaringan dan pemantauan server.
Setelah platform Observability mengumpulkan metrik yang dihasilkan oleh beban kerja yang di-deploy di project GDC Anda, konfigurasi akan menyimpan label metrik terkait dan menggabungkan file dari semua sumber data. Kemudian, Anda dapat membuat dasbor yang disesuaikan untuk membuat kueri dan memvisualisasikan metrik tertentu dari antarmuka pengguna (UI) instance pemantauan.
Dasbor adalah susunan visual dinamis dari satu atau beberapa panel yang dapat disesuaikan yang berinteraksi dengan metrik Prometheus yang dikonfigurasi di sumber data. Dengan membuat kueri, Anda dapat menggunakan setiap panel ini untuk memvisualisasikan dan mengekspos metrik tertentu dari komponen GDC Anda.
Platform Observability mengekspos API yang memungkinkan Anda mengonfigurasi penyesuaian untuk pengaturan visual metrik Anda. Misalnya, tetapkan nilai minimum yang dapat diterima, tampilkan sinyal yang tepat, beri label pada grafik, dan pilih resolusi waktu yang konsisten.
Dasbor yang tersedia
Dengan asumsi lingkungan Anda sudah siap dan berjalan, Anda akan langsung melihat beberapa dasbor metrik di halaman beranda instance pemantauan. Misalnya, Anda dapat mengamati status peralihan dan kondisi komponen sistem.
Gunakan dasbor switch dan cluster untuk memantau metrik cluster dan node. Akses dasbor logging dan pemantauan untuk mengamati cluster admin.
Metrik Administrator Platform (PA) yang paling relevan adalah sebagai berikut:
- Kubernetes / Server API: Menampilkan kondisi server API per cluster di organisasi.
- Kubernetes / Compute Resources / Multi-Cluster: Menampilkan pemanfaatan resource di seluruh organisasi.
- Kubernetes / Compute Resources / Cluster: Menampilkan pemanfaatan resource per cluster.
- Kubernetes / Volume Persisten: Menampilkan pemanfaatan volume persisten Kubernetes di setiap cluster.
- Status Node: Menampilkan penggunaan resource di setiap node pada setiap cluster.
- Status Pod: Menampilkan konsumsi resource setiap pod di setiap cluster.
Gambar berikut menunjukkan contoh untuk dasbor Kubernetes / Compute Resources / Multi-Cluster.
Mengakses instance pemantauan project Anda
Anda harus mendapatkan otorisasi untuk mengakses dasbor pemantauan. Untuk mendapatkan izin yang diperlukan untuk login dan melihat metrik di instance pemantauan project Anda, minta Admin IAM Organisasi Anda untuk memberi Anda peran Organization Grafana Viewer (organization-grafana-viewer
). Admin IAM Organisasi dapat memberi Anda akses dengan membuat binding peran:
kubectl --kubeconfig ADMIN_KUBECONFIG create rolebinding pa-grafana-viewer-binding -n platform-obs --user=USER_NAME --clusterrole=organization-grafana-viewer
Ganti kode berikut:
- ADMIN_KUBECONFIG: jalur file kubeconfig untuk cluster admin.
- USER_NAME: nama akun pengguna yang memerlukan binding peran.
Lihat referensi berikut untuk mengetahui informasi selengkapnya tentang penetapan peran:
- Untuk mengetahui deskripsi tentang peran Organization Grafana Viewer, lihat Deskripsi peran bawaan.
- Untuk mengetahui petunjuk tentang cara menambahkan dan menghapus peran dari UI, lihat Memberikan akses ke resource.
Membuat dasbor Grafana
Bagian ini menjelaskan proses pembuatan dan pengelolaan dasbor di instance Grafana Anda.
Ikuti langkah-langkah berikut untuk membuat dasbor di GDC:
- Selesaikan prasyarat dari bagian Sebelum Anda memulai.
- Buka endpoint Grafana project Anda.
- Buat objek
ConfigMap
untuk dasbor Anda. - Buat
Dashboard
resource kustom (CR).
Sebelum memulai
Sebelum membuat dasbor, Anda harus mendapatkan akses ke instance pemantauan. Untuk mengetahui informasi selengkapnya, lihat Mendapatkan akses ke dasbor.
- Kumpulkan metrik dari project GDC Anda sebelum membuat dasbor.
- Untuk login, membuat dasbor, dan memvisualisasikan metrik, minta Admin IAM Project Anda untuk memberi Anda peran Project Grafana Viewer (
project-grafana-viewer
). Tetapkan jalur file kubeconfig sebagai variabel lingkungan:
export KUBECONFIG=KUBECONFIG_FILE
Ganti KUBECONFIG_FILE dengan jalur file kubeconfig di cluster admin tempat Anda ingin membuat dasbor.
Endpoint pemantauan
Buka URL berikut untuk mengakses endpoint project Anda:
https://GDC_URL/PROJECT_NAMESPACE/grafana
Ganti kode berikut:
- GDC_URL: URL organisasi Anda di GDC.
- PROJECT_NAMESPACE: Namespace project Anda.
Membuat objek ConfigMap
untuk dasbor
Ikuti langkah-langkah berikut untuk membuat objek ConfigMap
yang berisi model JSON dasbor:
- Buka endpoint project Anda.
- Dari menu navigasi, klik tombol Tambahkan.
- Dari menu drop-down yang ditampilkan, klik Dasbor. Instance membuat dasbor kosong.
Di dasbor kosong, tambahkan semua panel yang Anda inginkan. Anda dapat menyesuaikan detail dan mengedit panel untuk menyediakan kueri atau melakukan pembaruan lainnya.
Dari menu bar, klik tombol
Setelan dasbor untuk membuka halaman Setelan.Dari menu navigasi, klik opsi Model JSON.
Salin model JSON dasbor dan tempelkan ke file teks biasa agar tetap tersedia untuk Anda.
Ganti kolom
id
danuid
tingkat teratas dengan nilainull
dalam model JSON.Buat objek
ConfigMap
dari command line. Di bagiandata
objekConfigMap
, tempelkan model JSON yang sebelumnya Anda salin di dalam file.json
:cat <<EOF | kubectl --kubeconfig ${KUBECONFIG} apply -f - apiVersion: v1 kind: ConfigMap metadata: namespace: PROJECT_NAMESPACE name: DASHBOARD_CONFIGMAP_NAME data: JSON_FILE_NAME.json: | { <JSON model of the dashboard> } EOF
Ganti kode berikut:
- PROJECT_NAMESPACE: Namespace project Anda.
- DASHBOARD_CONFIGMAP_NAME: Nama yang ingin Anda berikan ke objek
ConfigMap
. - JSON_FILE_NAME: Nama yang ingin Anda berikan ke file tempat Anda menempelkan model JSON dasbor.
Untuk contoh tampilan objek ini, lihat contoh
ConfigMap
untuk dasbor.Deploy objek
ConfigMap
dasbor Anda ke cluster admin.
Contoh ConfigMap
untuk dasbor
File YAML berikut menunjukkan contoh objek ConfigMap
dasbor untuk metrik di namespace platform-obs
:
apiVersion: v1
kind: ConfigMap
metadata:
namespace: platform-obs
name: my-project-dashboard-configmap
data:
my-project-dashboard.json: |
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
"name": "Annotations & Alerts",
"type": "dashboard"
}
]
},
"editable": true,
"graphTooltip": 0,
"id": null,
"links": [],
"panels": [],
"schemaVersion": 27,
"style": "dark",
"tags": [],
"templating": {
"list": []
},
"time": {
"from": "now-6h",
"to": "now"
},
"timepicker": {},
"timezone": "",
"title": "Sample dashboard",
"uid": null,
"version": 0
}
Membuat resource kustom Dashboard
Ikuti langkah-langkah berikut untuk membuat Dashboard
resource kustom (CR) dan mengaktifkan dasbor di project yang diberikan:
Buat CR
Dashboard
dari command line dan konfigurasi file dengan nama yang Anda berikan ke objekConfigMap
dasbor Anda:cat <<EOF | kubectl --kubeconfig ${KUBECONFIG} apply -f - apiVersion: observability.gdc.goog/v1alpha1 kind: Dashboard metadata: namespace: PROJECT_NAMESPACE name: CUSTOM_RESOURCE_NAME spec: configMapRef: name: DASHBOARD_CONFIGMAP_NAME namespace: PROJECT_NAMESPACE key: JSON_FILE_NAME.json foldername: Default EOF
Ganti kode berikut:
- PROJECT_NAMESPACE: Namespace project Anda.
- CUSTOM_RESOURCE_NAME: Nama yang ingin Anda berikan ke resource kustom
Dashboard
. - DASHBOARD_CONFIGMAP_NAME: Nama yang Anda berikan ke objek
ConfigMap
untuk dasbor. - JSON_FILE_NAME: Nama yang Anda berikan ke file yang berisi model JSON dasbor dalam objek
ConfigMap
.
Deploy CR
Dashboard
ke namespace project. Tindakan ini mengonfigurasi layanan Observability untuk mengimpor dasbor yang telah ditentukan sebelumnya ke instance pemantauan project Anda.
Dasbor dipisahkan dari project lain, begitu juga metrik dan log. Oleh karena itu, jika Anda ingin menggunakan dasbor yang sama di beberapa project, deploy CR Dashboard
di setiap project. Selain itu, data logging dan pemantauan yang diakses dasbor harus tersedia di semua project tersebut.
Proses yang menangani dasbor mendeteksi perubahan pada CR Dashboard
dan objek ConfigMap
. Jika Anda mengubah salah satunya, program akan mencerminkan perubahan tersebut di instance pemantauan. Untuk memperbarui atau menghapus dasbor, Anda harus menerapkan perubahan di CR dan men-deploy-nya lagi. Anda tidak dapat menyimpan pembaruan yang dilakukan langsung di UI pemantauan.
Untuk membuat dasbor dalam folder atau mengubah folder, ubah nilai foldername
di bagian spec
CR Dashboard
. Jika tidak, biarkan sebagai Default
. Proses ini akan otomatis membuat folder jika belum ada.