Dokumen ini menjelaskan cara mengupdate workload stateful yang ada yang berjalan di cluster Kubernetes air-gapped Google Distributed Cloud (GDC). Seiring berkembangnya aplikasi berdasarkan penggunaan resource dan pengoptimalan konfigurasi, Anda harus memperbarui spesifikasi pod yang mendasarinya di cluster Kubernetes untuk mencerminkan perubahan workload tersebut. Untuk mengetahui informasi selengkapnya tentang perencanaan update untuk workload stateful, lihat dokumentasi Kubernetes untuk Strategi update.
Dokumen ini ditujukan bagi developer dalam grup operator aplikasi, yang bertanggung jawab untuk memperbarui workload aplikasi bagi organisasi mereka. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Audiens untuk GDC yang terisolasi dari internet.
Sebelum memulai
Untuk menyelesaikan tugas dalam dokumen ini, Anda harus memiliki resource dan peran berikut:
Untuk menjalankan perintah terhadap cluster Kubernetes, pastikan Anda memiliki resource berikut:
Temukan nama cluster Kubernetes, atau tanyakan nama cluster kepada anggota grup administrator platform.
Login dan buat file kubeconfig untuk cluster Kubernetes jika Anda belum memilikinya.
Gunakan jalur kubeconfig cluster Kubernetes untuk mengganti
KUBERNETES_CLUSTER_KUBECONFIGdalam petunjuk ini.
Untuk mendapatkan izin yang diperlukan guna memperbarui workload stateful di cluster bersama, minta Admin IAM Organisasi Anda untuk memberi Anda peran Namespace Admin (
namespace-admin) di namespace project Anda.Untuk mendapatkan izin yang diperlukan guna memperbarui workload stateful di cluster standar, minta Admin IAM Organisasi Anda untuk memberi Anda peran Cluster Developer (
cluster-developer) di cluster standar.
Mengupdate resource StatefulSet
Untuk mengupdate StatefulSet, terapkan file manifes baru atau yang telah diperbarui. Hal ini berguna untuk membuat berbagai perubahan pada StatefulSet saat melakukan penskalaan atau untuk menentukan versi baru aplikasi Anda.
Untuk memperbarui objek StatefulSet, jalankan:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
apply -f STATEFULSET_FILE
Ganti kode berikut:
KUBERNETES_CLUSTER_KUBECONFIG: file kubeconfig untuk cluster yang menjalankan beban kerja stateful.NAMESPACE: namespace. Untuk cluster bersama, ini harus berupa namespace project. Untuk cluster standar, namespace-nya dapat berupa namespace apa pun.STATEFULSET_FILE: nama file manifesStatefulSetyang diperbarui.
Perintah kubectl apply menerapkan file manifes ke resource. Jika
resource yang ditentukan tidak ada, resource tersebut akan dibuat oleh perintah.
Memeriksa peluncuran update resource StatefulSet
Anda dapat melihat informasi mendetail mengenai status peluncuran update dan
histori objek StatefulSet. Anda juga dapat mengurungkan peluncuran objek StatefulSet.
Memeriksa peluncuran
Untuk memeriksa peluncuran resource StatefulSet, jalankan:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
rollout status statefulset STATEFULSET_NAME
KUBERNETES_CLUSTER_KUBECONFIG: file kubeconfig untuk cluster yang menjalankan beban kerja stateful.NAMESPACE: namespace. Untuk cluster bersama, ini harus berupa namespace project. Untuk cluster standar, namespace-nya dapat berupa namespace apa pun.STATEFULSET_NAME: nama objekStatefulSetyang diperbarui.
Mendapatkan histori peluncuran
Untuk melihat histori peluncuran resource StatefulSet, jalankan:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
rollout history statefulset STATEFULSET_NAME
KUBERNETES_CLUSTER_KUBECONFIG: file kubeconfig untuk cluster yang menjalankan beban kerja stateful.NAMESPACE: namespace. Untuk cluster bersama, ini harus berupa namespace project. Untuk cluster standar, namespace-nya dapat berupa namespace apa pun.STATEFULSET_NAME: nama objekStatefulSetyang diperbarui.
Mengurungkan peluncuran
Untuk mengurungkan peluncuran, jalankan:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
rollout undo statefulset STATEFULSET_NAME
Ganti kode berikut:
KUBERNETES_CLUSTER_KUBECONFIG: file kubeconfig untuk cluster yang menjalankan beban kerja stateful.NAMESPACE: namespace. Untuk cluster bersama, ini harus berupa namespace project. Untuk cluster standar, namespace-nya dapat berupa namespace apa pun.STATEFULSET_NAME: nama objekStatefulSet.