Halaman ini menjelaskan cara mengupdate GKE pada setelan cluster AWS. Anda dapat menggunakan petunjuk ini untuk memperbarui setelan yang dapat diperbarui di cluster, termasuk versi Kubernetes. Karena mengupgrade versi merupakan salah satu operasi update cluster yang paling umum, halaman upgrade cluster Anda yang terpisah akan membahas cara mengupgrade versi cluster.
Alasan mengupdate cluster
Anda dapat mengupdate cluster karena salah satu alasan berikut:
- Untuk memperbarui deskripsi cluster Anda.
- Untuk mengupdate anotasi cluster Anda.
- Untuk memperbarui daftar pengguna administratif cluster Anda.
- Untuk mengupdate konfigurasi logging cluster Anda.
- Untuk merotasi kunci enkripsi Anda.
- Untuk mengupdate grup keamanan bidang kontrol cluster Anda.
Anda juga dapat memperbarui kolom lain dalam cluster Anda yang tidak tercantum di sini.
Untuk daftar lengkap kolom yang dapat Anda perbarui, lihat dokumentasi gcloud container aws clusters update
dan projects.locations.awsClusters.patch
.
Prasyarat
Untuk memperbarui salah satu kolom cluster, Anda harus memiliki izin Pengelolaan Akses dan Identitas
gkemulticloud.googleapis.com/awsClusters.update
.Untuk mengupdate grup keamanan cluster Anda, peran bidang kontrol cluster Anda harus memiliki izin
ec2:ModifyNetworkInterfaceAttribute
. Untuk mengetahui informasi selengkapnya, lihat Membuat peran bidang kontrol.Selain itu, untuk memperbarui tag cluster, peran API cluster Anda harus memiliki izin AWS berikut:
autoscaling:CreateOrUpdateTags
autoscaling:DeleteTags
ec2:CreateTags
ec2:DescribeLaunchTemplates
ec2:DescribeSecurityGroupRules
ec2:DeleteTags
elasticloadbalancing:AddTags
elasticloadbalancing:RemoveTags
Baca artikel Membuat peran IAM AWS untuk mempelajari cara membuat dan menambahkan izin ke peran API cluster Anda.
Proses pembaruan
Proses yang digunakan GKE di AWS untuk mengupdate cluster berbeda-beda bergantung pada jenis update. Untuk beberapa perubahan, GKE di AWS dapat mengupdate cluster tanpa memulai ulang atau membuat ulang resource apa pun—misalnya, memperbarui deskripsi cluster. GKE di AWS akan langsung membuat perubahan ini.
Perubahan lainnya memerlukan pengaktifan ulang node bidang kontrol—misalnya, update versi Kubernetes. Untuk update semacam ini, GKE di AWS akan melakukan "update berkelanjutan" yang terdiri dari langkah-langkah berikut:
- Pilih satu instance bidang kontrol untuk diperbarui. GKE di AWS memperbarui instance yang tidak responsif, jika ada, sebelum instance yang responsif.
- Buat template peluncuran baru untuk instance tersebut.
- Update template peluncuran grup Auto Scaling.
- Menghapus instance. AWS membuat ulang instance dan instance akan melakukan booting dengan konfigurasi baru.
- Lakukan health check pada instance baru.
- Jika health check berhasil, pilih instance lain dan lakukan langkah yang sama pada instance tersebut. Ulangi siklus ini sampai semua instance dimulai ulang atau dibuat ulang. Jika health check gagal, GKE di AWS akan menempatkan cluster pada status
DEGRADED
dan menghentikan update. Untuk mengetahui informasi selengkapnya, lihat bagian berikut. - Hapus template peluncuran asli.
Jika update gagal
Setelah diupdate, GKE di AWS akan melakukan health check pada cluster.
Jika health check gagal, cluster akan ditandai sebagai DEGRADED
. Anda dapat menampilkan status cluster dengan perintah Google Cloud CLI berikut:
gcloud container aws clusters describe CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION
Ganti kode berikut:
CLUSTER_NAME
: nama cluster AndaGOOGLE_CLOUD_LOCATION
: region Google Cloud yang mengelola cluster Anda
Mengupdate cluster
Anda dapat menggunakan konsol Google Cloud, Google Cloud CLI, atau GKE Multi-Cloud API untuk memperbarui beberapa kolom cluster sekaligus.
Memilih metode pembaruan
Anda dapat memperbarui sebagian besar kolom melalui konsol, gcloud CLI, atau GKE Multi-Cloud API. Beberapa {i>field<i} hanya dapat diperbarui melalui satu mekanisme atau mekanisme lainnya. Jika ingin menggunakan konsol untuk mengupdate cluster, Anda harus terlebih dahulu memilih dan mengonfigurasi metode autentikasi untuk login ke cluster. Untuk mengetahui informasi lebih lanjut, baca bagian Menghubungkan dan melakukan autentikasi ke cluster.
Konsol
Di konsol Google Cloud, buka halaman ringkasan cluster Google Kubernetes Engine.
Pilih project Google Cloud tempat cluster berada.
Dalam daftar cluster, pilih nama cluster, lalu pilih View details di panel samping.
Di tab Details, pilih
Edit di kolom yang ingin Anda ubah.Misalnya, untuk memberikan hak istimewa administratif cluster kepada pengguna lain, pilih
Edit di samping Pengguna admin, lalu masukkan alamat email pengguna.Setelah selesai melakukan perubahan, pilih Selesai.
gcloud
Saat mengupdate cluster menggunakan gcloud CLI, Anda harus selalu menyertakan kolom CLUSTER_NAME
dan GOOGLE_CLOUD_LOCATION
, yang memberi tahu GKE di AWS tentang cluster yang akan diupdate. Dalam perintah berikut, hanya sertakan kolom yang ingin diperbarui; hapus kolom lainnya sebelum menjalankan perintah.
gcloud container aws clusters update CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION \
--cluster-version=CLUSTER_VERSION \
--admin-users=USERNAME_LIST \
--root-volume-iops=ROOT_VOLUME_IOPS \
--root-volume-size=ROOT_VOLUME_SIZE \
--root-volume-type=ROOT_VOLUME_TYPE \
--security-group-ids=SECURITY_GROUP_IDS
Ganti kode berikut:
CLUSTER_NAME
: nama cluster AndaGOOGLE_CLOUD_LOCATION
(wajib): region Google Cloud yang didukung yang mengelola cluster Anda—misalnya,us-west1
CLUSTER_VERSION
: versi cluster baru yang didukungUSERNAME_LIST
: daftar nama pengguna yang dipisahkan koma, misalnya, "kai@example.com,hao@example.com,kalani@example.com". Ini adalah alamat email pengguna yang Anda beri hak istimewa administratif di cluster ini. Nama-nama dalam setelan ini akan menggantikan daftar pengguna admin sebelumnya di cluster.ROOT_VOLUME_IOPS
: operasi I/O maksimum volume root per detikROOT_VOLUME_SIZE
: ukuran volume root, dalam GbROOT_VOLUME_TYPE
: jenis volume EBS AWS volume rootSECURITY_GROUP_IDS
: ID grup keamanan AWS yang akan ditambahkan ke instance bidang kontrol clusterSECURITY_GROUP_IDS
: ID grup keamanan AWS yang akan ditambahkan ke instance bidang kontrol cluster
API
Saat mengupdate cluster menggunakan GKE Multi-Cloud API, Anda harus selalu menyertakan kolom CLUSTER_NAME
dan GOOGLE_CLOUD_LOCATION
dalam permintaan HTTP. Kolom ini memberi tahu GKE di AWS cluster mana yang akan diupdate. Anda juga harus
menyertakan endpoint API dalam permintaan. Anda membuat file JSON dengan kolom yang ingin diperbarui. Hanya sertakan kolom yang ingin Anda perbarui di file JSON dan UPDATE_MASK
.
Contoh berikut menunjukkan cara mengupdate cluster melalui API.
Untuk mengetahui informasi selengkapnya, termasuk daftar kolom yang dapat diperbarui, lihat
dokumentasi
metode
projects.locations.awsClusters.patch
.
Buat file JSON bernama
cluster_update.json
dengan kolom yang ingin Anda perbarui.{ "controlPlane": { "version": "CLUSTER_VERSION", }, "description": "CLUSTER_DESCRIPTION", "authorization": { "adminUsers": [ { "username": USERNAME1, "username": USERNAME2, "username": USERNAME3 } ] } }
Ganti kode berikut:
CLUSTER_VERSION
: versi cluster baru yang didukung. Perlu diperhatikan bahwa Anda harus mengupgrade semua versi minor saat mengupgrade clusterCLUSTER_DESCRIPTION
: deskripsi cluster baruUSERNAME1
,USERNAME2
,USERNAME3
: alamat email pengguna yang Anda beri hak istimewa administratif di cluster ini. Nama-nama di kolom ini akan menggantikan daftar pengguna admin sebelumnya di cluster.
Perbarui setelan ini melalui GKE Multi-Cloud API dengan perintah berikut.
curl -d @cluster_update.json -X PATCH \ ENDPOINT/projects/PROJECT_ID/locations/GOOGLE_CLOUD_LOCATION/awsClusters/CLUSTER_NAME?update_mask=UPDATE_MASK
Ganti kode berikut:
ENDPOINT
(wajib): Endpoint layanan Google Cloud AndaPROJECT_ID
(wajib diisi): Project Google Cloud AndaGOOGLE_CLOUD_LOCATION
(wajib): region Google Cloud yang didukung yang mengelola cluster Anda—misalnya,us-west1
CLUSTER_NAME
(wajib diisi): Nama cluster AndaUPDATE_MASK
(wajib): daftar yang dipisahkan koma yang berisi satu atau beberapa tanda berikut, menunjukkan kolom yang ingin diperbarui. Dalam contoh ini, tentukan hal berikut.- controlPlane.version
- deskripsi
- authorization.admin_users
Memperbarui grup keamanan cluster Anda
Untuk mengupdate grup keamanan cluster Anda, peran bidang kontrol cluster Anda harus
memiliki izin ec2:ModifyNetworkInterfaceAttribute
. Untuk mengetahui informasi selengkapnya,
lihat
Membuat peran bidang kontrol.
Anda dapat menggunakan perintah gcloud container aws clusters update
untuk menambahkan
grup keamanan tambahan ke bidang kontrol cluster.
gcloud container aws clusters update CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION \
--security-group-ids=SECURITY_GROUP_IDS
Ganti kode berikut:
CLUSTER_NAME
: nama cluster AndaGOOGLE_CLOUD_LOCATION
: region Google Cloud yang didukung yang mengelola cluster Anda—misalnya,us-west1
SECURITY_GROUP_IDS
: ID grup keamanan AWS yang akan ditambahkan ke instance bidang kontrol cluster
Hapus grup keamanan cluster
Anda dapat menghapus semua grup keamanan non-default dari cluster Anda dengan Google Cloud CLI. Untuk mengupdate cluster, jalankan:
gcloud container aws clusters update CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION \
--clear-security-group-ids
Ganti kode berikut:
CLUSTER_NAME
: nama cluster AndaGOOGLE_CLOUD_LOCATION
: region Google Cloud yang didukung yang mengelola cluster Anda—misalnya,us-west1
Memperbarui informasi volume cluster
Anda dapat memperbarui volume bidang kontrol cluster dengan Google Cloud CLI. Untuk memperbarui kunci KMS volume, lihat Rotasi kunci.
Untuk memperbarui ukuran volume, jenis, atau IOPS, jalankan perintah berikut:
gcloud container aws clusters update CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION \
--root-volume-iops=ROOT_VOLUME_IOPS
--root-volume-size=ROOT_VOLUME_SIZE
--root-volume-type=ROOT_VOLUME_TYPE
Ganti kode berikut:
CLUSTER_NAME
: nama cluster AndaGOOGLE_CLOUD_LOCATION
: region Google Cloud yang didukung yang mengelola cluster Anda—misalnya,us-west1
ROOT_VOLUME_IOPS
: operasi IO volume root per detikROOT_VOLUME_SIZE
: ukuran volume root, dalam GbROOT_VOLUME_TYPE
: jenis volume EBS AWS volume root.
Mengupdate Konfigurasi Logging
Anda dapat memperbarui setelan konfigurasi Cloud Logging cluster dengan Google Cloud CLI. Untuk memperbarui konfigurasi logging, jalankan perintah berikut:
gcloud container aws clusters update CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION \
--logging=LOGGING_CONFIG \
Ganti kode berikut:
CLUSTER_NAME
: nama cluster AndaGOOGLE_CLOUD_LOCATION
: region Google Cloud yang didukung yang mengelola cluster Anda—misalnya,us-west1
LOGGING_CONFIG
: [SYSTEM] atau [SYSTEM,WORKLOAD]
Langkah selanjutnya
- Untuk memperbarui kunci KMS volume, lihat Rotasi kunci
- Untuk mengetahui informasi selengkapnya tentang kolom yang dapat diperbarui, lihat
dokumentasi referensi
gcloud container aws clusters update
. - Lihat dokumentasi REST API
projects.locations.awsClusters.patch
.