Memperbarui parameter cluster Azure Anda

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

Alasan untuk mengupdate cluster

Anda dapat mengupdate cluster karena salah satu alasan berikut:

  • Untuk memperbarui deskripsi cluster Anda.
  • Untuk memperbarui anotasi cluster Anda.
  • Untuk memperbarui daftar pengguna administratif cluster Anda.
  • Untuk memperbarui konfigurasi logging cluster Anda.
  • Untuk memperbarui ukuran VM cluster Anda.
  • Untuk memperbarui AzureClient cluster Anda.
  • Untuk mengupdate Autentikasi cluster Anda dari AzureClient ke workload identity federation.

Anda juga dapat memperbarui kolom lain di cluster yang tidak tercantum di sini. Untuk daftar lengkap kolom yang dapat Anda perbarui, lihat dokumentasi gcloud container azure clusters update dan projects.locations.azureClusters.patch.

Prasyarat

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

Proses update

Proses GKE di Azure memperbarui cluster berbeda-beda, bergantung pada jenis update. Untuk beberapa perubahan, GKE di Azure dapat memperbarui cluster tanpa memulai ulang atau membuat ulang resource apa pun—misalnya, memperbarui deskripsi cluster. GKE di Azure akan segera menerapkan perubahan ini.

Perubahan lain memerlukan mulai ulang node panel kontrol—misalnya, mengupdate ukuran VM atau versi Kubernetes. Untuk update tersebut, GKE di Azure melakukan "update bertahap" yang terdiri dari langkah-langkah berikut:

  1. Pilih satu instance bidang kontrol yang akan diupdate. GKE di Azure memperbarui instance yang tidak responsif, jika ada, sebelum instance yang responsif.
  2. Menghapus instance. GKE di Azure akan membuat ulang instance dan instance akan di-boot dengan konfigurasi baru.
  3. Lakukan health check pada instance baru.
  4. Jika health check berhasil, pilih instance lain dan lakukan langkah-langkah yang sama di instance tersebut. Ulangi siklus ini hingga semua instance dimulai ulang atau dibuat ulang. Jika health check gagal, GKE di Azure akan menempatkan cluster ke status DEGRADED dan menghentikan update. Untuk informasi selengkapnya, lihat bagian berikut.

Jika update gagal

Setelah update, GKE di Azure akan melakukan pemeriksaan kondisi cluster. Jika health check gagal, cluster akan ditandai sebagai DEGRADED. Anda dapat menampilkan status cluster dengan perintah Google Cloud CLI berikut:

gcloud container azure clusters describe CLUSTER_NAME \
  --location=GOOGLE_CLOUD_LOCATION

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda
  • GOOGLE_CLOUD_LOCATION: Google Cloud region yang mengelola cluster Anda

Memperbarui cluster

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

Memilih metode update

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

Konsol

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

    Buka cluster GKE

  2. Pilih project Google Cloud tempat cluster berada.

  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, lalu masukkan alamat email pengguna.

  5. 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 Azure cluster mana yang akan diupdate. Pada perintah berikut, hanya sertakan kolom yang ingin Anda perbarui; hapus kolom lainnya sebelum menjalankan perintah.

gcloud container azure clusters update CLUSTER_NAME \
    --location=GOOGLE_CLOUD_LOCATION \
    --cluster-version=CLUSTER_VERSION \
    --admin-users=USERNAME_LIST \
    --client=CLIENT_NAME \
    --vm-size=VM_SIZE 

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda
  • GOOGLE_CLOUD_LOCATION (wajib): region yang Google Cloud didukung yang mengelola cluster Anda—misalnya, us-west1
  • CLUSTER_VERSION: versi cluster yang didukung baru
  • 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 beri hak istimewa administratif di cluster ini. Nama dalam setelan ini akan menggantikan daftar pengguna admin sebelumnya di cluster.
  • CLIENT_NAME: AzureClient Anda
  • VM_SIZE: ukuran VM baru yang didukung

Untuk memperbarui Autentikasi cluster dari AzureClient ke workload identity federation, jalankan perintah berikut:

gcloud container azure clusters update CLUSTER_NAME \
    --location=GOOGLE_CLOUD_LOCATION \
    --azure-tenant-id="${TENANT_ID}" \
    --azure-application-id="${APPLICATION_ID}" \
    --clear-client

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 Azure cluster mana yang akan diupdate. Anda juga harus menyertakan endpoint API dalam permintaan. Anda membuat file JSON dengan kolom yang ingin Anda perbarui. Hanya sertakan kolom yang ingin Anda perbarui dalam file JSON dan di UPDATE_MASK.

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

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

    • Saat menggunakan workload identity federation, file JSON akan terlihat seperti ini:
      {
        "description": "CLUSTER_DESCRIPTION",
        "controlPlane": {
          "version": "CLUSTER_VERSION",
          "vm_size": "VM_SIZE
        },
        "azureServicesAuthentication": {
          "tenantId": "TENANT_ID",
          "applicationId": "APPLICATION_ID"
        },
        "authorization": {
            "adminUsers": [
                {
                "username": USERNAME1,
                "username": USERNAME2,
                "username": USERNAME3
                }
            ]
        }
      }
      
    • Saat menggunakan klien Azure, file JSON akan terlihat seperti ini:
      {
        "description": "CLUSTER_DESCRIPTION",
        "controlPlane": {
          "version": "CLUSTER_VERSION",
          "vm_size": "VM_SIZE
        },
        "azureClient": "CLIENT_NAME",
        "authorization": {
            "adminUsers": [
                {
                "username": USERNAME1,
                "username": USERNAME2,
                "username": USERNAME3
                }
            ]
        }
      }
      

    Ganti kode berikut:

    • CLUSTER_VERSION: versi cluster yang didukung baru. Perhatikan bahwa Anda harus melakukan upgrade melalui semua versi minor saat mengupgrade cluster
    • CLUSTER_DESCRIPTION: deskripsi cluster baru
    • USERNAME1,USERNAME2,USERNAME3: alamat email pengguna yang Anda beri hak istimewa administratif di cluster ini. Nama di kolom ini akan menggantikan daftar pengguna admin sebelumnya di cluster.
    • CLIENT_NAME: nama AzureClient Anda
    • TENANT_ID: ID tenant Azure
    • APPLICATION_ID: ID aplikasi Azure yang dibuat di Membuat Aplikasi Azure Active Directory
    • VM_SIZE: ukuran VM baru
  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/azureClusters/CLUSTER_NAME?update_mask=UPDATE_MASK
    

Ganti kode berikut:

  • ENDPOINT (wajib): Google Cloud Endpoint layanan Anda
  • PROJECT_ID (wajib): Project Google Cloud Anda
  • GOOGLE_CLOUD_LOCATION (wajib): region yang didukung dan mengelola cluster Anda—misalnya, us-west1 Google Cloud
  • CLUSTER_NAME (wajib diisi): Nama cluster Anda
  • UPDATE_MASK (wajib): daftar yang dipisahkan koma dari satu atau beberapa flag berikut, yang menunjukkan kolom mana yang ingin Anda perbarui. Dalam contoh ini, tentukan hal berikut.
    • controlPlane.version
    • deskripsi
    • authorization.admin_users
    • control_plane.vm_size
    • azure_client
    • azure_services_authentication.tenant_id
    • azure_services_authentication.application_id

Untuk memperbarui Autentikasi cluster dari AzureClient ke workload identity federation, tambahkan azure_client, azure_services_authentication.tenant_id, dan azure_services_authentication.application_id di kolom update_mask.

Memperbarui Konfigurasi Logging

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

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

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda
  • GOOGLE_CLOUD_LOCATION: region yang didukung Google Cloud yang mengelola cluster Anda—misalnya, us-west1
  • LOGGING_CONFIG: [SYSTEM] atau [SYSTEM,WORKLOAD]

Langkah berikutnya