Mengupgrade inferensi Knative di Google Cloud ke fleet

Gunakan panduan ini untuk memigrasikan penginstalan Knative Serving yang ada di Google Cloud agar menggunakan armada dengan Cloud Service Mesh.

Versi "uji coba gratis" Knative serving sebelumnya, yang juga disebut sebagai "add-on GKE", menyertakan Istio 1.4 versi bawaan dan yang disederhanakan yang tidak lagi didukung mulai Anthos 1.8.

Mengupgrade penginstalan Knative serving untuk menggunakan fleet dan Cloud Service Mesh akan meningkatkan kualitas upgrade produk dan independensi pengelolaan, serta meningkatkan kualitas integrasi di seluruh fitur GKE Enterprise. Pelajari lebih lanjut apa yang baru dan berubah.

Ada dua jalur untuk memigrasikan penginstalan Anda:

  • Proses yang direkomendasikan adalah memigrasikan workload Anda dari cluster tempat versi Knative serving sebelumnya diinstal ("add-on GKE"), ke cluster baru tempat Anda telah menginstal dan mengonfigurasi penginstalan fleet baru Knative serving. Meskipun proses ini relatif mudah dan ideal, jika workload Anda melayani traffic, migrasi ke cluster yang baru dibuat akan menyebabkan waktu nonaktif. Untuk melakukan jalur migrasi ini, di cluster baru, Anda:

    1. Instal inferensi Knative sebagai komponen fleet.
    2. Deploy layanan Anda ke penginstalan baru.

      Misalnya, Anda dapat menggunakan petunjuk untuk men-deploy revisi layanan yang ada untuk mendownload file konfigurasi YAML satu per satu untuk setiap layanan, lalu men-deploy setiap file YAML ke cluster baru di penginstalan fleet layanan Knative:

      1. Pada penginstalan lama, Anda dapat menjalankan perintah berikut untuk mendownload file konfigurasi YAML, seperti service.yaml:

        gcloud run services describe SERVICE --format export > service.yaml

        Ganti SERVICE dengan nama layanan penayangan Knative Anda.

      2. Pada penginstalan komponen armada baru, Anda dapat menjalankan perintah berikut untuk men-deploy service.yaml yang sama:

        gcloud run deploy service.yaml --cluster CLUSTER_NAME --cluster-location CLUSTER_LOCATION --project PROJECT_ID

        Ganti:

        • CLUSTER_NAME dengan nama cluster di penginstalan komponen fleet baru untuk layanan Knative.

        • CLUSTER_LOCATION dengan zona atau region cluster dalam penginstalan komponen fleet baru untuk penayangan Knative.

        • PROJECT_ID dengan ID project Google Cloud Anda tempat penginstalan komponen fleet baru untuk layanan Knative berada.

  • Alternatif: Untuk pengguna yang tidak dapat membuat cluster baru dan harus memigrasikan penayangan Knative yang aktif, Anda dapat mengikuti langkah-langkah dalam panduan ini untuk:

    • Hapus "add-on GKE" dan resource Istio sebelumnya.
    • Menginstal resource armada baru.
    • Migrasikan ke Cloud Service Mesh, lalu migrasikan traffic Anda.
    • Hapus semua resource yang tidak aktif dan tidak digunakan.

Panduan berikut akan memandu Anda melalui proses alternatif untuk mengupgrade penginstalan Knative serving yang ada dan aktif, termasuk semua beban kerja, untuk memenuhi persyaratan GKE Enterprise 1.8 dan yang lebih baru.

Sebelum memulai

  • Proses upgrade ini hanya boleh dilakukan pada cluster Google Kubernetes Engine yang sebelumnya menginstal layanan Knative sebagai "add-on GKE".

    Periksa apakah "add-on GKE" sudah diinstal.

    Untuk memeriksa apakah penginstalan layanan Knative Anda adalah "add-on GKE", jalankan perintah berikut:

    gcloud container clusters describe \
    CLUSTER_NAME \
    --region CLUSTER_LOCATION \
    --project PROJECT_ID --format='get(addonsConfig.cloudRunConfig)'

    Ganti:

    • CLUSTER_NAME dengan nama cluster Anda.
    • CLUSTER_LOCATION dengan lokasi tempat cluster Anda berada.
    • PROJECT_ID dengan ID project Google Cloud Anda.

    Hasil:

    • "Add-on GKE" tidak diinstal:
      • Tidak ada yang ditampilkan ke terminal Anda jika add-on tidak pernah diinstal.
      • disabled=true ditampilkan jika add-on sebelumnya di-uninstal.
    • "Add-on GKE" diinstal: Jika add-on diinstal di cluster Anda, detail konfigurasi untuk add-on akan ditampilkan. Contoh: loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL
    Contoh:
    Contoh berikut menunjukkan bahwa layanan Knative diinstal di cluster my-addon-cluster melalui "add-on GKE", yang dikonfigurasi untuk menangani traffic eksternal:
    gcloud container clusters describe my-addon-cluster \
    --region us-central1-c --project my-gcp-project \
    --format='get(addonsConfig.cloudRunConfig)'

    Respons:

    loadBalancerType=LOAD_BALANCER_TYPE_EXTERNAL

  • Anda harus memiliki izin yang memadai di Google Cloud project untuk memenuhi persyaratan cluster, fleet, dan Cloud Service Mesh:

    • Jika Anda memiliki peran Pemilik untuk project Google Cloud , Anda memiliki lebih dari izin yang diperlukan untuk membuat cluster, menginstal, lalu mengonfigurasi layanan Knative.

    • Perhatikan bahwa persyaratan izin Cloud Service Mesh juga memenuhi semua persyaratan izin untuk menginstal dan mengonfigurasi Knative serving.

    • Menggunakan peran lain dan persyaratan minimum:

      Bergantung pada organisasi Anda, Anda juga dapat memenuhi persyaratan izin melalui kombinasi peran bawaan berikut:

  • Hanya Cloud Service Mesh versi 1.18 yang didukung.

Mengupgrade inferensi Knative dan memigrasikan workload

Untuk membantu mengupgrade penginstalan Knative Serving yang ada dan memigrasikan workload, Anda menjalankan skrip yang mengotomatiskan sebagian besar langkah dan meminta input Anda selama proses berlangsung.

  1. Mempersiapkan upgrade dan menyiapkan lingkungan Anda

  2. Meng-uninstal add-on GKE

  3. Bermigrasi ke Cloud Service Mesh

  4. Instal komponen fleet

  5. Memigrasikan traffic workload ke Cloud Service Mesh

  6. Menyelesaikan upgrade dan melakukan tugas pembersihan