Memperbarui parameter cluster Azure Anda

Halaman ini menjelaskan cara mengupdate GKE pada setelan cluster Azure. 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 memperbarui ukuran VM cluster Anda.
  • Untuk mengupdate AzureClient cluster Anda.
  • Untuk mengupdate Authentication cluster Anda dari AzureClient ke workload identity federation.

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 azure clusters update dan projects.locations.azureClusters.patch.

Prasyarat

  • Untuk memperbarui salah satu kolom cluster, Anda harus memiliki izin Pengelolaan Akses dan Identitas gkemulticloud.googleapis.com/azureClusters.update.

Proses pembaruan

Proses yang digunakan GKE di Azure untuk mengupdate cluster berbeda-beda bergantung pada jenis update. Untuk beberapa perubahan, GKE di Azure dapat mengupdate cluster tanpa memulai ulang atau membuat ulang resource apa pun—misalnya, mengupdate deskripsi cluster. GKE di Azure akan langsung membuat perubahan ini.

Perubahan lainnya memerlukan proses mulai ulang node bidang kontrol—misalnya, memperbarui ukuran VM atau versi Kubernetes. Untuk update semacam ini, GKE di Azure melakukan "update berkelanjutan" yang terdiri dari langkah-langkah berikut:

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

Jika update gagal

Setelah diupdate, GKE di Azure 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 azure clusters describe CLUSTER_NAME \
  --location=GOOGLE_CLOUD_LOCATION

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda
  • GOOGLE_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

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

    Buka cluster GKE

  2. Pilih project Google Cloud tempat cluster berada.

  3. Dalam daftar cluster, pilih nama cluster, lalu pilih View details di panel samping.

  4. 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.

  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 tentang cluster yang akan diupdate. Dalam perintah berikut, hanya sertakan kolom yang ingin diperbarui; 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 Google Cloud yang didukung yang mengelola cluster Anda—misalnya, us-west1
  • 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 beri hak istimewa administratif di cluster ini. Nama-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 Authentication 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 kolom CLUSTER_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 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.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 baru yang didukung. Perlu diperhatikan bahwa Anda harus mengupgrade 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-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): Endpoint layanan Google Cloud Anda
  • PROJECT_ID (wajib diisi): Project Google Cloud Anda
  • GOOGLE_CLOUD_LOCATION (wajib): region Google Cloud yang didukung yang mengelola cluster Anda—misalnya, us-west1
  • CLUSTER_NAME (wajib diisi): Nama cluster Anda
  • UPDATE_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
    • control_plane.vm_size
    • azure_client
    • azure_services_authentication.tenant_id
    • azure_services_authentication.application_id

Untuk memperbarui Authentication 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.

Mengupdate Konfigurasi Logging

Anda dapat memperbarui setelan konfigurasi Cloud Logging cluster dengan Google Cloud CLI. Untuk memperbarui 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 Google Cloud yang didukung yang mengelola cluster Anda—misalnya, us-west1
  • LOGGING_CONFIG: [SYSTEM] atau [SYSTEM,WORKLOAD]

Langkah selanjutnya