Jika Anda mengelola peluncuran di beberapa fleet, sebaiknya gunakan project khusus untuk menghosting objek RolloutSequence Anda. Project ini berfungsi sebagai
induk dan koordinator untuk peluncuran di seluruh urutan. Project ini biasanya bukan bagian dari urutan; artinya, project tidak berisi fleet atau cluster yang merupakan bagian dari urutan.
Sebelum memulai
-
Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda. Setelah login, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud init - Pastikan Anda sudah memiliki cluster Autopilot atau Standard. Untuk membuat cluster baru, lihat Membuat cluster Autopilot.
- (Opsional) Jika Anda belum memiliki project Cloud de Confiance by S3NS khusus untuk
menghosting konfigurasi
RolloutSequence, buat project menggunakan Cloud de Confiance console atau metode lain. - Pastikan Anda telah mengaktifkan API yang diperlukan untuk fleet.
API ini harus diaktifkan di project host fleet Anda untuk membuat jenis urutan peluncuran apa pun. Untuk project host urutan peluncuran Anda, aktifkan
gkehub.googleapis.comAPI. Untuk petunjuk Terraform, pastikan Anda menggunakan penyedia Terraform versi berikut atau yang lebih baru dari
google, bergantung pada tindakan yang ingin Anda lakukan:- Versi 7.39.0 atau yang lebih baru diperlukan untuk tindakan berikut:
- Versi 7.42.0 atau yang lebih baru diperlukan untuk tindakan berikut:
Peran yang diperlukan
Untuk membuat project, Anda memerlukan peran Project Creator
(roles/resourcemanager.projectCreator), yang berisi izin
resourcemanager.projects.create. Pelajari cara memberikan
peran.
Untuk membuat atau mengubah urutan peluncuran, Anda harus memiliki peran IAM Fleet Editor (roles/gkehub.editor) di setiap project host fleet dalam urutan peluncuran dan project host urutan peluncuran Anda. Peran ini memberikan
izin berikut:
gkehub.rolloutsequences.creategkehub.rolloutsequences.getgkehub.rolloutsequences.listgkehub.rolloutsequences.updategkehub.rolloutsequences.deletegkehub.fleet.update
Izin ini memungkinkan Anda membuat, mengakses, dan mengubah objek RolloutSequence, serta menggunakan armada dalam urutan peluncuran.
Jika perlu mendaftarkan atau membatalkan pendaftaran cluster ke fleet, Anda memerlukan semua izin berikut:
- Izin pendaftaran cluster di project host fleet Anda.
- Izin admin cluster untuk cluster GKE apa pun yang akan didaftarkan.
- Izin pendaftaran cluster lintas project untuk cluster GKE apa pun yang akan didaftarkan ke fleet di project berbeda.
Anda dapat membuat urutan peluncuran menggunakan fleet yang dihosting di project dalam satu atau beberapa organisasi, jika Anda memiliki izin yang diperlukan untuk project tersebut.
Untuk mengetahui informasi selengkapnya tentang peran IAM dengan hak istimewa terendah yang diperlukan untuk berbagai tugas, lihat Mendapatkan saran peran bawaan dengan bantuan Gemini.
Mengonfigurasi urutan peluncuran
Untuk membuat urutan peluncuran, cluster harus diatur ke dalam grup fleet. Anda juga dapat membuat tahap terperinci yang dapat menargetkan subset cluster tertentu dalam armada menggunakan label Kubernetes. Untuk mendapatkan panduan tentang cara mengatur cluster, lihat contoh Community bank. Setelah mengatur cluster ke dalam grup dan secara opsional memberi label, Anda membuat urutan peluncuran dengan menentukan daftar berurutan tahap dan waktu perendaman untuk setiap grup.
Mengatur cluster ke dalam fleet
Dalam urutan peluncuran, sebaiknya daftarkan semua cluster di saluran rilis yang sama. Jika cluster tidak terdaftar di saluran yang sama, GKE akan memilih versi dari saluran yang paling konservatif dalam urutan. Misalnya, jika cluster terdaftar di saluran Stabil dan Reguler, GKE akan memilih versi dari saluran Stabil. Sebaiknya semua cluster menjalankan versi minor yang sama agar memenuhi syarat untuk versi target upgrade otomatis yang sama.
Jika cluster telah diatur ke dalam fleet, Anda dapat melewati langkah-langkah berikut dan melanjutkan ke bagian Membuat subset cluster.
- Kelompokkan cluster Anda ke dalam fleet. Anda dapat mengatur cluster berdasarkan lingkungan deployment, seperti Pengujian, Staging, dan Produksi (direkomendasikan).
- Daftarkan setiap cluster ke fleet berdasarkan pengelompokan yang Anda pilih.
Membuat subset cluster (opsional)
Untuk membuat tahap dalam urutan peluncuran menargetkan cluster tertentu, Anda harus memberi label pada cluster tersebut.
Misalnya, untuk menguji versi baru pada sebagian kecil cluster sebelum peluncuran penuh, Anda dapat menerapkan label canary ke cluster tersebut. Untuk menambahkan label
canary dengan nilai true ke cluster menggunakan
Google Cloud CLI, jalankan perintah berikut:
gcloud container clusters update CLUSTER_NAME \
--location=CLUSTER_LOCATION\
--update-labels=canary=true
Ganti kode berikut:
CLUSTER_NAME: nama cluster yang ada.CLUSTER_LOCATION: region atau zona Compute Engine cluster.
Flag --update-labels=canary=true menginstruksikan GKE untuk menerapkan label canary ke cluster .
Untuk mengetahui informasi selengkapnya tentang cara menambahkan label ke cluster, lihat Menambahkan atau memperbarui label untuk cluster yang ada.
Membuat urutan peluncuran dengan tahap kustom
Urutan peluncuran dengan tahap kustom menentukan urutan upgrade dengan
menentukan tahap secara deklaratif. Dengan gcloud CLI, Anda menggunakan
file YAML, dan dengan Terraform, Anda menambahkan blok resource ke konfigurasi.
Saat melakukan langkah-langkah yang dijelaskan di bagian ini, Anda akan membuat
RolloutSequence.
Untuk memastikan bahwa urutan mencakup semua cluster, setiap armada harus menyertakan tahap umum (tahap tanpa pemilih label). Tahap catch-all ini
mencakup semua cluster yang tersisa yang tidak dipilih GKE pada tahap
sebelumnya. Jika Anda menetapkan satu cluster ke beberapa tahap dalam satu
RolloutSequence, untuk menyelesaikan konflik, GKE secara implisit menetapkan
cluster hanya ke tahap paling awal.
Contoh konfigurasi berikut membuat tiga tahap:
- Tahap pertama menargetkan semua cluster di fleet
dev. Setelah upgrade selesai, ada waktu perendaman selama 7 hari (7d). - Tahap kedua menargetkan cluster di fleet
prodyang memiliki labelcanary=true. Setelah upgrade selesai, ada waktu perendaman selama 7 hari (7d). Tahap ketiga menargetkan cluster yang tersisa di fleet
prod. Setelah upgrade selesai, ada waktu perendaman selama 7 hari (7d).
gcloud
Simpan manifes berikut sebagai
rollout-sequence.yaml:- stage: fleet-projects: - projects/dev soak-duration: 7d - stage: fleet-projects: - projects/prod soak-duration: 7d label-selector: resource.labels.canary=='true' - stage: fleet-projects: - projects/prod soak-duration: 7dPerhatikan hal berikut:
stage: mencakup fleet atau subset cluster dalam fleet. Cluster pada tahap sebelumnya harus diupgrade dan diuji sepenuhnya sebelum urutan dilanjutkan ke tahap berikutnya. Namun, jika cluster belum selesai diupgrade 30 hari setelah proses upgrade dimulai, GKE akan memulai periode perendaman.fleet-projects: daftar fleet tempat memilih cluster untuk tahap ini. Maksimal satu armada dapat dirujuk per tahap. Fleet diidentifikasi oleh project tempat fleet dihosting. Project ini dapat berupa project yang berbeda dari project tempat cluster berada, jika fleet berisi keanggotaan lintas project. Format untuk menentukan project kumpulan armada adalahprojects/PROJECT_ID.label-selector(opsional): memilih subset cluster dari fleet yang ditentukan. Kolom ini menggunakan sintaksis Common Expression Language (CEL) dan harus dimulai denganresource.labels.soak-duration: waktu tunggu setelah mengupgrade semua cluster di tahap sebelumnya sebelum melanjutkan ke tahap berikutnya. Dinyatakan dalam detik, menit, jam, dan hari.
Untuk membuat urutan peluncuran yang Anda tentukan dalam manifes
rollout-sequence.yaml, jalankan perintah berikut:gcloud container fleet rolloutsequences create ROLLOUT_SEQUENCE_NAME \ --display-name=DISPLAY_NAME \ --stage-config=rollout-sequence.yamlGanti kode berikut:
ROLLOUT_SEQUENCE_NAME: ID yang tidak dapat diubah dan sesuai dengan spesifikasi RFC-1034, misalnya,test-rollout-sequence.DISPLAY_NAME: string yang dapat dibaca manusia untuk urutan peluncuran Anda.
Terraform
Bagian ini menunjukkan cara membuat urutan peluncuran dengan tahap kustom
menggunakan Terraform. Anda juga dapat menggunakan resource ini untuk memperbarui urutan. Untuk
mengetahui informasi selengkapnya, lihat dokumentasi referensi untuk
google_gke_hub_rollout_sequence.
Tambahkan blok berikut ke konfigurasi Terraform Anda untuk membuat resource urutan peluncuran:
resource "google_gke_hub_rollout_sequence" "rollout_sequence" { rollout_sequence_id = "ROLLOUT_SEQUENCE_NAME" display_name = "DISPLAY_NAME" stages { fleet_projects = ["projects/dev"] soak_duration = "7d" } stages { fleet_projects = ["projects/prod"] cluster_selector { label_selector = "resource.labels.canary=='true'" } soak_duration = "7d" } stages { fleet_projects = ["projects/prod"] soak_duration = "7d" } }Ganti kode berikut:
ROLLOUT_SEQUENCE_NAME: ID yang tidak dapat diubah dan sesuai dengan spesifikasi RFC-1034, misalnya,test-rollout-sequence.DISPLAY_NAME: string yang dapat dibaca manusia untuk urutan peluncuran Anda.
Meluncurkan versi tertentu
Anda dapat meluncurkan versi tertentu ke urutan peluncuran. Untuk mengetahui informasi selengkapnya, lihat Meluncurkan versi tertentu.
Anda dapat meluncurkan versi ke bidang kontrol atau node cluster dalam urutan peluncuran. Anda dapat memilih secara independen versi mana yang akan di-roll out ke bidang kontrol atau node.
GKE hanya dapat meluncurkan satu versi dalam satu waktu di tahap ke bidang kontrol atau node. Jika Anda memiliki peluncuran yang sedang berjalan di tahap pertama urutan peluncuran, GKE akan melakukan hal berikut, bergantung pada apakah Anda mengelola urutan peluncuran dengan gcloud CLI atau Terraform:
- gcloud CLI: saat Anda menjalankan perintah, dialog interaktif akan menanyakan apakah Anda ingin membatalkan peluncuran yang ada untuk membuat peluncuran ke versi yang Anda tentukan. Jika Anda menjawab ya, GKE akan membatalkan peluncuran yang ada dan membuat peluncuran baru. Jika tidak, GKE akan mempertahankan peluncuran yang ada dan tidak membuat peluncuran baru seperti yang Anda minta semula dalam perintah.
- Terraform: saat Anda memperbarui konfigurasi Terraform seperti yang dijelaskan di bagian berikutnya, GKE membatalkan peluncuran yang ada jika peluncuran berjalan di tahap pertama.
Meluncurkan versi ke bidang kontrol dalam urutan peluncuran
gcloud
Jalankan perintah berikut:
gcloud container fleet rolloutsequences upgrade ROLLOUT_SEQUENCE_NAME \
--control-plane-version="CONTROL_PLANE_VERSION"
Ganti kode berikut:
ROLLOUT_SEQUENCE_NAME: nama urutan peluncuran.CONTROL_PLANE_VERSION: versi yang akan di-roll out. Anda dapat memilih versi tertentu, seperti1.34.7-gke.1055000, atau menggunakan alias versi. Untuk mengetahui informasi selengkapnya, lihat Menentukan versi cluster.
Terraform
Jika menggunakan Terraform untuk mengelola urutan peluncuran, Anda dapat meluncurkan versi tertentu dengan menambahkan ke blok yang digunakan untuk membuat urutan peluncuran.
Tambahkan kolom berikut ke blok. Anda dapat menambahkan kolom di mana saja kecuali
di antara blok stages, yang harus berurutan:
min_control_plane_version = "CONTROL_PLANE_VERSION"
Ganti CONTROL_PLANE_VERSION dengan versi yang akan di-roll out. Anda dapat memilih versi tertentu, seperti 1.34.7-gke.1055000,
atau menggunakan alias versi. Untuk mengetahui informasi selengkapnya, lihat Menentukan versi cluster.
Jika Anda telah menggunakan kolom ini untuk meluncurkan versi panel kontrol,
kolom tersebut tetap berada di blok. Ganti versi sebelumnya yang diluncurkan dengan
CONTROL_PLANE_VERSION yang ingin Anda luncurkan kali ini.
Meluncurkan versi ke node dalam urutan peluncuran
gcloud
Jalankan perintah berikut:
gcloud container fleet rolloutsequences upgrade ROLLOUT_SEQUENCE_NAME \
--node-version="NODE_VERSION"
Ganti kode berikut:
ROLLOUT_SEQUENCE_NAME: nama urutan peluncuran.NODE_VERSION: versi yang akan diluncurkan, misalnya,1.34.7-gke.1055000.
Terraform
Jika menggunakan Terraform untuk mengelola urutan peluncuran, Anda dapat meluncurkan versi tertentu dengan menambahkannya ke blok yang Anda gunakan untuk membuat urutan peluncuran.
Tambahkan kolom berikut ke blok. Anda dapat menambahkan kolom di mana saja kecuali
di antara blok stages, yang harus berurutan:
min_node_version = "NODE_VERSION"
Ganti NODE_VERSION dengan versi yang akan di-roll out, misalnya, 1.34.7-gke.1055000. Jika Anda sudah menggunakan kolom ini untuk meluncurkan versi node, kolom tersebut akan tetap berada di blok. Ganti
versi sebelumnya yang diluncurkan dengan
NODE_VERSION yang ingin Anda luncurkan kali ini.
Memeriksa status peluncuran
Setelah Anda mengonfigurasi urutan peluncuran, sistem akan otomatis membuat Rollout
objek untuk mengelola upgrade. Anda dapat mengamati dan melacak progres objek ini menggunakan perintah Google Cloud CLI.
Mencantumkan peluncuran
Untuk mencantumkan semua peluncuran aktif dan historis di project host urutan peluncuran, jalankan perintah berikut:
gcloud container fleet rollouts list --project=HOST_PROJECT_ID
Ganti HOST_PROJECT_ID dengan ID project host urutan peluncuran Anda.
Anda dapat menghilangkan flag --project=HOST_PROJECT_ID jika sudah berada di
project tempat urutan peluncuran dihosting.
Outputnya mirip dengan hal berikut ini:
NAME STATE CREATE_TIME
05eb251e4f19269e23-node-1-33-5-gke-1201000-t7mqd COMPLETED 2025-10-30T20:07:46
05eb251e4f19269e23-kcp-1-33-5-gke-1201000-djwst COMPLETED 2025-10-30T18:07:06
05eb251e4f19269e23-node-1-33-5-gke-1125000-6bxvu COMPLETED 2025-10-23T17:46:54
05eb251e4f19269e23-kcp-1-33-5-gke-1125000-2f6ct RUNNING 2025-10-23T16:41:33
Dalam output sebelumnya, nama peluncuran yang berisi kcp merujuk pada upgrade bidang kontrol, dan nama yang berisi node merujuk pada upgrade node. Segmen
nama peluncuran setelah kcp atau node berasal dari versi
GKE.
Menjelaskan peluncuran
Untuk mendapatkan informasi mendetail tentang peluncuran tertentu, termasuk versi target, status, dan cluster mana yang telah diupgrade, gunakan perintah describe dengan ID peluncuran yang Anda peroleh dari perintah sebelumnya:
gcloud container fleet rollouts describe ROLLOUT_ID \
--project=HOST_PROJECT_ID
Ganti kode berikut:
ROLLOUT_ID: ID peluncuran yang Anda peroleh saat mencantumkan peluncuran.HOST_PROJECT_ID: project ID tempat urutan peluncuran Anda dihosting.
Contoh:
gcloud container fleet rollouts describe 927e9a989930cf3b55-kcp-1-32-4-gke-1106006 \
--project=my-hostfleet
Outputnya mirip dengan hal berikut ini:
createTime: '2025-05-26T11:47:29.909959672Z'
membershipStates:
projects/dev-project-id/locations/us-central1/memberships/c-1:
lastUpdateTime: '2025-05-26T12:20:55.601542481Z'
targets:
- cluster: projects/dev-project-id/locations/us-central1/clusters/c-1
operation: //container.googleapis.com/v1/projects/dev-project-id/locations/us-central1/operations/operation-1234567890-abcdefg-hijklm-nopqrst
state: SUCCEEDED
stageAssignment: 1
projects/dev-project-id/locations/us-central1/memberships/c-2:
lastUpdateTime: '2025-05-26T12:22:57.151203493Z'
targets:
- cluster: projects/dev-project-id/locations/us-central1/clusters/c-2
operation: //container.googleapis.com/v1/projects/dev-project-id/locations/us-central1/operations/operation-987654321-ghijkl-mno-pqr-stu-vwxyz
state: SUCCEEDED
stageAssignment: 1
projects/prod-project-id/locations/us-central1/memberships/c-1:
lastUpdateTime: '2025-05-26T13:03:34.134308942Z'
targets:
- cluster: projects/prod-project-id/locations/us-central1/clusters/c-1
operation: //container.googleapis.com/v1/projects/prod-project-id/locations/us-central1/operations/operation-567891234-efghij-klm-nopq-rstu-vwxyz
state: SUCCEEDED
stageAssignment: 2
projects/prod-project-id/locations/us-central1/memberships/c-2:
lastUpdateTime: '2025-05-26T13:06:34.025261641Z'
targets:
- cluster: projects/prod-project-id/locations/us-central1/clusters/c-1
operation: //container.googleapis.com/v1/projects/prod-project-id/locations/us-central1/operations/operation-765432198-01a7b896-67c2-523-6fjjh4-icmdydh
state: SUCCEEDED
stageAssignment: 2
name: projects/user-hostfleet/locations/global/rollouts/05eb251e4f19269e23-kcp-1-32-4-gke-1106006
rolloutSequence: projects/project-id/locations/global/rolloutSequences/my-sequence
state: COMPLETED
updateTime: '2025-07-22T07:36:51.052691989Z'
versionUpgrade:
desiredVersion: 1.32.4-gke.1106006
type: TYPE_CONTROL_PLANE
stages:
- state: COMPLETED
endTime: '2025-05-26T12:22:28.828506491Z'
stageNumber: 1
startTime: '2025-05-26T11:48:28.772658427Z'
soakDuration: 600s
- state: COMPLETED
endTime: '2025-05-26T13:06:20.026390832Z'
stageNumber: 2
startTime: '2025-05-26T12:32:38.419372153Z'
soakDuration: 600s
Informasi status untuk peluncuran
Saat Anda menjelaskan peluncuran, kolom stages dan membershipStates dari
output memberikan status progres setiap tahap dan cluster dalam tahap tersebut,
masing-masing.
Tabel berikut mencantumkan kemungkinan status tahap:
| Status | Deskripsi |
|---|---|
PENDING |
Upgrade belum dimulai untuk tahap ini. |
RUNNING |
Upgrade sedang berlangsung untuk tahap ini. Jika Anda telah mengonfigurasi masa pemeliharaan untuk cluster di tahap tersebut, GKE akan menunggu hingga masa pemeliharaan dimulai sebelum mengupgrade cluster. |
SOAKING |
Semua cluster dalam tahap ini telah menyelesaikan upgrade, dan tahap ini berada dalam periode berdiam yang dikonfigurasi. |
FORCED_SOAKING |
Upgrade memerlukan waktu lebih lama daripada waktu upgrade maksimum (30 hari), dan oleh karena itu GKE memulai fase berdiam secara paksa. Upgrade masih dilanjutkan di cluster yang tersisa. |
COMPLETED |
Tahap perendaman telah selesai, dan peluncuran dilanjutkan ke tahap berikutnya. |
Tabel berikut mencantumkan kemungkinan status cluster dalam urutan:
| Status | Deskripsi |
|---|---|
PENDING |
Upgrade tertunda di cluster ini. |
INELIGIBLE |
Cluster ini tidak memenuhi syarat untuk upgrade, mungkin karena perbedaan versi. Alasan ketidaklayakan diberikan dalam output. |
RUNNING |
Upgrade sedang berlangsung di cluster ini. |
SUCCEEDED |
Upgrade telah berhasil diselesaikan di cluster ini. |
FAILED |
Upgrade telah gagal di cluster ini. Target yang gagal akan dicoba lagi tanpa batas waktu selama tahapnya aktif (dalam status RUNNING atau FORCED_SOAKING). |
Mengelola peluncuran
Anda dapat mengelola setiap peluncuran menggunakan petunjuk yang diberikan di bagian berikut. Untuk mengetahui informasi selengkapnya tentang cara mengelola peluncuran dan tindakan yang dapat Anda lakukan, lihat Mengelola peluncuran.
Untuk mengelola seluruh urutan peluncuran, dan bukan hanya satu peluncuran tertentu, lihat bagian berikut, Mengelola urutan peluncuran.
Menjeda peluncuran
Anda dapat menjeda peluncuran yang aktif. Untuk mengetahui informasi selengkapnya tentang tindakan ini, lihat Menjeda peluncuran.
Untuk menjeda peluncuran, jalankan perintah berikut:
gcloud container fleet rollouts pause ROLLOUT_ID
Ganti ROLLOUT_ID dengan ID peluncuran yang ingin Anda
jeda. Untuk mendapatkan ID peluncuran untuk peluncuran dalam urutan peluncuran Anda, lihat Mencantumkan peluncuran.
Melanjutkan peluncuran
Anda dapat melanjutkan peluncuran yang dijeda yang telah dijeda selama kurang dari 90 hari. Untuk mengetahui informasi selengkapnya tentang tindakan ini, lihat Melanjutkan peluncuran.
Untuk melanjutkan peluncuran yang dijeda, jalankan perintah berikut:
gcloud container fleet rollouts resume ROLLOUT_ID
Ganti ROLLOUT_ID dengan ID peluncuran yang ingin Anda
lanjutkan. Untuk mendapatkan ID peluncuran untuk peluncuran dalam urutan
peluncuran, lihat Mencantumkan peluncuran.
Membatalkan peluncuran
Anda dapat membatalkan peluncuran, termasuk peluncuran yang aktif atau telah dijeda. Anda tidak dapat membatalkan peluncuran untuk upgrade otomatis wajib. Untuk mengetahui informasi selengkapnya tentang cara membatalkan peluncuran, lihat Membatalkan peluncuran.
Untuk membatalkan peluncuran, jalankan perintah berikut:
gcloud container fleet rollouts cancel ROLLOUT_ID
Ganti ROLLOUT_ID dengan ID peluncuran yang ingin Anda batalkan. Untuk mendapatkan ID peluncuran untuk peluncuran dalam urutan
peluncuran, lihat Mencantumkan peluncuran.
Menyelesaikan tahap peluncuran
Anda dapat menyelesaikan tahap peluncuran jika Anda siap untuk melanjutkan upgrade ke tahap berikutnya. Untuk mengetahui informasi selengkapnya tentang tindakan ini, lihat Menyelesaikan tahap peluncuran.
Untuk menyelesaikan tahap peluncuran, jalankan perintah berikut:
gcloud container fleet rollouts force-complete-stage ROLLOUT_ID \
--stage=STAGE
Ganti kode berikut:
ROLLOUT_ID: ID peluncuran tempat Anda ingin menyelesaikan tahap. Untuk mendapatkan ID peluncuran untuk peluncuran dalam urutan peluncuran, lihat Mencantumkan peluncuran.STAGE: tahap yang ingin Anda selesaikan sekarang. Misalnya, jika Anda ingin menyelesaikan tahap kedua, masukkan2. Tahap harus berjalan atau meresap untuk menggunakan perintah ini.
Mengabaikan cluster dalam urutan peluncuran untuk peluncuran tertentu
Anda dapat membuat GKE mengabaikan cluster dalam urutan peluncuran jika Anda tidak ingin cluster tersebut diupgrade sebagai bagian dari peluncuran aktif. Namun, tindakan ini menghapus cluster dari urutan peluncuran untuk peluncuran aktif dan mendatang, bukan hanya peluncuran aktif.
Untuk melakukan tindakan ini agar cluster tidak diupgrade dalam peluncuran yang aktif, lihat Mengabaikan cluster dalam urutan peluncuran.
Mengelola urutan peluncuran
Anda dapat mengontrol upgrade cluster otomatis dengan urutan peluncuran dalam beberapa cara, seperti yang dijelaskan di bagian berikut.
Jika Anda ingin mengelola satu peluncuran dari urutan peluncuran, bukan seluruh urutan peluncuran dan semua peluncurannya, lihat Mengelola peluncuran.
Mencantumkan urutan peluncuran Anda
Untuk mencantumkan semua urutan peluncuran di project host Anda, jalankan perintah berikut:
gcloud container fleet rolloutsequences list --project=HOST_PROJECT_ID
Ganti HOST_PROJECT_ID dengan ID project host urutan peluncuran Anda.
Mendeskripsikan urutan peluncuran
Untuk melihat detail urutan peluncuran tertentu, jalankan perintah berikut:
gcloud container fleet rolloutsequences describe ROLLOUT_SEQUENCE_NAME \
--project=HOST_PROJECT_ID
Ganti kode berikut:
ROLLOUT_SEQUENCE_NAME: nama urutan peluncuran.HOST_PROJECT_ID: ID project host urutan peluncuran Anda.
Outputnya mirip dengan hal berikut ini:
createTime: '2025-10-23T16:40:16.403871189Z'
displayName: my-display-name
name: projects/HOST_PROJECT_ID/locations/global/rolloutSequences/ROLLOUT_SEQUENCE_NAME
stages:
- clusterSelector:
labelSelector: resource.labels.canary=='true'
fleetProjects:
- projects/FLEET_PROJECT_ID
soakDuration: 600s
- fleetProjects:
- projects/FLEET_PROJECT_ID
soakDuration: 300s
uid: 5c5b2ac8-9d76-45f9-92ca-5e6bd3fbcaef
updateTime: '2025-10-23T17:11:57.285678399Z'
Pilih jenis upgrade yang dilakukan GKE dalam urutan peluncuran
Secara default, GKE melakukan semua jenis upgrade cluster dalam urutan peluncuran. Anda dapat membatasi cakupan upgrade cluster dalam urutan peluncuran untuk melakukan hanya jenis upgrade tertentu. Untuk mengetahui informasi, lihat Memilih jenis upgrade yang dilakukan GKE dalam urutan peluncuran.
Untuk menentukan jenis upgrade yang Anda inginkan agar dilakukan GKE dalam urutan peluncuran, ikuti petunjuk berikut, bergantung pada cara Anda mengelola urutan peluncuran:
gcloud
Jalankan perintah berikut:
gcloud container fleet rolloutsequences update ROLLOUT_SEQUENCE_NAME \
--auto-rollout-scope=TYPES_OF_UPGRADES
Ganti kode berikut:
ROLLOUT_SEQUENCE_NAME: nama urutan peluncuran.TYPES_OF_UPGRADES: daftar upgrade yang akan dilakukan, yang dapat berupa berikut:all: secara default, GKE melakukan semua jenis upgrade cluster dalam urutan peluncuran.none: GKE tidak melakukan upgrade cluster apa pun dalam urutan peluncuran, kecuali untuk peluncuran untuk upgrade otomatis wajib.Satu atau beberapa hal berikut; jika jamak, masukkan nilai dalam daftar yang dipisahkan koma tanpa spasi:
control-plane-patch: GKE melakukan upgrade otomatis bidang kontrol cluster ke versi patch yang lebih baru.control-plane-minor: GKE melakukan upgrade otomatis bidang kontrol cluster ke versi minor yang lebih baru.nodes-patch: GKE melakukan upgrade node cluster otomatis ke versi patch yang lebih baru.nodes-minor: GKE melakukan upgrade node cluster otomatis ke versi minor yang lebih baru.
Misalnya, jika Anda hanya ingin versi patch di-roll out dalam urutan rollout, tentukan konfigurasi
control-plane-patch,nodes-patch.
Terraform
Jika menggunakan Terraform untuk mengelola urutan peluncuran, Anda dapat menetapkan jenis upgrade yang Anda inginkan agar GKE lakukan dalam urutan peluncuran tersebut dengan menambahkan ke blok yang Anda gunakan untuk membuat urutan peluncuran.
Tambahkan kolom berikut ke blok. Anda dapat menambahkan kolom di mana saja kecuali
di antara blok stages, yang harus berurutan:
auto_upgrade_config {
rollout_creation_scope {
upgrade_types = [
UPGRADE_TYPES
]
}
}
Ganti UPGRADE_TYPES dengan daftar upgrade yang akan dilakukan, yang dapat berupa satu atau beberapa hal berikut (masing-masing dalam tanda kutip):
"CONTROL_PLANE_PATCH": GKE melakukan upgrade otomatis bidang kontrol cluster ke versi patch yang lebih baru."CONTROL_PLANE_MINOR": GKE melakukan upgrade otomatis bidang kontrol cluster ke versi minor yang lebih baru."NODE_PATCH": GKE melakukan upgrade node cluster otomatis ke versi patch yang lebih baru."NODE_MINOR": GKE melakukan upgrade node cluster otomatis ke versi minor yang lebih baru.
Misalnya, jika Anda hanya ingin versi patch di-roll out dalam urutan peluncuran, tentukan konfigurasi upgrade_types = ["CONTROL_PLANE_PATCH", "NODE_PATCH"].
Jika Anda menetapkan upgrade_types = [], GKE tidak akan melakukan upgrade cluster apa pun dalam urutan peluncuran, kecuali untuk peluncuran untuk upgrade otomatis wajib.
Untuk kembali ke perilaku default saat GKE melakukan semua jenis upgrade cluster dalam urutan peluncuran, tentukan konfigurasi upgrade_types = ["CONTROL_PLANE_PATCH", "CONTROL_PLANE_MINOR", "NODE_PATCH", "NODE_MINOR"]. Atau, hapus blok auto_upgrade_config dari konfigurasi Terraform Anda.
Mengubah urutan peluncuran
Anda dapat mengubah urutan peluncuran yang ada setelah membuatnya. Ubah urutan peluncuran Anda dengan petunjuk berikut, bergantung pada cara Anda mengelola urutan peluncuran.
gcloud
Jika menggunakan gcloud CLI untuk mengelola urutan peluncuran, Anda dapat mengedit file konfigurasi YAML tempat Anda menentukan urutan. Misalnya, Anda dapat memperbarui waktu berdiam untuk tahap atau memperbarui tahap untuk mengubah urutan upgrade. Setelah Anda mengedit file, terapkan perubahan.
Misalnya, jika Anda menentukan urutan peluncuran asli dalam file bernama
rollout-sequence.yaml, edit file sesuai kebutuhan. Kemudian, jalankan perintah berikut:
gcloud container fleet rolloutsequences update test-rollout-sequence \
--display-name="My Updated Rollout Sequence" \
--stage-config=rollout-sequence.yaml
Terraform
Jika Anda menggunakan Terraform untuk mengelola urutan peluncuran, ubah urutan peluncuran dengan mengubah blok yang Anda gunakan untuk membuat urutan peluncuran.
Mengabaikan cluster dalam urutan peluncuran
Anda dapat meminta GKE mengabaikan cluster dalam urutan peluncuran. Anda dapat mengabaikan satu atau beberapa cluster dalam urutan peluncuran. Untuk mengetahui informasi selengkapnya, lihat Mengabaikan cluster dalam urutan peluncuran.
Agar GKE mengabaikan cluster dalam urutan peluncuran, lakukan langkah-langkah berikut:
- Tambahkan label
ke cluster yang ingin Anda abaikan oleh GKE, atau gunakan
label yang ada. Anda dapat meminta GKE mengabaikan, misalnya, label seperti
status, atau mengabaikan label saat label tersebut memiliki nilai tertentu, sepertistatus=quarantine. Tetapkan urutan peluncuran untuk mengabaikan cluster dengan label ini. Untuk melakukannya, ikuti langkah-langkah berikut, bergantung pada cara Anda mengelola urutan peluncuran:
gcloud
Jalankan perintah berikut:
gcloud container fleet rolloutsequences update ROLLOUT_SEQUENCE_NAME \ --ignored-clusters-selector="resource.labels.LABEL_TO_IGNORE"Ganti kode berikut:
ROLLOUT_SEQUENCE_NAME: nama urutan peluncuran.LABEL_TO_IGNORE: nama label untuk cluster yang harus diabaikan GKE untuk urutan peluncuran.
Terraform
Jika Anda menggunakan Terraform untuk mengelola urutan peluncuran, tambahkan kolom berikut ke blok yang Anda gunakan untuk membuat urutan peluncuran. Anda dapat menambahkan kolom di mana saja kecuali di antara blok
stages, yang harus berurutan:ignored_clusters_selector { label_selector = "resource.labels.LABEL_TO_IGNORE" }Ganti
LABEL_TO_IGNOREdengan nama label untuk cluster yang harus diabaikan GKE untuk urutan peluncuran.
Petunjuk ini mengonfigurasi GKE untuk mengabaikan satu jenis label dalam
urutan peluncuran. Jika Anda ingin mengabaikan beberapa label atau membuat ekspresi yang lebih kompleks tentang cara mengabaikan cluster dengan label tertentu, Anda dapat meneruskan nilai ke kolom ini menggunakan sintaksis ekspresi CEL.
Semua label harus menggunakan awalan resource.labels..
Menambahkan kembali cluster ke urutan peluncuran
Jika Anda mengikuti petunjuk di bagian sebelumnya untuk GKE guna mengabaikan cluster dalam urutan peluncuran, Anda dapat mengurungkan tindakan ini. Jika Anda ingin GKE tidak lagi mengabaikan cluster, hapus pemilih pengabaian dengan petunjuk berikut, bergantung pada cara Anda mengelola urutan peluncuran:
gcloud
Jalankan perintah berikut:
gcloud container fleet rolloutsequences update ROLLOUT_SEQUENCE_NAME \
--clear-ignored-clusters-selector
Ganti ROLLOUT_SEQUENCE_NAME dengan nama
urutan peluncuran.
Perintah ini akan mereset pemilih yang diabaikan sehingga GKE tidak akan mengabaikan cluster apa pun dalam urutan.
Terraform
Jika Anda menggunakan Terraform untuk mengelola urutan peluncuran, hapus blok ignored_clusters_selector
dari blok yang Anda gunakan untuk membuat
urutan peluncuran.
Atau, jika Anda ingin GKE tidak mengabaikan cluster tertentu, hapus label dari cluster.
Menghapus urutan peluncuran
Untuk menghapus urutan peluncuran, jalankan perintah berikut:
gcloud container fleet rolloutsequences delete ROLLOUT_SEQUENCE_NAME \
--project=HOST_PROJECT_ID
Ganti kode berikut:
ROLLOUT_SEQUENCE_NAMEdengan nama urutan peluncuran.HOST_PROJECT_IDdengan ID project host urutan peluncuran Anda.
Jika Anda menghapus urutan peluncuran, semua peluncuran yang sedang berlangsung untuk urutan tersebut akan dibatalkan. Cluster yang merupakan bagian dari urutan akan kembali ke perilaku upgrade otomatis default untuk saluran rilis yang terdaftar.
Memigrasikan urutan peluncuran yang ada untuk menggunakan tahap kustom
Jika Anda menggunakan versi berbasis armada dari pengurutan peluncuran, Anda dapat bermigrasi ke urutan yang menggunakan tahap kustom dengan membuat RolloutSequence baru yang mereferensikan armada yang ada. Perhatikan bahwa versi
pengurutan peluncuran ini tidak memiliki dukungan konsol Cloud de Confiance .
Untuk memigrasikan urutan peluncuran, selesaikan langkah-langkah berikut:
Secara opsional, sebelum Anda memigrasikan urutan, buat salinan konfigurasi urutan peluncuran saat ini. Untuk membuat salinan konfigurasi, lakukan salah satu hal berikut:
- gcloud CLI: jalankan perintah untuk memeriksa status urutan peluncuran berbasis armada. Simpan output perintah.
- Terraform: simpan konfigurasi Terraform.
Sebaiknya jangan hapus urutan peluncuran berbasis armada Anda, untuk mempermudah kembali ke versi urutan peluncuran sebelumnya, jika perlu. Anda tidak perlu menghapus urutan peluncuran berbasis fleet agar urutan peluncuran dengan tahap kustom berfungsi, karena GKE hanya mematuhi urutan peluncuran dengan tahap kustom jika keduanya ada.
Buat project Cloud de Confiance by S3NS khusus untuk menghosting urutan peluncuran Anda. Proyek ini biasanya tidak menjadi bagian dari urutan; artinya, proyek tidak berisi fleet atau cluster yang merupakan bagian dari urutan.
Jika Anda ingin urutan peluncuran menyertakan cluster tertentu dalam fleet, tambahkan label ke cluster tersebut. Langkah ini opsional.
Ikuti petunjuk di Membuat urutan peluncuran dengan tahap kustom.
Misalnya, manifes berikut, yang diberi nama
rollout-sequence-migrate.yaml, mereferensikan fleet yang ada dalam urutan peluncuran sebelumnya. Manifes ini menjelaskan tiga tahap, termasuk tahapcanarydi fleetprod:- stage: fleet-projects: - projects/dev soak-duration: 604800s - stage: fleet-projects: - projects/prod soak-duration: 604800s label-selector: canary=true - stage: fleet-projects: - projects/prod soak-duration: 604800s
Segera setelah Anda menentukan RolloutSequence baru untuk armada, GKE akan mulai mengupgrade armada sesuai urutan baru, dan menghapus konfigurasi sebelumnya.
Memigrasikan urutan peluncuran dengan tahap kustom ke urutan peluncuran sebelumnya
Bagian ini menjelaskan cara mengembalikan urutan peluncuran dengan tahap kustom
ke model urutan peluncuran berbasis fleet. Proses ini melibatkan penghapusan
RolloutSequence baru dan memulihkan konfigurasi berbasis fleet asli Anda.
Mencegah upgrade yang tidak berurutan selama migrasi
Untuk menghindari upgrade yang tidak diinginkan atau tidak berurutan saat Anda mengonfigurasi ulang urutan, terapkan pengecualian pemeliharaan ke cluster produksi. Langkah ini akan menjeda sementara semua upgrade otomatis di cluster tersebut. Misalnya, Anda dapat mengonfigurasi pengecualian pemeliharaan
jenis no upgrades di cluster produksi.
Menghapus urutan peluncuran
Hapus objek RolloutSequence yang mengelola cluster Anda. Penghapusan ini
menonaktifkan fitur tahap kustom.
Untuk menghapus RolloutSequence, jalankan perintah berikut:
gcloud container fleet rolloutsequences delete ROLLOUT_SEQUENCE_NAME
Ganti ROLLOUT_SEQUENCE_NAME dengan nama urutan peluncuran Anda.
Memulihkan konfigurasi urutan peluncuran sebelumnya (tanpa tahap kustom)
Setelah menghapus RolloutSequence, Anda dapat memulihkan konfigurasi berbasis fleet asli. Proses ini melibatkan pembuatan ulang fitur clusterupgrade dengan parameter aslinya, termasuk link upstreamFleet dan waktu perendaman untuk setiap armada dalam urutan Anda. Untuk mengetahui informasi selengkapnya, lihat Membuat urutan peluncuran.
Menghapus pengecualian pemeliharaan
Setelah memulihkan konfigurasi pengurutan peluncuran berbasis armada asli, hapus pengecualian pemeliharaan yang Anda terapkan pada langkah pertama di bagian ini. GKE melanjutkan upgrade otomatis, yang kini diatur oleh urutan berbasis fleet yang dipulihkan.
Langkah Berikutnya
- Pelajari lebih lanjut upgrade cluster dengan urutan peluncuran.