Menyimpan diagram Helm di Artifact Registry
Helm adalah pengelola paket untuk Kubernetes. Helm menggunakan chart yang menentukan kumpulan resource Kubernetes yang akan di-deploy.
Panduan memulai ini menunjukkan cara:
- Membuat repositori pribadi di Artifact Registry
- Membuat contoh diagram
- Mengautentikasi dengan repositori
- Mendorong diagram ke repositori
- Men-deploy diagram
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry, Google Kubernetes Engine APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry, Google Kubernetes Engine APIs.
Memilih shell
Untuk menyelesaikan panduan memulai ini, gunakan Cloud Shell atau shell lokal Anda.
- Cloud Shell
- Cloud Shell adalah lingkungan shell untuk mengelola resource yang dihosting di Google Cloud. Cloud Shell telah diinstal dengan Docker, Helm, dan Google Cloud CLI, antarmuka command line utama untuk Google Cloud.
- Shell lokal
- Jika lebih suka menggunakan shell lokal, Anda harus menginstal Docker dan gcloud CLI di lingkungan Anda.
Memulai Cloud Shell
Untuk meluncurkan Cloud Shell, lakukan langkah-langkah berikut:
Buka Konsol Google Cloud.
Klik tombol Aktifkan Cloud Shell: .
Sesi Cloud Shell akan terbuka di dalam frame yang lebih rendah di konsol. Anda menggunakan shell ini untuk menjalankan perintah
gcloud
.Instal Helm 3.8.0 atau yang lebih baru. Di versi Helm sebelumnya, dukungan untuk diagram dalam format OCI adalah fitur eksperimental.
Jalankan
helm version
untuk memverifikasi versi Anda.
Menyiapkan shell lokal
Untuk menginstal gcloud CLI dan Helm, lakukan langkah-langkah berikut:
Instal gcloud CLI. Untuk mengupdate penginstalan yang ada, jalankan perintah
gcloud components update
.Instal Helm 3.8.0 atau yang lebih baru. Di versi Helm sebelumnya, dukungan untuk diagram dalam format OCI adalah fitur eksperimental.
Jalankan
helm version
untuk memverifikasi versi Anda.
Membuat repositori
Buat repositori Docker untuk menyimpan diagram contoh untuk panduan memulai ini.
Konsol
Buka halaman Repositories di konsol Google Cloud.
Klik Create Repository.
Tentukan
quickstart-helm-repo
sebagai nama repositori.Pilih Docker sebagai formatnya.
Di bawah Jenis Lokasi, pilih Region dan kemudian pilih lokasi
us-west1
.Klik Buat.
Repositori ditambahkan ke daftar repositori.
gcloud
Jalankan perintah berikut untuk membuat repositori Docker baru bernama
quickstart-helm-repo
di lokasius-west1
dengan deskripsi "repositori docker".gcloud artifacts repositories create quickstart-helm-repo --repository-format=docker \ --location=us-west1 --description="Helm repository"
Jalankan perintah berikut untuk memverifikasi bahwa repositori Anda telah dibuat.
gcloud artifacts repositories list
Untuk mengetahui informasi selengkapnya tentang perintah Artifact Registry, jalankan
perintah gcloud artifacts
.
Membuat chart
Untuk panduan memulai ini, Anda akan membuat contoh diagram bernama hello-chart
.
- Ubah ke direktori tempat Anda ingin membuat diagram.
Jalankan perintah berikut untuk membuat diagram:
helm create hello-chart
Helm membuat direktori bernama
hello-chart
dengan kumpulan file diagram default. Salah satu file adalah Chart.yaml, yang menyertakan informasi tentang diagram.Kemas diagram sebagai arsip.
helm package hello-chart/
Helm membuat arsip bernama
hello-chart-0.1.0.tgz
menggunakan nama diagram dan nomor versi diChart.yaml
.
Mengautentikasi dengan repositori
Sebelum Anda dapat mengirim atau menginstal image, Helm harus mengautentikasi ke Artifact Registry.
Helm dapat menggunakan setelan registry yang ada dan file konfigurasi Docker. Jika belum mengonfigurasi Docker untuk digunakan dengan Artifact Registry, Anda dapat mengautentikasi dengan token akses untuk panduan memulai ini.
Lihat Menyiapkan autentikasi untuk Helm untuk mengetahui informasi selengkapnya tentang autentikasi.
Melakukan autentikasi dengan konfigurasi Docker
Secara default, Helm mendukung setelan registry dalam file konfigurasi Docker config.json. Helm menemukan setelan registry di lokasi default atau lokasi yang ditentukan oleh variabel lingkungan DOCKER_CONFIG.
Jika Anda mengonfigurasi Docker dengan helper kredensial untuk melakukan autentikasi dengan Artifact Registry, Helm akan menggunakan konfigurasi yang ada untuk repositori Docker Artifact Registry.
Mengautentikasi dengan token akses
Untuk mengautentikasi dengan token akses:
Dapatkan token akses sebagai kredensial saat Anda mengautentikasi ke Artifact Registry dengan Helm.
Linux / macOS
Jalankan perintah berikut:
gcloud auth print-access-token | helm registry login -u oauth2accesstoken \ --password-stdin https://us-west1-docker.pkg.dev
Windows
Jalankan perintah berikut:
gcloud auth print-access-token ya29.8QEQIfY_... helm registry login -u oauth2accesstoken -p "ya29.8QEQIfY_..." \ https://us-west1-docker.pkg.dev/PROJECT-ID/REPOSITORY
Dari mana
oauth2accesstoken
adalah nama pengguna yang akan digunakan saat melakukan autentikasi dengan token akses.gcloud auth print-access-token
adalah perintah gcloud untuk mendapatkan token akses. Token akses Anda adalah sandi untuk autentikasi.
Helm kini diautentikasi dengan Artifact Registry. Anda siap mendorong diagram ke repositori.
Mengirim diagram ke Artifact Registry
Setelah membuat arsip diagram dan mengautentikasi ke repositori Artifact Registry, Anda dapat mengirim diagram ke repositori.
Untuk mendorong diagram, jalankan perintah berikut:
helm push hello-chart-0.1.0.tgz oci://us-west1-docker.pkg.dev/PROJECT/quickstart-helm-repo
Ganti PROJECT dengan project ID Google Cloud Anda.
Helm menggunakan nilai dari Chart.yaml
untuk image:
- Nama diagram adalah nama gambar:
hello-chart
- Versi diagram adalah tag gambar:
0.1.0
Helm menampilkan output yang mirip dengan contoh berikut:
Login Succeeded
Pushed: us-west1-docker.pkg.dev/my-project/quickstart-helm-repo/hello-chart:0.1.0
Digest: sha256:67a72...
Jalankan perintah berikut untuk memverifikasi bahwa diagram kini disimpan di repositori:
gcloud artifacts docker images list us-west1-docker.pkg.dev/PROJECT/quickstart-helm-repo
Output perintah terlihat seperti contoh berikut:
Listing items under project my-project, location us-west1, repository quickstart-helm-repo.
IMAGE: us-west1-docker.pkg.dev/my-project/quickstart-helm-repo/hello-chart
DIGEST: sha256:67a72...
CREATE_TIME: 2021-11-08T22:59:57
UPDATE_TIME: 2021-11-08T22:59:57
Sekarang Anda dapat men-deploy rilis menggunakan diagram yang disimpan di Artifact Registry.
Men-deploy diagram
Di Helm, instance aplikasi yang di-deploy disebut rilis. Setelah menambahkan repositori ke konfigurasi Helm, Anda dapat men-deploy rilis diagram.
Buat cluster bernama
chart-cluster
untuk deployment Anda dengan perintah:gcloud container clusters create --zone us-west1-a chart-cluster
Saat cluster dibuat, perintah akan menampilkan ringkasan yang mirip dengan contoh berikut:
kubeconfig entry generated for chart-cluster. NAME: chart-cluster LOCATION: us-west1-a MASTER_VERSION: 1.20.10-gke.1600 MASTER_IP: 34.66.36.211 MACHINE_TYPE: e2-medium NODE_VERSION: 1.20.10-gke.1600 NUM_NODES: 3 STATUS: RUNNING
Dapatkan kredensial cluster agar
kubectl
dapat mengakses cluster:gcloud container clusters get-credentials --zone us-west1-a chart-cluster
Jalankan perintah berikut untuk men-deploy rilis
hello-chart
menggunakan file diagram yang diekstrak secara lokal:helm install hello-chart oci://us-west1-docker.pkg.dev/PROJECT/quickstart-helm-repo/hello-chart --version 0.1.0
Perintah ini menampilkan ringkasan deployment:
NAME: hello-chart LAST DEPLOYED: Mon Nov 8 23:15:13 2021 NAMESPACE: default STATUS: deployed REVISION: 1
Anda telah berhasil men-deploy rilis menggunakan diagram yang Anda buat dan dikirim ke Artifact Registry.
Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.
Hapus repositori yang Anda buat dengan perintah berikut:
gcloud artifacts repositories delete quickstart-helm-repo --location=us-west1
Hapus cluster yang Anda buat:
gcloud container clusters delete --zone=us-west1-a chart-cluster
Langkah selanjutnya
- Pelajari lebih lanjut cara menggunakan diagram.
- Pelajari Helm lebih lanjut.
- Baca sumber daya kami tentang DevOps dan jelajahi program penelitian kami.