Membuat dasbor visualisasi

Halaman ini menjelaskan proses pembuatan dan pengelolaan dasbor dalam instance Grafana Anda, yang digunakan untuk visualisasi log dan metrik dari project Google Distributed Cloud (GDC) yang terisolasi.

Dasbor memberikan representasi visual dinamis dari performa sistem Anda. Dasbor terdiri dari satu atau beberapa panel yang dapat disesuaikan, yang masing-masing dikonfigurasi untuk membuat kueri dan menampilkan metrik tertentu dari komponen GDC Anda. Panel ini memungkinkan Anda melakukan hal berikut:

  • Memvisualisasikan metrik melalui berbagai jenis diagram.
  • Menentukan nilai minimum pemberitahuan untuk memicu notifikasi berdasarkan nilai metrik.
  • Menyesuaikan properti tampilan seperti label, unit, dan rentang waktu.
  • Menetapkan resolusi waktu yang konsisten untuk perbandingan yang akurat.

Dengan menggunakan dasbor Grafana secara efektif, Anda dapat memperoleh insight berharga tentang performa dan kondisi lingkungan GDC Anda.

Sebelum memulai

Untuk mengelola resource kustom Dashboard dan ConfigMap, Anda harus memiliki izin yang diperlukan.

Meminta peran organisasi IAM

Hubungi Admin IAM Organisasi Anda untuk meminta peran berikut agar dapat menggunakan dasbor di seluruh organisasi:

  • Dashboard PA Creator (dashboard-pa-creator): membuat dasbor kustom.
  • Dashboard PA Editor (dashboard-pa-editor): mengedit atau menghapus dasbor kustom.
  • Dashboard PA Viewer (dashboard-pa-viewer): melihat dasbor kustom.

Meminta peran project IAM

Hubungi Admin IAM Project Anda untuk meminta peran berikut agar dapat menggunakan dasbor dan konfigurasi dalam project:

  • Dashboard Editor (dashboard-editor): membuat, mengedit, dan menghapus dasbor kustom dalam namespace project.
  • Dashboard Viewer (dashboard-viewer): melihat dasbor kustom dalam namespace project.
  • ConfigMap Editor (observabilitypipeline-configmap-editor): membuat dan mengedit ConfigMap dalam namespace project.

Menyiapkan lingkungan Anda

Setelah mendapatkan peran yang sesuai, ikuti langkah-langkah berikut sebelum membuat dasbor:

  1. Kumpulkan metrik dari workload Anda.
  2. Tetapkan jalur file kubeconfig sebagai variabel lingkungan:

    export KUBECONFIG=KUBECONFIG_PATH
    

    Ganti KUBECONFIG_PATH dengan jalur ke file kubeconfig untuk server API pengelolaan tempat Anda ingin membuat dasbor.

Mengidentifikasi endpoint Grafana Anda

URL berikut adalah endpoint instance Grafana project Anda:

https://GDC_URL/PROJECT_NAMESPACE/grafana

Ganti kode berikut:

  • GDC_URL: URL organisasi Anda di GDC.
  • PROJECT_NAMESPACE: namespace project Anda.

Misalnya, endpoint Grafana untuk project platform-obs di org-1 organisasi adalah https://org-1/platform-obs/grafana.

Membuat dasbor kustom

Ikuti langkah-langkah berikut untuk membuat dasbor Grafana dan menyesuaikan setelan Anda:

  1. Buka endpoint Grafana Anda untuk menampilkan antarmuka pengguna.
  2. Dari menu navigasi, klik Tambahkan.
  3. Dari menu drop-down, klik Dasbor. Grafana membuat dasbor kosong.
  4. Di dasbor kosong, tambahkan semua panel yang Anda inginkan.

  5. Di menu Sumber data setiap panel, pilih sumber data yang Anda inginkan untuk panel tersebut, termasuk metrik (prometheus), log audit (auditloki), dan log operasional (oploki).

    Untuk universe multi-zona, Grafana memiliki sumber data berlabel zona yang dapat Anda gunakan untuk membuat visualisasi dasbor dengan metrik dan log dari beberapa zona. Sumber data ini diberi nama dengan format DATA_SOURCE-ZONE_ID, dengan:

    • DATA_SOURCE dapat menggunakan salah satu nilai berikut:

      • Prometheus (prometheus atau metrics) untuk menampilkan metrik.
      • Log audit (auditloki) untuk menampilkan log audit.
      • Log operasional (oploki) untuk menampilkan log operasional.
    • ZONE_ID adalah ID zona tempat Anda ingin menampilkan data di dasbor.

    Selain itu, untuk membuat dasbor visualisasi untuk resource lintas zona, nama sumber datanya adalah --Mixed--. Sumber data ini memungkinkan Anda menambahkan beberapa kueri per zona dan memiliki visualisasi data lintas zona dalam satu dasbor. Anda dapat menggunakan fitur ini untuk membuat perbandingan perilaku antara, misalnya, satu kueri metrik atau log di beberapa zona universe Anda.

  6. Sesuaikan detail dan edit panel Anda untuk menyediakan kueri atau melakukan pembaruan lainnya.

  7. Dari panel menu, klik Setelan dasbor untuk membuka halaman Setelan.

  8. Dari menu navigasi, pilih Model JSON.

  9. Salin model JSON dasbor dan tempelkan ke file teks biasa untuk digunakan di masa mendatang.

Membuat objek ConfigMap

Ikuti langkah-langkah berikut untuk membuat objek ConfigMap yang berisi model JSON dasbor:

  1. Buka jendela terminal.
  2. Buat objek ConfigMap. Di bagian data objek ConfigMap, tempelkan model JSON yang sebelumnya Anda salin:

    apiVersion: v1
    kind: ConfigMap
    metadata:
      namespace: PROJECT_NAMESPACE
      name: CONFIGMAP_NAME
    data:
      JSON_FILE_NAME.json: |
        {
        JSON_MODEL
        }
    

    Ganti kode berikut:

    • PROJECT_NAMESPACE: namespace project Anda.
    • CONFIGMAP_NAME: nama yang ingin Anda berikan ke objek ConfigMap.
    • JSON_FILE_NAME: nama yang ingin Anda berikan ke file untuk model JSON dasbor.
    • JSON_MODEL: model JSON dasbor kustom Anda .

    Untuk contoh tampilan objek ini, lihat contoh ConfigMap.

  3. Terapkan objek ConfigMap ke server Management API:

    kubectl --kubeconfig ${KUBECONFIG} apply -f CONFIGMAP_NAME.yaml
    

Contoh ConfigMap

File YAML berikut menunjukkan contoh objek ConfigMap dasbor 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": "--",
            "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 resource kustom Dashboard dan mengimpor dasbor kustom ke instance Grafana project Anda:

  1. Buka jendela terminal.
  2. Buat resource kustom Dashboard dan konfigurasi file dengan nama yang Anda berikan ke objek ConfigMap:

    apiVersion: observability.gdc.goog/v1
    kind: Dashboard
    metadata:
      namespace: PROJECT_NAMESPACE
      name: DASHBOARD_NAME
    spec:
      configMapRef:
        name: CONFIGMAP_NAME
        namespace: PROJECT_NAMESPACE
        key: JSON_FILE_NAME.json
      foldername: Default
    

    Ganti kode berikut:

    • PROJECT_NAMESPACE: namespace project Anda.
    • DASHBOARD_NAME: nama yang ingin Anda berikan ke resource kustom Dashboard.
    • CONFIGMAP_NAME: nama yang Anda berikan ke objek ConfigMap.
    • JSON_FILE_NAME: nama yang Anda berikan ke file yang berisi model JSON dasbor dalam objek ConfigMap.
  3. Terapkan resource kustom Dashboard ke server Management API:

    kubectl --kubeconfig ${KUBECONFIG} apply -f DASHBOARD_NAME.yaml
    

Sistem memantau perubahan pada resource kustom Dashboard dan objek ConfigMap terkait. Untuk memperbarui atau menghapus dasbor, ubah resource ini. Setiap modifikasi akan memicu pembaruan ke Grafana. Anda tidak dapat menyimpan pembaruan yang dilakukan langsung di antarmuka pengguna Grafana.