Terapkan dan kelola aplikasi ACK dengan mengemas resource Kubernetes ke dalam Helm Chart yang dapat digunakan kembali.
Buat aplikasi Helm
Contoh ini menerapkan aplikasi Dify dari Konsol ACK. Kluster Anda harus memiliki setidaknya 2 core vCPU dan memori 4 GB yang tersedia.
-
Buat StorageClass Container Network File System (CNFS) dan Network Attached Storage (NAS) untuk Dify.
-
Masuk ke Konsol ACK dan buka halaman Clusters. Klik kluster target Anda, lalu pilih dari panel navigasi kiri.
-
Pada halaman StorageClasses, klik Create from YAML. Tempel YAML berikut ke dalam templat, lalu klik Create.
Jika resource dengan nama yang sama sudah ada, berarti StorageClass CNFS dan NAS telah dibuat. Lanjutkan untuk menerapkan aplikasi. Pembuatan sistem file NAS dikenai biaya. Lihat penagihan NAS.
apiVersion: storage.alibabacloud.com/v1beta1 kind: ContainerNetworkFileSystem metadata: name: cnfs-nas-filesystem spec: description: "cnfs" type: nas reclaimPolicy: Retain # Hanya Retain yang didukung. Menghapus CNFS tidak akan menghapus instans NAS backend. --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: alibabacloud-cnfs-nas mountOptions: - nolock,tcp,noresvport - vers=3 parameters: volumeAs: subpath # Setiap persistent volume claim (PVC) akan membuat subdirektori terpisah di sistem file NAS. containerNetworkFileSystem: cnfs-nas-filesystem # Diasosiasikan dengan instans CNFS yang didefinisikan di atas. path: "/" provisioner: nasplugin.csi.alibabacloud.com reclaimPolicy: Retain allowVolumeExpansion: true # Opsional: Atur ke true untuk mengizinkan ekspansi volume untuk kuota direktori.
-
-
Terapkan aplikasi Dify.
Pada halaman detail kluster, pilih dari panel navigasi kiri. Pada halaman Helm, klik Deploy.
-
Basic Information: Di bagian Chart, cari dan pilih
ack-dify. -
Parameters: Untuk Chart Version, pilih versi terbaru.
-
-
Akses aplikasi Dify.
-
Ekspos layanan
ack-difyke Internet publik.Akses publik hanya untuk demonstrasi. Di lingkungan produksi, gunakan kontrol akses untuk mengamankan data aplikasi Anda.
Buka dan pilih namespace
dify-system. Temukan layanan bernamaack-dify, klik Update, konfigurasikan pengaturan berikut, lalu klik OK.-
Service Type : klik SLB .
-
Access Method: pilih Public Access.
-
VSwitch: pilih vSwitch yang sesuai untuk zona ketersediaan di Virtual Private Cloud (VPC) Anda.
-
-
Akses aplikasi Dify.
Salin alamat External IP dan buka di browser Anda untuk mengakses Dify.
-
Kelola aplikasi Helm
Kelola aplikasi yang telah diterapkan pada halaman Helm di konsol.
|
Action |
Description |
|
View |
Klik nama aplikasi atau Details untuk melihat resource, manifes YAML, dan riwayat rilis. |
|
Update |
Klik Update. Di panel Update Release, ubah parameter sesuai kebutuhan, lalu klik OK. Penting
Pembaruan dapat menyebabkan restart layanan atau masalah fungsional. Evaluasi dampaknya sebelum melakukan perubahan dan lakukan pembaruan selama jam sepi. |
|
Delete |
Klik Delete. Di kotak dialog Delete, pilih Clear Release Records, lalu klik OK untuk menghapus aplikasi dan resource-nya, seperti Services dan Deployments. Menghapus aplikasi Dify tidak menghapus resource NAS backend. Secara manual hapus sistem file NAS. Penting
Jika Anda tidak memilih Clear Release Records, nama aplikasi tetap dipertahankan. Penerapan aplikasi lain dengan nama yang sama akan gagal. |
FAQ
Bagaimana cara menerapkan aplikasi pihak ketiga menggunakan CLI Helm?
Jika Chart ACK tidak memenuhi kebutuhan Anda, gunakan CLI Helm untuk menerapkan aplikasi.
-
Sambungkan ke kluster Anda.
Berdasarkan cloud
Sambungkan kluster dengan kubectl di Workbench atau CloudShell.
CLI berbasis browser Alibaba Cloud telah dilengkapi Helm yang telah dipra-instal. Tidak diperlukan pengaturan tambahan.
Mesin lokal
-
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
-
Tambahkan repositori Chart.
Ganti
REPO_NAMEdengan alias repositori danREPO_URLdengan URL-nya.helm repo add REPO_NAME REPO_URL -
Perbarui informasi repositori lokal Anda.
helm repo update -
Terapkan aplikasi pihak ketiga.
Ganti
APP_NAMEdengan nama aplikasi Anda danCHART_NAMEdengan nama chart.helm install APP_NAME REPO_NAME/CHART_NAME
Lihat dokumentasi resmi Helm untuk perintah lainnya.
Mengapa saya tidak dapat menghapus aplikasi Helm?
Gejala
-
Di konsol, aplikasi Helm tetap berada dalam status "Uninstalling" dalam waktu lama.
-
Perintah
helm uninstallgagal dengan error seperti:no matches for kind "***" in version "***" ensure CRDs are installed first
Penyebab
Hal ini biasanya terjadi setelah peningkatan kluster menghapus versi API yang digunakan oleh resource chart Helm. Proses uninstal gagal karena versi API yang ditentukan tidak lagi tersedia.
Lihat Deprecated API Migration Guide untuk daftar API yang telah ditinggalkan di setiap versi Kubernetes.
Solusi
-
Gunakan plugin helm-mapkubeapis untuk memetakan API yang telah ditinggalkan ke versi yang didukung, lalu hapus aplikasi tersebut.
Ganti
RELEASE_NAMEdanNAMESPACEdengan nama dan namespace aplikasi Helm Anda.helm plugin install https://github.com/helm/helm-mapkubeapis helm mapkubeapis RELEASE_NAME -n NAMESPACEPesan
...completed successfullymenandakan bahwa versi API telah dipetakan. -
Uninstal aplikasi tersebut lagi.
helm uninstall RELEASE_NAME -n NAMESPACEOutput
release "***" uninstalledmenandakan bahwa aplikasi Helm telah dihapus.
Referensi
-
Migrasi dari Helm V2 ke Helm V3 untuk keamanan yang lebih baik dan fitur terbaru.
-
Container Registry Enterprise Edition mendukung dorong dan tarik Helm Chart.