Memperbarui parameter cluster AWS

Halaman ini menjelaskan cara memperbarui setelan cluster GKE di AWS. Anda dapat menggunakan petunjuk ini untuk memperbarui setelan apa pun yang dapat diperbarui di cluster Anda, termasuk versi Kubernetes. Karena mengupgrade versi adalah salah satu operasi update cluster yang paling umum, halaman terpisah mengupgrade cluster Anda membahas cara mengupgrade versi cluster.

Alasan untuk mengupdate cluster

Anda dapat mengupdate cluster karena salah satu alasan berikut:

  • Untuk mengupdate deskripsi cluster Anda.
  • Untuk mengupdate anotasi cluster Anda.
  • Untuk mengupdate daftar pengguna administratif cluster Anda.
  • Untuk mengupdate konfigurasi logging cluster Anda.
  • Untuk merotasi kunci enkripsi Anda.
  • Untuk mengupdate grup keamanan panel kontrol cluster Anda.

Anda juga dapat mengupdate kolom lain di cluster Anda yang tidak tercantum di sini. Untuk daftar lengkap kolom yang dapat Anda update, lihat gcloud container aws clusters update dan projects.locations.awsClusters.patch dokumentasi.

Prasyarat

  • Untuk mengupdate kolom cluster Anda, Anda harus memiliki izin Identity and Access Management gkemulticloud.googleapis.com/awsClusters.update.

  • Untuk mengupdate grup keamanan cluster Anda, peran panel kontrol cluster Anda harus memiliki izin ec2:ModifyNetworkInterfaceAttribute. Untuk mengetahui informasi selengkapnya, lihat Membuat peran panel kontrol.

  • Selain itu, untuk mengupdate tag cluster Anda, 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 Membuat peran IAM AWS untuk mempelajari cara membuat dan menambahkan izin ke peran API cluster Anda.

Proses update

Proses GKE di AWS 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, mengupdate deskripsi cluster. GKE di AWS segera melakukan perubahan ini.

Perubahan lainnya memerlukan memulai ulang node panel kontrol—misalnya, mengupdate versi Kubernetes. Untuk update tersebut, GKE di AWS melakukan "rolling update" yang terdiri dari langkah-langkah berikut:

  1. Pilih satu instance panel kontrol untuk diupdate. GKE di AWS mengupdate instance yang tidak responsif, jika ada, sebelum instance yang responsif.
  2. Buat template peluncuran baru untuk instance.
  3. Perbarui template peluncuran grup Auto Scaling.
  4. Hapus instance. AWS membuat ulang instance dan instance melakukan booting dengan konfigurasi baru.
  5. Lakukan health check pada instance baru.
  6. Jika health check berhasil, pilih instance lain dan lakukan langkah yang sama Ulangi siklus ini hingga semua instance dimulai ulang atau dibuat ulang. Jika health check gagal, GKE di AWS menempatkan cluster ke status DEGRADED dan menghentikan update. Untuk mengetahui informasi selengkapnya, lihat bagian berikut.
  7. Hapus template peluncuran asli.

Jika update gagal

Setelah update, GKE di AWS 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 Anda
  • GOOGLE_CLOUD_LOCATION: region yang Google Cloud mengelola cluster Anda

Mengupdate cluster

Anda dapat menggunakan Google Cloud konsol, Google Cloud CLI, atau GKE Multi-Cloud API untuk mengupdate beberapa kolom cluster sekaligus.

Memilih metode update

Anda dapat mengupdate sebagian besar kolom melalui konsol, gcloud CLI, atau GKE Multi-Cloud API. Beberapa kolom hanya dapat diupdate melalui satu mekanisme atau yang lain. Jika ingin menggunakan konsol untuk mengupdate cluster, Anda harus memilih dan mengonfigurasi metode autentikasi untuk login ke cluster terlebih dahulu. Untuk mengetahui informasi selengkapnya, lihat Menghubungkan dan melakukan autentikasi ke cluster Anda.

Konsol

  1. Di Google Cloud konsol, buka halaman Ringkasan cluster Google Kubernetes Engine.

    Buka cluster GKE

  2. Pilih project tempat cluster berada. Google Cloud

  3. Di daftar cluster, pilih nama cluster, lalu pilih Lihat detail di panel samping.

  4. Di tab Detail, pilih Edit di kolom yang ingin Anda ubah.

    Misalnya, untuk memberikan hak istimewa administratif cluster kepada pengguna lain pilih Edit di samping Pengguna admin dan masukkan alamat email pengguna.

  5. Setelah selesai melakukan perubahan, pilih Selesai.

gcloud

Saat mengupdate cluster menggunakan gcloud CLI, Anda harus selalu menyertakan kolomCLUSTER_NAME dan GOOGLE_CLOUD_LOCATION, yang memberi tahu GKE di AWS cluster mana yang akan diupdate. Dalam perintah berikut, hanya sertakan kolom yang ingin Anda update; 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 Anda
  • GOOGLE_CLOUD_LOCATION (wajib): region yang didukung yang mengelola cluster Anda—misalnya, us-west1 Google Cloud
  • CLUSTER_VERSION: versi cluster baru yang didukung
  • USERNAME_LIST: daftar nama pengguna yang dipisahkan koma, misalnya, "kai@example.com,hao@example.com,kalani@example.com". Ini adalah alamat email pengguna yang Anda berikan hak istimewa administratif di cluster ini. Nama dalam setelan ini akan menggantikan daftar pengguna admin sebelumnya di cluster.
  • ROOT_VOLUME_IOPS: operasi I/O maksimum volume root per detik
  • ROOT_VOLUME_SIZE: ukuran volume root, dalam Gb
  • ROOT_VOLUME_TYPE: jenis volume AWS EBS volume root
  • SECURITY_GROUP_IDS: ID grup keamanan AWS yang akan ditambahkan ke instance panel kontrol cluster
  • SECURITY_GROUP_IDS: ID grup keamanan AWS yang akan ditambahkan ke instance panel kontrol cluster

API

Saat mengupdate cluster menggunakan GKE Multi-Cloud API, Anda harus selalu menyertakan kolomCLUSTER_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 diupdate. Hanya sertakan kolom yang ingin Anda update dalam file JSON dan di UPDATE_MASK.

Contoh berikut menunjukkan cara mengupdate cluster Anda melalui API. Untuk mengetahui informasi selengkapnya, termasuk daftar kolom yang dapat Anda update, lihat dokumentasi projects.locations.awsClusters.patch metode.

  1. Buat file JSON bernama cluster_update.json dengan kolom yang ingin Anda update.

    {
        "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. Perhatikan bahwa Anda harus mengupgrade melalui semua versi minor saat mengupgrade cluster
    • CLUSTER_DESCRIPTION: deskripsi cluster baru
    • USERNAME1,USERNAME2,USERNAME3: alamat email pengguna yang Anda berikan hak istimewa administratif di cluster ini. Nama dalam kolom ini akan menggantikan daftar pengguna admin sebelumnya di cluster.
  2. 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:

Mengupdate grup keamanan cluster Anda

Untuk mengupdate grup keamanan cluster Anda, peran panel kontrol cluster Anda harus memiliki izin ec2:ModifyNetworkInterfaceAttribute. Untuk mengetahui informasi selengkapnya, lihat Membuat peran panel kontrol.

Anda dapat menggunakan perintah gcloud container aws clusters update untuk menambahkan grup keamanan tambahan ke panel kontrol cluster Anda.

gcloud container aws clusters update CLUSTER_NAME \
    --location=GOOGLE_CLOUD_LOCATION \
    --security-group-ids=SECURITY_GROUP_IDS

Ganti kode berikut:

Menghapus 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:

Mengupdate informasi volume cluster

Anda dapat mengupdate volume panel kontrol cluster Anda dengan Google Cloud CLI. Untuk mengupdate kunci KMS volume, lihat Rotasi kunci.

Untuk mengupdate ukuran, jenis, atau IOPS volume, 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:

Mengupdate Konfigurasi Logging

Anda dapat mengupdate setelan konfigurasi Cloud Logging cluster Anda dengan Google Cloud CLI. Untuk mengupdate konfigurasi logging, jalankan perintah berikut:

gcloud container aws clusters update CLUSTER_NAME \
    --location=GOOGLE_CLOUD_LOCATION \
    --logging=LOGGING_CONFIG \

Ganti kode berikut:

Langkah berikutnya