Google Cloud Managed Service for Prometheus

Google Cloud Managed Service for Prometheus adalah solusi lintas project multi-cloud yang terkelola sepenuhnya dari Google Cloud untuk metrik Prometheus. Dengan layanan ini, Anda dapat memantau dan membuat pemberitahuan terkait workload secara global dengan menggunakan Prometheus, tanpa harus mengelola dan mengoperasikan Prometheus secara manual dalam skala besar.

Layanan Terkelola Google Cloud untuk Prometheus mengumpulkan metrik dari pengekspor Prometheus dan memungkinkan Anda membuat kueri data secara global menggunakan PromQL. Artinya, Anda dapat terus menggunakan dasbor Grafana yang ada, pemberitahuan berbasis PromQL, dan alur kerja. Layanan ini kompatibel dengan hybrid dan multi-cloud, dapat memantau workload Kubernetes, VM, dan serverless di Cloud Run, menyimpan data selama 24 bulan, dan mempertahankan portabilitas dengan tetap kompatibel dengan Prometheus upstream. Anda juga dapat melengkapi pemantauan Prometheus dengan membuat kueri lebih dari 6.500 metrik gratis di Cloud Monitoring, termasuk metrik sistem GKE gratis, menggunakan PromQL.

Dokumen ini memberikan ringkasan tentang layanan terkelola, dan dokumen selanjutnya menjelaskan cara menyiapkan dan menjalankan layanan. Untuk menerima info terbaru secara rutin tentang fitur dan rilis baru, kirimkan formulir pendaftaran opsional.

Dengarkan cara The Home Depot menggunakan Managed Service for Prometheus untuk mendapatkan visibilitas terpadu di 2.200 toko yang menjalankan cluster Kubernetes on-premise:

Ringkasan sistem

Google Cloud Managed Service for Prometheus memberi Anda keakraban dengan Prometheus yang didukung oleh infrastruktur global, multi-cloud, dan lintas project Cloud Monitoring.

Managed Service for Prometheus memberi Anda akses ke fitur Prometheus dan Cloud Monitoring.

Managed Service for Prometheus dibuat di atas Monarch, yaitu penyimpanan data skalabel global yang sama dengan yang digunakan untuk pemantauan Google sendiri. Karena Managed Service for Prometheus menggunakan backend dan API yang sama dengan Cloud Monitoring, metrik Cloud Monitoring dan metrik yang diserap oleh Managed Service for Prometheus dapat dikueri menggunakan PromQL di Cloud Monitoring, Grafana, atau alat lain yang dapat membaca Prometheus API.

Dalam deployment Prometheus standar, pengumpulan data, evaluasi kueri, evaluasi aturan dan pemberitahuan, serta penyimpanan data semuanya ditangani dalam satu server Prometheus. Managed Service for Prometheus membagi tanggung jawab untuk fungsi ini menjadi beberapa komponen:

  • Pengumpulan data ditangani oleh kolektor terkelola, kolektor yang di-deploy sendiri, Kolektor OpenTelemetry, atau Agen Operasional, yang mengambil data dari eksportir lokal dan meneruskan data yang dikumpulkan ke Monarch. Pengumpul ini dapat digunakan untuk beban kerja Kubernetes, serverless, dan VM tradisional serta dapat berjalan di mana saja, termasuk cloud lain dan deployment on-prem.
  • Evaluasi kueri ditangani oleh Monarch, yang mengeksekusi kueri dan hasil penggabungan di semua region Google Cloud dan di hingga 1.000 project Google Cloud.
  • Evaluasi aturan dan pemberitahuan ditangani dengan menulis pemberitahuan PromQL di Cloud Monitoring yang dieksekusi sepenuhnya di cloud, atau dengan menggunakan komponen evaluator aturan yang dijalankan secara lokal dan dikonfigurasi secara lokal yang mengeksekusi aturan dan pemberitahuan terhadap penyimpanan data Monarch global dan meneruskan pemberitahuan apa pun yang diaktifkan ke Prometheus AlertManager.
  • Penyimpanan data ditangani oleh Monarch, yang menyimpan semua data Prometheus selama 24 bulan tanpa biaya tambahan.

Grafana terhubung ke penyimpanan data Monarch global, bukan terhubung ke server Prometheus individual. Jika Anda memiliki kolektor Managed Service for Prometheus yang dikonfigurasi di semua deployment, satu instance Grafana ini akan memberi Anda tampilan terpadu dari semua metrik di semua cloud.

Pengumpulan data

Anda dapat menggunakan Managed Service for Prometheus dalam salah satu dari empat mode: dengan pengumpulan data terkelola, dengan pengumpulan data yang di-deploy sendiri, dengan OpenTelemetry Collector, atau dengan Ops Agent.

Managed Service for Prometheus menawarkan operator untuk pengumpulan data terkelola di lingkungan Kubernetes. Sebaiknya gunakan koleksi terkelola; penggunaannya akan menghilangkan kerumitan dalam men-deploy, menskalakan, melakukan sharding, mengonfigurasi, dan mempertahankan server Prometheus. Pengumpulan terkelola didukung untuk lingkungan Kubernetes GKE dan non-GKE.

Dengan pengumpulan data yang di-deploy sendiri, Anda mengelola penginstalan Prometheus seperti biasa. Satu-satunya perbedaan dari Prometheus upstream adalah Anda menjalankan biner penggantian langsung Managed Service for Prometheus, bukan biner Prometheus upstream.

OpenTelemetry Collector dapat digunakan untuk menyalin pengekspor Prometheus dan mengirim data ke Managed Service for Prometheus. OpenTelemetry mendukung strategi satu agen untuk semua sinyal, dengan satu kolektor dapat digunakan untuk metrik (termasuk metrik Prometheus), log, dan trace di lingkungan mana pun.

Anda dapat mengonfigurasi Agen Operasional di instance Compute Engine mana pun untuk mengambil dan mengirim metrik Prometheus ke datastore global. Penggunaan agen sangat menyederhanakan penemuan VM dan menghilangkan kebutuhan untuk menginstal, men-deploy, atau mengonfigurasi Prometheus di lingkungan VM.

Jika memiliki layanan Cloud Run yang menulis metrik Prometheus atau metrik OTLP, Anda dapat menggunakan sidecar dan Managed Service for Prometheus untuk mengirim metrik ke Cloud Monitoring.

Anda dapat menjalankan kolektor OpenTelemetry, yang dikelola, dan di-deploy sendiri dalam deployment lokal dan di cloud mana pun. Kolektor yang berjalan di luar Google Cloud mengirim data ke Monarch untuk penyimpanan jangka panjang dan kueri global.

Saat memilih antara opsi pengumpulan, pertimbangkan hal berikut:

  • Koleksi terkelola:

    • Pendekatan yang direkomendasikan Google untuk semua lingkungan Kubernetes.
    • Di-deploy menggunakan UI GKE, gcloud CLI, kubectl CLI, atau Terraform.
    • Operasi Prometheus—membuat konfigurasi scrape, menskalakan penyerapan, menentukan cakupan aturan ke data yang tepat, dan sebagainya—ditangani sepenuhnya oleh operator Kubernetes.
    • Scraping dan aturan dikonfigurasi menggunakan resource kustom (CR) yang ringan.
    • Cocok untuk pengguna yang menginginkan pengalaman terkelola sepenuhnya yang lebih praktis.
    • Migrasi intuitif dari konfigurasi prometheus-operator.
    • Mendukung sebagian besar kasus penggunaan Prometheus saat ini.
    • Bantuan lengkap dari dukungan teknis Google Cloud.
  • Pengumpulan yang di-deploy sendiri:

    • Penggantian langsung untuk biner Prometheus upstream.
    • Anda dapat menggunakan mekanisme deployment pilihan, seperti deployment prometheus-operator atau manual.
    • Scraping dikonfigurasi menggunakan metode pilihan Anda, seperti anotasi atau prometheus-operator.
    • Penskalaan dan sharding fungsional dilakukan secara manual.
    • Cocok untuk integrasi cepat ke dalam penyiapan yang ada yang lebih kompleks. Anda dapat menggunakan kembali konfigurasi yang ada dan menjalankan Prometheus upstream dan Managed Service for Prometheus secara berdampingan.
    • Aturan dan pemberitahuan biasanya berjalan dalam setiap server Prometheus, yang mungkin lebih disukai untuk deployment edge karena evaluasi aturan lokal tidak menimbulkan traffic jaringan apa pun.
    • Mungkin mendukung kasus penggunaan longtail yang belum didukung oleh pengumpulan terkelola, seperti agregasi lokal untuk mengurangi kardinalitas.
    • Bantuan terbatas dari dukungan teknis Google Cloud.
  • OpenTelemetry Collector:

    • Satu kolektor yang dapat mengumpulkan metrik (termasuk metrik Prometheus) dari lingkungan mana pun dan mengirimkannya ke backend yang kompatibel. Dapat juga digunakan untuk mengumpulkan log dan rekaman aktivitas, lalu mengirimkannya ke backend yang kompatibel, termasuk Cloud Logging dan Cloud Trace.
    • Di-deploy di lingkungan komputasi atau Kubernetes apa pun secara manual atau dengan menggunakan Terraform. Dapat digunakan untuk mengirim metrik dari lingkungan stateless seperti Cloud Run.
    • Scraping dikonfigurasi menggunakan konfigurasi seperti Prometheus di penerima Prometheus kolektor.
    • Mendukung pola pengumpulan metrik berbasis push.
    • Metadata dimasukkan dari cloud apa pun menggunakan pemroses pendeteksi resource.
    • Aturan dan pemberitahuan dapat dijalankan menggunakan kebijakan pemberitahuan Cloud Monitoring atau evaluator aturan mandiri.
    • Paling mendukung alur kerja dan fitur lintas sinyal seperti contoh.
    • Bantuan terbatas dari dukungan teknis Google Cloud.
  • Agen Operasional:

Jika Anda menggunakan layanan terkelola di luar Google Kubernetes Engine atau Google Cloud, beberapa konfigurasi tambahan mungkin diperlukan; lihat Menjalankan pengumpulan terkelola di luar Google Cloud, Menjalankan pengumpulan yang di-deploy sendiri di luar Google Cloud, atau Menambahkan pemroses OpenTelemetry.

Evaluasi kueri

Managed Service for Prometheus mendukung UI kueri apa pun yang dapat memanggil Prometheus query API, termasuk Grafana dan UI Cloud Monitoring. Dasbor Grafana yang ada akan terus berfungsi saat beralih dari Prometheus lokal ke Layanan Terkelola untuk Prometheus, dan Anda dapat terus menggunakan PromQL yang ditemukan di repositori open source populer dan di forum komunitas.

Anda dapat menggunakan PromQL untuk membuat kueri lebih dari 6.500 metrik gratis di Cloud Monitoring, bahkan tanpa mengirim data ke Layanan Terkelola untuk Prometheus. Anda juga dapat menggunakan PromQL untuk membuat kueri metrik Kubernetes gratis, metrik kustom, dan metrik berbasis log.

Untuk informasi tentang cara mengonfigurasi Grafana untuk membuat kueri data Managed Service for Prometheus, lihat Membuat kueri menggunakan Grafana.

Untuk informasi tentang cara membuat kueri metrik Cloud Monitoring menggunakan PromQL, lihat PromQL di Cloud Monitoring.

Evaluasi aturan dan pemberitahuan

Managed Service for Prometheus menyediakan pipeline pemberitahuan berbasis cloud sepenuhnya dan evaluator aturan mandiri, yang keduanya mengevaluasi aturan terhadap semua data Monarch yang dapat diakses dalam cakupan metrik. Mengevaluasi aturan terhadap cakupan metrik multi-project menghilangkan kebutuhan untuk menempatkan bersama semua data yang menarik di satu server Prometheus atau dalam satu project Google Cloud, dan memungkinkan Anda menetapkan izin IAM pada grup project.

Karena semua opsi evaluasi aturan menerima format rule_files Prometheus standar, Anda dapat dengan mudah bermigrasi ke Managed Service for Prometheus dengan menyalin dan menempelkan aturan yang ada atau menyalin dan menempelkan aturan yang ditemukan di repositori open source populer. Untuk pengguna yang menggunakan kolektor yang di-deploy sendiri, Anda dapat terus mengevaluasi aturan perekaman secara lokal di kolektor. Hasil perekaman dan aturan pemberitahuan disimpan di Monarch, seperti data metrik yang dikumpulkan secara langsung. Anda juga dapat memigrasikan aturan pemberitahuan Prometheus ke kebijakan pemberitahuan berbasis PromQL di Cloud Monitoring.

Untuk evaluasi pemberitahuan dengan Cloud Monitoring, lihat Pemberitahuan PromQL di Cloud Monitoring.

Untuk evaluasi aturan dengan koleksi terkelola, lihat Pemberitahuan dan evaluasi aturan terkelola.

Untuk evaluasi aturan dengan koleksi yang di-deploy sendiri, OpenTelemetry Collector, dan Agen Operasional, lihat Pemberitahuan dan evaluasi aturan yang di-deploy sendiri.

Untuk informasi tentang cara mengurangi kardinalitas menggunakan aturan perekaman pada pengumpulan yang di-deploy sendiri, lihat Kontrol biaya dan atribusi.

Penyimpanan data

Semua data Managed Service for Prometheus disimpan selama 24 bulan tanpa biaya tambahan.

Managed Service for Prometheus mendukung interval pengambilan minimum 5 detik. Data disimpan dengan tingkat perincian penuh selama 1 minggu, lalu didownsample ke titik 1 menit selama 5 minggu berikutnya, lalu didownsample ke titik 10 menit dan disimpan selama sisa periode retensi.

Layanan Terkelola untuk Prometheus tidak memiliki batasan jumlah deret waktu aktif atau total deret waktu.

Untuk mengetahui informasi selengkapnya, lihat Kuota dan batas dalam dokumentasi Cloud Monitoring.

Penagihan dan kuota

Managed Service for Prometheus adalah produk Google Cloud, dan kuota penagihan serta penggunaan berlaku.

Penagihan

Penagihan untuk layanan ini terutama didasarkan pada jumlah sampel metrik yang diserap ke dalam penyimpanan. Ada juga biaya nominal untuk panggilan API baca. Managed Service for Prometheus tidak mengenakan biaya untuk penyimpanan atau retensi data metrik.

Kuota

Managed Service for Prometheus berbagi kuota transfer dan baca dengan Cloud Monitoring. Kuota transfer default adalah 500 QPS per project dengan maksimal 200 sampel dalam satu panggilan, setara dengan 100.000 sampel per detik. Kuota baca default adalah 100 QPS per cakupan metrik.

Anda dapat meningkatkan kuota ini untuk mendukung volume metrik dan kueri. Untuk mengetahui informasi tentang cara mengelola kuota dan meminta penambahan kuota, lihat Menangani kuota.

Persyaratan Layanan dan kepatuhan

Managed Service for Prometheus adalah bagian dari Cloud Monitoring sehingga inherits perjanjian dan sertifikasi tertentu dari Cloud Monitoring, termasuk (tetapi tidak terbatas pada):

Langkah selanjutnya