Memigrasikan cluster AKS

Versi pendahulunya dari cluster terpasang GKE dikenal sebagai cluster terpasang GKE (generasi sebelumnya). Dengan bermigrasi dari versi cluster terlampir GKE sebelumnya ke generasi saat ini, Anda akan mendapatkan akses ke fungsi ini, termasuk pengelolaan siklus proses dan pendaftaran Fleet. Migrasi adalah operasi satu arah: setelah Anda bermigrasi ke generasi saat ini dari cluster terlampir GKE, tidak ada cara untuk kembali ke cluster terlampir GKE (generasi sebelumnya).

Kebijakan penomoran versi

Dokumen ini menyebut versi cluster terlampir GKE sebagai versi platform, untuk membedakannya dengan versi Kubernetes. Cluster terlampir GKE menggunakan konvensi penomoran versi yang sama dengan GKE - misalnya, 1.21.5-gke.1. Saat melampirkan atau mengupdate cluster, Anda harus memilih versi platform yang versi minornya sama dengan atau satu tingkat di bawah versi Kubernetes cluster Anda. Misalnya, Anda dapat melampirkan cluster yang menjalankan Kubernetes v1.22.* dengan versi platform cluster terlampir GKE 1.21.* atau 1.22.*.

Dengan begitu, Anda dapat mengupgrade cluster ke versi minor berikutnya sebelum mengupgrade cluster terlampir GKE.

Pastikan Workload Identity diaktifkan

Cluster yang ada dari cluster terpasang GKE (generasi sebelumnya) harus mengaktifkan Workload Identity sebelum dimigrasikan ke cluster terpasang GKE generasi saat ini.

Untuk menentukan apakah WI diaktifkan, jalankan perintah berikut dan periksa output untuk mengetahui apakah ada kolom Workload Identity:

gcloud container hub memberships describe MEMBERSHIP_NAME

Jika Workload Identity tidak diaktifkan, keanggotaan harus diperbarui untuk mengaktifkannya.

Perintah untuk memperbarui keanggotaan cluster Anda sedikit berbeda, bergantung pada apakah Anda telah mengonfigurasi cluster dengan penerbit OIDC pribadi default atau penerbit publik eksperimental. Pilih tab yang berlaku untuk cluster Anda:

Penerbit OIDC pribadi (default)

gcloud container hub memberships register MEMBERSHIP_NAME \
--context=KUBECONFIG_CONTEXT \
--kubeconfig=KUBECONFIG_PATH \
--enable-workload-identity \
--has-private-issuer

Ganti:

  • MEMBERSHIP_NAME: nama keanggotaan cluster Anda
  • KUBECONFIG_CONTEXT: konteks di kubeconfig untuk mengakses cluster AKS
  • KUBECONFIG_PATH: jalur ke file kubeconfig Anda

Penerbit OIDC publik

  • Ambil URL penerbit OIDC cluster Anda dengan perintah berikut:
  az aks show -n CLUSTER_NAME \
    -g RESOURCE_GROUP \
    --query "oidcIssuerProfile.issuerUrl" -otsv

Output perintah ini adalah URL penerbit OIDC Anda. Simpan nilai ini untuk digunakan nanti.

  • Perbarui langganan:
gcloud container fleet memberships register MEMBERSHIP_NAME \
--context=KUBECONFIG_CONTEXT \
--kubeconfig=KUBECONFIG_PATH \
--enable-workload-identity \
--public-issuer-url=OIDC_URL

Ganti:

  • MEMBERSHIP_NAME: nama keanggotaan cluster Anda
  • KUBECONFIG_CONTEXT: konteks di kubeconfig untuk mengakses cluster AKS
  • KUBECONFIG_PATH: jalur ke kubeconfig Anda
  • OIDC_URL: URL OIDC yang diambil sebelumnya

Memigrasikan cluster Anda

Untuk memigrasikan cluster Anda dari cluster terpasang GKE (generasi sebelumnya) ke cluster terpasang GKE:

  1. Ekstrak konteks kubeconfig cluster Anda dan simpan di variabel lingkungan KUBECONFIG_CONTEXT:

    KUBECONFIG_CONTEXT=$(kubectl config current-context)
    
  2. Jalankan perintah berikut untuk memigrasikan cluster Anda ke generasi saat ini dari cluster terlampir GKE. Perintah ini mengekstrak detail yang relevan dari konfigurasi cluster Anda dan mendaftarkan cluster Anda ke Google Fleet Management, serta menginstal atau mengupgrade software yang diperlukan, seperti agen siklus proses, di cluster Anda.

    gcloud container attached clusters import \
      --location=GOOGLE_CLOUD_REGION \
      --fleet-membership=FLEET_MEMBERSHIP \
      --platform-version=PLATFORM_VERSION \
      --distribution=CLUSTER_DISTRIBUTION \
      --context=KUBECONFIG_CONTEXT \
      [--kubeconfig=KUBECONFIG_PATH]
    

    Ganti:

    • GOOGLE_CLOUD_REGION: Google Cloud lokasi tempat cluster Anda dikelola
    • FLEET_MEMBERSHIP: penentu keanggotaan yang sepenuhnya memenuhi syarat dari cluster terdaftar Anda (lihat di bawah)
    • PLATFORM_VERSION: versi cluster terlampir GKE yang ingin Anda migrasikan (contoh: v1.22.0-gke.1)
    • CLUSTER_DISTRIBUTION: jenis cluster - eks untuk Elastic Kubernetes Service AWS, aks untuk Azure Kubernetes Service, atau generic untuk distribusi lainnya
    • KUBECONFIG_CONTEXT: nama konteks di kubeconfig untuk terhubung ke cluster Anda
    • KUBECONFIG_PATH: lokasi file kubeconfig Anda. Jika tidak ditentukan, defaultnya adalah ~/.kube/config

    Penentu keanggotaan adalah string yang secara unik mengidentifikasi cluster terlampir Anda dan memiliki bentuk projects/PROJECT_NUMBER/locations/global/memberships/MEMBERSHIP_ID, dengan

    • PROJECT_NUMBER adalah nomor project host Fleet Anda. Anda harus menentukan nomor project yang sama dengan nomor project tempat cluster Anda saat ini berada

    • MEMBERSHIP_ID: ini harus berupa ID keanggotaan fleet dari cluster yang ada. Cluster terlampir GKE akan menggunakan nilai ini sebagai nama cluster Anda.

Dukungan Identitas Workload Azure

Azure menawarkan dukungan WI dalam pratinjau publik. Mengaktifkan fitur ini akan mengubah URL penerbit OIDC cluster Anda. Jika Anda telah mendaftarkan cluster dengan URL OIDC sebelumnya, Anda tidak dapat memperbarui ke URL baru karena kolom tersebut saat ini tidak dapat diperbarui.

Untuk mengatasi hal ini:

  1. Buat ulang cluster Anda dengan Workload Identity diaktifkan.
  2. Lampirkan cluster AKS Anda.
  3. Migrasikan workload Anda ke cluster baru.
  4. Hapus cluster lama.