GSP1027

Ringkasan
Google Cloud Managed Service for Prometheus mengenakan biaya sejumlah sampel yang diserap Cloud Monitoring dan untuk permintaan baca ke Monitoring API. Jumlah sampel yang diserap adalah kontributor utama biaya Anda.
Di lab ini, Anda akan mempelajari mekanisme kontrol biaya saat menggunakan Managed Service for Prometheus di Google Cloud.
Tujuan
Di lab ini, Anda akan mempelajari cara:
- Men-deploy Google Managed Prometheus (GMP) di cluster Google Kubernetes Engine (GKE) serta aplikasi python
- Mengurangi jumlah metrik deret waktu yang Anda kirim ke layanan terkelola dengan memfilter data metrik yang dihasilkan
- Mengurangi jumlah sampel yang dikumpulkan dengan mengubah interval scraping
Penyiapan dan persyaratan
Sebelum mengklik tombol Start Lab
Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer yang dimulai saat Anda mengklik Start Lab akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.
Lab interaktif ini dapat Anda gunakan untuk melakukan aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.
Untuk menyelesaikan lab ini, Anda memerlukan:
- Akses ke browser internet standar (disarankan browser Chrome).
Catatan: Gunakan jendela Samaran (direkomendasikan) atau browser pribadi untuk menjalankan lab ini. Hal ini akan mencegah konflik antara akun pribadi Anda dan akun siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
- Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Catatan: Hanya gunakan akun siswa untuk lab ini. Jika Anda menggunakan akun Google Cloud yang berbeda, Anda mungkin akan dikenai tagihan ke akun tersebut.
Cara memulai lab dan login ke Google Cloud Console
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, dialog akan terbuka untuk memilih metode pembayaran.
Di sebelah kiri ada panel Lab Details yang berisi hal-hal berikut:
- Tombol Open Google Cloud console
- Waktu tersisa
- Kredensial sementara yang harus Anda gunakan untuk lab ini
- Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
-
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
-
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}}
Anda juga dapat menemukan Username di panel Lab Details.
-
Klik Next.
-
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}}
Anda juga dapat menemukan Password di panel Lab Details.
-
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda.
Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
-
Klik halaman berikutnya:
- Setujui persyaratan dan ketentuan.
- Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
- Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Catatan: Untuk mengakses produk dan layanan Google Cloud, klik Navigation menu atau ketik nama layanan atau produk di kolom Search.
Mengaktifkan Cloud Shell
Cloud Shell adalah mesin virtual yang dilengkapi dengan berbagai alat pengembangan. Mesin virtual ini menawarkan direktori beranda persisten berkapasitas 5 GB dan berjalan di Google Cloud. Cloud Shell menyediakan akses command-line untuk resource Google Cloud Anda.
-
Klik Activate Cloud Shell
di bagian atas Konsol Google Cloud.
-
Klik jendela berikut:
- Lanjutkan melalui jendela informasi Cloud Shell.
- Beri otorisasi ke Cloud Shell untuk menggunakan kredensial Anda guna melakukan panggilan Google Cloud API.
Setelah terhubung, Anda sudah diautentikasi, dan project ditetapkan ke Project_ID, . Output berisi baris yang mendeklarasikan Project_ID untuk sesi ini:
Project Cloud Platform Anda dalam sesi ini disetel ke {{{project_0.project_id | "PROJECT_ID"}}}
gcloud adalah alat command line untuk Google Cloud. Alat ini sudah terinstal di Cloud Shell dan mendukung pelengkapan command line.
- (Opsional) Anda dapat menampilkan daftar nama akun yang aktif dengan perintah ini:
gcloud auth list
- Klik Authorize.
Output:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
Untuk menetapkan akun aktif, jalankan:
$ gcloud config set account `ACCOUNT`
- (Opsional) Anda dapat menampilkan daftar ID project dengan perintah ini:
gcloud config list project
Output:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Catatan: Untuk mendapatkan dokumentasi gcloud yang lengkap di Google Cloud, baca panduan ringkasan gcloud CLI.
Tugas 1. Men-deploy cluster GKE
- Men-deploy cluster GKE dasar untuk menyiapkan lab:
gcloud beta container clusters create gmp-cluster --num-nodes=1 --zone {{{project_0.default_zone|ZONE}}} --enable-managed-prometheus
gcloud container clusters get-credentials gmp-cluster --zone={{{project_0.default_zone|ZONE}}}
Tugas 2. Men-deploy koleksi terkelola
Mengonfigurasi resource PodMonitoring
Manifes berikut mendefinisikan resource PodMonitoring, prom-example, di namespace gmp-test. Resource ini menggunakan pemilih label Kubernetes untuk menemukan semua pod di namespace yang memiliki label app dengan nilai prom-example. Scraping untuk pod yang cocok dilakukan setiap 30 detik pada port bernama metrics, di jalur HTTP /metrics.
apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
namespace: gmp-system
name: collector
labels:
app.kubernetes.io/name: collector
app.kubernetes.io/part-of: google-cloud-managed-prometheus
spec:
selector:
matchLabels:
app.kubernetes.io/name: collector
endpoints:
- port: prom-metrics
interval: 10s
- port: cfg-rel-metrics
interval: 10s
- Untuk menerapkan resource ini, jalankan perintah berikut:
kubectl -n gmp-system apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/main/examples/self-pod-monitoring.yaml
Kolektor terkelola Anda kini sedang melakukan scraping terhadap pod yang cocok.
Men-deploy aplikasi contoh
Layanan terkelola menyediakan manifes untuk aplikasi contoh yang menghasilkan metrik Prometheus di port metriknya. Aplikasi ini menggunakan tiga replika.
- Untuk men-deploy aplikasi contoh, jalankan perintah berikut:
kubectl -n gmp-system apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/main/examples/example-app.yaml
Memeriksa apakah prometheus telah di-deploy
Tugas 3. Cloud Monitoring
Untuk melihat data Managed Service for Prometheus sebagai deret waktu Cloud Monitoring, gunakan Metrics Explorer. Untuk mengonfigurasi Metrics Explorer agar menampilkan metrik, lakukan hal berikut:
- Dari konsol Cloud, buka Monitoring.
- Di panel navigasi Monitoring, klik
Metrics Explorer.
- Tentukan data yang akan dimunculkan pada diagram. Anda dapat menggunakan editor MQL untuk melakukannya.
-
Untuk menggunakan tab MQL, lakukan hal berikut:
a. Klik PromQL di kanan atas dan pilih opsi radio MQL di Query baru.
b. Masukkan kueri berikut:
fetch prometheus_target::prometheus.googleapis.com/up/gauge
c. Klik Run Query.
Tugas 4. Mengisi Grafik
go_memstats_heap_alloc_bytes
Tindakan ini akan mengisi grafik yang mirip dengan gambar di bawah saat metrik dipilih.

Tugas 5. Memfilter metrik yang diekspor
Jika mengumpulkan banyak data, Anda mungkin ingin mencegah beberapa deret waktu dikirim ke Managed Service for Prometheus untuk menekan biaya.
Untuk memfilter metrik yang diekspor, Anda dapat mengonfigurasi serangkaian pemilih deret waktu PromQL di resource OperatorConfig. Deret waktu diekspor ke Managed Service for Prometheus jika memenuhi setidaknya salah satu pemilih.
- Buka resource
OperatorConfig untuk mengedit:
kubectl -n gmp-public edit operatorconfig config
- Setelah baris apiVersion, tekan "i" untuk masuk ke mode penyisipan. Buka baris terakhir dan tekan enter untuk membuka baris baru. Pastikan tidak ada indentasi di awal baris. Kemudian, tempelkan kode berikut:
collection:
filter:
matchOneOf:
- '{job="prom-example"}'
- '{__name__=~"job:.+"}'
File tersebut akan terlihat seperti berikut:

- Untuk menyimpan file dan keluar, tekan "Esc", lalu ketik ":wq", lalu tekan enter.
Penambahan filter ini hanya mengizinkan metrik untuk tugas "prometheus" serta metrik yang dihasilkan oleh aturan perekaman untuk digabungkan pada tingkat tugas, jika mengikuti praktik terbaik penamaan, untuk diekspor. Sampel untuk semua deret waktu lainnya difilter. Secara default, tidak ada pemilih yang ditentukan dan semua deret waktu akan diekspor.
Bagian konfigurasi filter.matchOneOf memiliki semantik yang sama dengan parameter match[] untuk federasi Prometheus.
- Buat file
op-config.yaml:
vi op-config.yaml
- Salin kode berikut ke dalam file
op-config.yaml:
apiVersion: monitoring.googleapis.com/v1alpha1
collection:
filter:
matchOneOf:
- '{job="prom-example"}'
- '{__name__=~"job:.+"}'
kind: OperatorConfig
metadata:
annotations:
components.gke.io/layer: addon
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"monitoring.googleapis.com/v1alpha1","kind":"OperatorConfig","metadata":{"annotations":{"components.gke.io/layer":"addon"},"labels":{"addonmanager.kubernetes.io/mode":"Reconcile"},"name":"config","namespace":"gmp-public"}}
creationTimestamp: "2022-03-14T22:34:23Z"
generation: 1
labels:
addonmanager.kubernetes.io/mode: Reconcile
name: config
namespace: gmp-public
resourceVersion: "2882"
uid: 4ad23359-efeb-42bb-b689-045bd704f295
- Upload file konfigurasi yang Anda buat untuk diverifikasi:
export PROJECT=$(gcloud config get-value project)
gsutil mb -p $PROJECT gs://$PROJECT
gsutil cp op-config.yaml gs://$PROJECT
gsutil -m acl set -R -a public-read gs://$PROJECT
Memeriksa apakah filter metrik telah diterapkan
Tugas 6. Jalankan kueri
-
Klik + Add query untuk membuat Query baru dan ketik up/gauge ke dalam filter input Select a metric.
-
Pilih metrik prometheus yang dihasilkan, lalu pilih Apply.
Tugas 7. Memantau aplikasi
- Gunakan file prom-example-config.yaml yang telah Anda buat untuk diverifikasi:
vi prom-example-config.yaml
- Salin perintah berikut ke dalam file:
apiVersion: monitoring.googleapis.com/v1alpha1
kind: PodMonitoring
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"monitoring.googleapis.com/v1alpha1","kind":"PodMonitoring","metadata":{"annotations":{},"labels":{"app.kubernetes.io/name":"prom-example"},"name":"prom-example","namespace":"gmp-test"},"spec":{"endpoints":[{"interval":"30s","port":"metrics"}],"selector":{"matchLabels":{"app":"prom-example"}}}}
creationTimestamp: "2022-03-14T22:33:55Z"
generation: 1
labels:
app.kubernetes.io/name: prom-example
name: prom-example
namespace: gmp-test
resourceVersion: "2648"
uid: c10a8507-429e-4f69-8993-0c562f9c730f
spec:
endpoints:
- interval: 60s
port: metrics
selector:
matchLabels:
app: prom-example
status:
conditions:
- lastTransitionTime: "2022-03-14T22:33:55Z"
lastUpdateTime: "2022-03-14T22:33:55Z"
status: "True"
type: ConfigurationCreateSuccess
observedGeneration: 1
- Jalankan perintah di bawah ini di cloud shell.
export PROJECT=$(gcloud config get-value project)
gsutil cp prom-example-config.yaml gs://$PROJECT
gsutil -m acl set -R -a public-read gs://$PROJECT
Memeriksa apakah interval scraping telah diubah
Lab ini telah selesai.
Selamat
Anda telah mempelajari cara mengurangi biaya yang terkait dengan penggunaan Managed Service for Prometheus. Anda telah men-deploy prometheus dan aplikasi contoh. Kemudian, Anda menerapkan filter metrik dan mengubah interval scraping untuk mengurangi biaya yang terkait dengan penyerapan metrik menggunakan layanan Google Managed Prometheus.
Langkah berikutnya/Pelajari lebih lanjut
Sertifikasi dan pelatihan Google Cloud
...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.
Manual Terakhir Diperbarui pada 17 Februari 2025
Lab Terakhir Diuji pada 17 Februari 2025
Hak cipta 2026 Google LLC. Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.