Semua data metrik harus dienkripsi dalam pengiriman untuk memastikan keamanan. Komponen pemantauan Google Distributed Cloud (GDC) yang terisolasi menyediakan enkripsi dan autentikasi dalam pengiriman melalui mutual Transport Layer Security (mTLS). Metode mTLS memverifikasi identitas kedua pihak dalam koneksi jaringan, sehingga mengonfirmasi bahwa mereka adalah orang yang mereka klaim.
Halaman ini menjelaskan cara menyiapkan mTLS untuk server metrik Anda.
Sebelum memulai
Untuk mengelola resource kustom MonitoringTarget, Anda harus memiliki izin yang diperlukan.
Meminta peran organisasi IAM
Hubungi Admin IAM Organisasi Anda untuk meminta peran berikut:
- MonitoringTarget PA Creator (
monitoringtarget-pa-creator): membuat resource kustomMonitoringTarget. - MonitoringTarget PA Editor (
monitoringtarget-pa-editor): mengedit atau mengubah resource kustomMonitoringTarget. - MonitoringTarget PA Viewer (
monitoringtarget-pa-viewer): melihat resource kustomMonitoringTarget.
Meminta peran project IAM
Hubungi Admin IAM Project Anda untuk meminta peran berikut:
- MonitoringTarget Editor (
monitoringtarget-editor): mengedit atau mengubah resource kustomMonitoringTargetdi namespace project. - MonitoringTarget Viewer (
monitoringtarget-viewer): melihat resource kustomMonitoringTargetdi namespace project.
Setelah mendapatkan izin yang diperlukan, selesaikan langkah-langkah berikut sebelum mengaktifkan enkripsi metrik:
- Deploy server metrik Anda.
- Kumpulkan metrik dari beban kerja Anda.
Pastikan resource kustom
MonitoringTargetAnda menampilkan statusReady, seperti dalam contoh berikut:apiVersion: monitoring.gdc.goog/v1 kind: MonitoringTarget [...] status: conditions: - lastTransitionTime: "2023-10-27T15:27:51Z" message: "" observedGeneration: 1 reason: Ready status: True type: ReadyBuat kueri dan lihat metrik di dasbor untuk mengonfirmasi bahwa server metrik Anda mengirimkan data yang diharapkan.
Memasang sertifikat
Beban kerja Anda harus menggunakan sertifikat yang otomatis dibuat saat Anda mengaktifkan mTLS di resource kustom MonitoringTarget. Tambahkan volume dan pemasangan volume untuk sertifikat ini menggunakan template berikut:
apiVersion: apps/v1
kind: Deployment # or StatefulSet
metadata:
name: "SERVICE_NAME"
spec:
template:
spec:
containers:
- name: "CONTAINER_NAME"
volumeMounts:
- mountPath: "/etc/ssl/MONITORING_TARGET_NAME-cert"
name: "MONITORING_TARGET_NAME-cert"
readOnly: true
volumes:
- name: "MONITORING_TARGET_NAME-cert"
secret:
secretName: "MONITORING_TARGET_NAME-cert"
[...]
Ganti kode berikut:
SERVICE_NAME: nama objekDeploymentatauStatefulSetAnda.CONTAINER_NAME: nama container tempat Anda menambahkan pemasangan volume.MONITORING_TARGET_NAME: nama resource kustomMonitoringTargetAnda. Nama secret didasarkan pada nama ini. Misalnya, resourcemy-mon-targetmembuat nama secretmy-mon-target-cert.
Menayangkan metrik
Server metrik Anda harus menayangkan metrik dari server HTTP yang mengaktifkan mTLS. Anda mungkin ingin mengenkripsi metrik dalam salah satu dari dua skenario berikut:
- Untuk aplikasi yang Anda miliki: Ubah kode sumber untuk mendukung mTLS dan konfigurasi server metrik dengan sertifikat mTLS.
- **Untuk aplikasi yang tidak Anda miliki**: Lihat dokumentasi aplikasi
untuk mengaktifkan endpoint metrik HTTPS. Terapkan konfigurasi yang diperlukan, seperti mengonfigurasi argumen command line atau men-deploy file
config.
Mengaktifkan pengumpulan metrik mTLS
Tambahkan label berikut ke bagian metadata resource kustom MonitoringTarget Anda untuk mengaktifkan pengumpulan metrik terenkripsi:
monitoring.gdc.goog/enable-mtls: "true"
Resource kustom harus terlihat seperti contoh berikut:
apiVersion: monitoring.gdc.goog/v1
kind: MonitoringTarget
metadata:
namespace: my-project-namespace
name: "SERVICE_NAME"
labels:
monitoring.gdc.goog/enable-mtls: "true" # Enable mTLS metrics collection
spec:
[...]
Untuk memverifikasi bahwa Anda telah mengaktifkan autentikasi mTLS, pastikan resource kustom MonitoringTarget Anda menampilkan status Ready untuk sertifikat dan secret sertifikat, seperti dalam contoh berikut:
apiVersion: monitoring.gdc.goog/v1
kind: MonitoringTarget
[...]
status:
conditions:
- lastTransitionTime: "2023-11-09T11:15:10Z"
message: "admin,user-vm-1,user-vm-2,org-1-system"
observedGeneration: 2
reason: Ready
status: "True"
type: Ready
- lastTransitionTime: "2023-11-09T11:14:43Z"
message: "Certificate is ready"
observedGeneration: 2
reason: Ready
status: "True"
type: CertificateReady
- lastTransitionTime: "2023-11-09T11:15:10Z"
message: "Successfully created secret"
observedGeneration: 2
reason: Ready
status: "True"
type: CertificateSecretReady