Mengonfigurasi GKE untuk Diagnostik ML
Jika Anda menggunakan Google Kubernetes Engine (GKE) untuk workload ML, gunakan panduan ini untuk mengonfigurasi cluster GKE dan menginstal artefak GKE yang diperlukan. Persyaratan GKE tetap sama, terlepas dari apakah Anda menggunakan gcloud CLI Diagnostik ML dan memicu pembuatan profil sesuai permintaan dari CLI, atau menggunakan SDK Diagnostik ML dengan workload dan men-deploy di GKE.
Jika Anda menggunakan versi GKE yang lebih baru dari
1.35.0-gke.3065000, Anda dapat menyiapkan cluster GKE untuk Diagnostik ML dengan satu perintah gcloud CLI. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan dengan
gcloud CLI.
Untuk versi GKE sebelum 1.35.0-gke.3065000, Anda perlu
mengonfigurasi cluster GKE secara manual untuk menginstal artefak cert-manager,
injection-webhook, dan connection-operator. Untuk mengetahui informasi selengkapnya,
lihat Penginstalan manual.
Menyiapkan dengan gcloud CLI
Untuk versi GKE yang lebih baru dari 1.35.0-gke.3065000, gunakan salah satu perintah gcloud CLI berikut untuk men-deploy komponen ML Diagnostics yang diperlukan ke cluster GKE Anda.
Untuk cluster GKE baru:
gcloud container clusters create CLUSTER_NAME --enable-managed-mldiagnostics
Untuk cluster GKE yang ada:
gcloud container clusters update CLUSTER_NAME --enable-managed-mldiagnostics
Untuk menonaktifkan Diagnostik ML, gunakan perintah berikut:
gcloud container clusters update CLUSTER_NAME --no-enable-managed-mldiagnostics
Anda juga dapat mengaktifkan perintah gcloud CLI melalui konsol Google Cloud GKE:
Untuk cluster GKE baru, buka Pengelola Fitur > Managed Machine Learning Diagnostics.
Untuk cluster GKE yang ada, buka Cluster, pilih nama cluster Anda, buka Edit, lalu edit Managed Machine Learning Diagnostics di bagian Fitur.
Untuk mengetahui informasi selengkapnya tentang perintah gcloud CLI untuk menyiapkan cluster GKE bagi Diagnostik ML, lihat tanda enable-managed-mldiagnostics di halaman referensi API berikut:
Penginstalan manual
Untuk versi GKE sebelum 1.35.0-gke.3065000, Anda harus
mengonfigurasi cluster GKE secara manual untuk menginstal berikut ini:
cert-manager: Prasyarat untukinjection-webhook.injection-webhook: Memberikan metadata yang diperlukan ke SDK. Hal ini mendukung workload Kubernetes ML umum, sepertiJobSet,RayJob, danLeaderWorkerSet.connection-operator: Untuk pembuatan profil sesuai permintaan di GKE. Men-deployconnection-operatorbersama denganinjection-webhookke cluster GKE akan menginisialisasi permintaan pembuatan profil ke pod target dengan server pembuatan profil yang berjalan saat Anda memicu pengambilan data sesuai permintaan.
Untuk mengetahui informasi selengkapnya tentang penyiapan untuk Google Kubernetes Engine, lihat Mengonfigurasi cluster Google Kubernetes Engine.
Cert-manager
cert-manager bertindak sebagai pengontrol sertifikat untuk cluster Anda, memastikan
bahwa aplikasi Anda aman dan masa berlaku sertifikat Anda tidak pernah
berakhir secara tidak sengaja.
Gunakan Helm untuk menginstal hal berikut:
helm repo add jetstack https://charts.jetstack.io
helm repo update
helm install \
cert-manager jetstack/cert-manager \
--namespace cert-manager \
--create-namespace \
--version v1.13.0 \
--set installCRDs=true \
--set global.leaderElection.namespace=cert-manager \
--timeout 10m
Injection-webhook
injection-webhook meneruskan metadata ke SDK. Gunakan helm upgrade untuk mengupdate
ke versi terbaru injection-webhook guna memastikan tidak ada
waktu nonaktif.
Gunakan Helm untuk menginstal hal berikut:
helm install mldiagnostics-injection-webhook \
--namespace=gke-mldiagnostics \
--create-namespace \
oci://us-docker.pkg.dev/ai-on-gke/mldiagnostics-webhook-and-operator-helm/mldiagnostics-injection-webhook
Connection-operator
connection-operator mengaktifkan pembuatan profil sesuai permintaan di GKE. Gunakan tabel berikut untuk menemukan versi mldiagnostics-connection-operator yang benar:
| Versi JAX | Versi Diagram Helm |
|---|---|
| 0.8.1-0.8.3 | 0.14.0 |
| 0.9.0 | 0.16.0 |
Gunakan Helm untuk menginstal versi yang diperlukan:
helm install mldiagnostics-connection-operator \
--namespace=gke-mldiagnostics \
--create-namespace \
--version VERSION \
oci://us-docker.pkg.dev/ai-on-gke/mldiagnostics-webhook-and-operator-helm/mldiagnostics-connection-operator
Workload label
Untuk memicu injection-webhook agar menyuntikkan metadata ke pod, Anda perlu
memberi label pada workload atau namespace-nya dengan managed-mldiagnostics-gke=true
sebelum men-deploy workload:
Beri label pada workload. Beri label pada workload
Jobset,LWS, atauRayJob, yang akan mengaktifkan webhook untuk workload tertentu tersebut. Berikut adalah contoh untuk workloadJobSet:apiVersion: jobset.x-k8s.io/v1alpha2 kind: JobSet metadata: name: single-host-tpu-v3-jobset2 namespace: default labels: managed-mldiagnostics-gke: "true"Beri label namespace. Tindakan ini akan mengaktifkan webhook untuk semua beban kerja
Jobset,LWS, danRayJobdalam namespace tersebut.kubectl create namespace ai-workloads kubectl label namespace ai-workloads managed-mldiagnostics-gke=true