Tempah Konsultasi Hantar Tiket

Prometheus, Grafana dan OpenTelemetry Praktikal: Membina Pemerhatian untuk Kubernetes

Artikel ini membincangkan senario sebenar untuk membina timbunan pemerhatian hujung ke hujung menggunakan Prometheus, Grafana dan OpenTelemetry, merangkumi metrik, jejak dan papan pemuka. Sesuai untuk jurutera SRE dan DevOps.

Prometheus, Grafana dan OpenTelemetry Praktikal: Membina Pemerhatian untuk Kubernetes
Observability 6min 40 paparan 2026-07-14
PrometheusGrafanaOpenTelemetryKubernetesPemerhatian

Senario

Aplikasi mikroservices mengalami kependaman tinggi secara berselang selepas digunakan, membakar belanjawan ralat dengan cepat. Pasukan sudah ada Prometheus dan Grafana tetapi kekurangan pengesanan teragih, menyukarkan analisis punca.

Gejala

  • Pengguna melaporkan muatan halaman perlahan (>5 saat)
  • Grafana menunjukkan p99 kependaman melonjak dari 200ms ke 2s
  • Kadar ralat meningkat dari 0.5% ke 3%, menghampiri kehabisan belanjawan ralat

Diagnosis

  1. Periksa metrik Prometheus: Tentukan sama ada kependaman tinggi global atau setempat. Jalankan pertanyaan: histogram_quantile(0.99, sum(rate(http_request_duration_seconds_bucket[5m])) by (le, service)). Dapati bahawa perkhidmatan frontend p99 normal, tetapi perkhidmatan payments p99 adalah 4s.
  2. Gunakan OpenTelemetry Collector: Suntik jejak secara automatik untuk mencari rantai panggilan perlahan.

Perintah dan Konfigurasi

Pasang OpenTelemetry Collector (Helm)

helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts
helm upgrade --install otel-collector open-telemetry/opentelemetry-collector \
  --set mode=deployment \
  --set config.receivers.otlp.protocols.grpc.endpoint=0.0.0.0:4317 \
  --set config.exporters.prometheus.endpoint=0.0.0.0:8889 \
  --set-file config.pipelines.traces=traces.yaml

Konfigurasi Prometheus (tambah sasaran scrape)

scrape_configs:
  - job_name: 'otel-collector'
    scrape_interval: 10s
    static_configs:
      - targets: ['otel-collector:8889']

Papan Pemuka Grafana (import JSON)

Cipta papan pemuka jejak menggunakan tempo atau sumber data lain yang serasi.

Kawalan Risiko

  • Pengasingan ruang nama: Gunakan pengumpul dalam ruang nama berasingan untuk mengelakkan kesan kepada pengeluaran.
  • Kawalan kadar pensampelan: Pensampelan lalai 10% untuk mengelakkan letupan storan.
  • Sandaran konfigurasi: Sandarkan konfigurasi Prometheus dan Grafana.

Gulung Balik

helm rollback otel-collector 0  # Gulung balik ke versi sebelumnya
kubectl delete -f prometheus-config.yaml  # Buang konfigurasi scrape

Pengesahan

  • Pertanyaan: rate(traces_sampled_total[5m]) untuk mengesahkan aliran data jejak.
  • Dalam Grafana, periksa papan pemuka kependaman; p99 harus kembali normal (<500ms).
  • Jalankan ujian hujung ke hujung; kadar ralat turun ke 0.5%.

Bila Serahkan Tiket OpsGlobal

  • Tidak dapat mengenal pasti punca; memerlukan analisis pakar rantai panggilan.
  • Tiada perubahan metrik selepas konfigurasi; mungkin pengumpul atau pengeksport salah konfigurasi.
  • Memerlukan pengoptimuman strategi pensampelan atau penyelesaian storan.

Senario Penggunaan

Sesuai untuk pasukan yang menyelesaikan isu Observability dan memerlukan aliran kerja yang jelas.

Latar Belakang Masalah

Artikel ini membincangkan senario sebenar untuk membina timbunan pemerhatian hujung ke hujung menggunakan Prometheus, Grafana dan OpenTelemetry, merangkumi metrik, jejak dan papan pemuka. Sesuai untuk jurutera SRE dan DevOps.

Langkah Penyelesaian

Sahkan impak dan perubahan terkini, kumpul log, konfigurasi dan metrik, kemudian baiki mengikut risiko.

Contoh Arahan

Gantikan contoh dengan nama sumber sebenar dan simpan kata laluan, token atau kunci dalam pembolehubah persekitaran.

Risiko

Sebelum operasi produksi, semak sandaran, akses, tetingkap perubahan dan pelan rollback.

Pelan Rollback

Simpan konfigurasi dan versi asal; rollback konfigurasi, imej atau perubahan pangkalan data jika metrik tidak normal.

Senarai Serahan

Rekod punca isu, arahan penting, langkah pembaikan, hasil pengesahan dan cadangan susulan.

!

Perlu bantuan isu teknikal serupa?

Jika pelayan, Kubernetes, Docker, CI/CD, pangkalan data atau pemantauan anda bermasalah, hantar log dan konfigurasi untuk diagnosis jauh.

Tiket Hubungi WhatsApp Konsultasi