Memelihara cluster Kubernetes

Dengan air gap Google Distributed Cloud (GDC), Anda dapat mengelola cluster Kubernetes setelah dibuat menggunakan GKE di GDC. Layanan ini memungkinkan Anda beradaptasi dengan persyaratan beban kerja container yang terus berubah dan mempertahankan node cluster yang ada dengan alur kerja berikut:

Dokumen ini ditujukan bagi administrator IT dalam grup administrator platform yang mengelola beban kerja penampung yang dihosting di cluster yang mencakup beberapa project, dan developer dalam grup operator aplikasi yang bertanggung jawab untuk membuat beban kerja aplikasi dalam satu project. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Audiens untuk GDC yang terisolasi dari internet.

Sebelum memulai

Untuk menyelesaikan tugas dalam dokumen ini, Anda harus memiliki resource dan peran berikut:

  • Untuk melihat dan mengelola kumpulan node di cluster Kubernetes bersama, minta Admin IAM Organisasi Anda untuk memberi Anda peran berikut:

    • User Cluster Admin (user-cluster-admin)
    • User Cluster Node Viewer (user-cluster-node-viewer)

    Peran ini tidak terikat ke namespace project.

  • Untuk melihat dan mengelola kumpulan node di cluster Kubernetes standar, minta Admin IAM Organisasi Anda untuk memberi Anda peran Admin Cluster Standar (standard-cluster-admin). Peran ini terikat ke namespace project Anda.

  • Untuk menjalankan perintah terhadap cluster Kubernetes, pastikan Anda memiliki resource berikut:

    • Temukan nama cluster Kubernetes, atau tanyakan nama cluster kepada anggota grup administrator platform.

    • Login dan buat file kubeconfig untuk cluster Kubernetes jika Anda belum memilikinya.

    • Gunakan jalur kubeconfig cluster Kubernetes untuk mengganti KUBERNETES_CLUSTER_KUBECONFIG dalam petunjuk ini.

Memindahkan cluster dalam hierarki project

Project menyediakan pengelompokan logis instance layanan. Anda dapat menambahkan dan menghapus cluster Kubernetes bersama dari hierarki project GDC untuk mengelompokkan layanan Anda dengan tepat. Anda tidak dapat memindahkan cluster standar dalam hierarki project karena cluster tersebut hanya dicakup ke satu project.

Menambahkan project ke cluster bersama

Saat membuat cluster bersama dari konsol GDC, Anda harus melampirkan setidaknya satu project sebelum dapat berhasil men-deploy workload container ke cluster tersebut. Jika Anda harus menambahkan project tambahan ke cluster yang ada, selesaikan langkah-langkah berikut:

  1. Di menu navigasi, pilih Kubernetes Engine > Clusters.
  2. Klik cluster dari daftar cluster untuk membuka halaman Cluster details.
  3. Pilih Lampirkan Project.
  4. Pilih project yang tersedia untuk ditambahkan dari daftar project. Klik Simpan.

Melepaskan project dari cluster bersama

Untuk melepaskan project dari cluster bersama yang ada, selesaikan langkah-langkah berikut:

  1. Di menu navigasi, pilih Kubernetes Engine > Clusters.
  2. Klik cluster dari daftar cluster untuk membuka halaman Cluster details.
  3. Klik Lepaskan untuk melepaskan project dari cluster.

Melihat semua cluster dalam organisasi

Anda dapat melihat semua cluster Kubernetes yang tersedia dalam organisasi, termasuk status, versi Kubernetes, dan detail lainnya.

Karena cluster Kubernetes adalah resource per zona, Anda hanya dapat mencantumkan cluster per zona.

Konsol

  • Di menu navigasi, pilih Kubernetes Engine > Clusters.

    Semua cluster bersama yang tersedia di organisasi dengan status dan informasi lainnya ditampilkan:

    Halaman detail cluster untuk status dan informasi lainnya untuk setiap cluster bersama dalam organisasi.

gdcloud

  • Mencantumkan cluster bersama yang tersedia di zona dalam organisasi:

    gdcloud clusters list
    

    Outputnya mirip dengan hal berikut ini:

    CLUSTERREF.NAME   READINESS.STATE   TYPE   CURRENTVERSION.USERCLUSTERVERSION     CURRENTVERSION.SUPPORT.STATUS
    user-vm-1         Ready             user   1.15.0-gdch.394225-1.28.15-gke.1200   In Support
    user-vm-2         Ready             user   1.15.0-gdch.394225-1.29.12-gke.800    In Support
    

API

  • Mencantumkan cluster Kubernetes yang tersedia di zona dalam organisasi:

    kubectl get clusters.cluster.gdc.goog -n KUBERNETES_CLUSTER_NAMESPACE \
        --kubeconfig MANAGEMENT_API_SERVER
    

    Ganti kode berikut:

    • MANAGEMENT_API_SERVER: jalur kubeconfig server API zonal. Jika Anda belum membuat file kubeconfig untuk server API di zona target, lihat Login untuk mengetahui detailnya.
    • KUBERNETES_CLUSTER_NAMESPACE: namespace cluster. Untuk cluster bersama, gunakan namespace platform. Untuk cluster standar, gunakan namespace project cluster.

    Outputnya mirip dengan hal berikut ini:

    NAME        STATE     K8S VERSION
    user-vm-1   Running   1.25.10-gke.2100
    user-test   Running   1.26.5-gke.2100
    

Mencantumkan versi Kubernetes yang tersedia untuk cluster

Anda dapat mencantumkan versi Kubernetes yang tersedia di zona GDC untuk memverifikasi fitur Kubernetes yang dapat Anda akses di cluster.

  • Mencantumkan versi Kubernetes yang tersedia di zona Anda:

    kubectl get userclustermetadata.upgrade.private.gdc.goog \
        -o=custom-columns=K8S-VERSION:.spec.kubernetesVersion \
        --kubeconfig MANAGEMENT_API_SERVER
    

    Ganti MANAGEMENT_API_SERVER dengan file kubeconfig server API zonal cluster Anda.

    Outputnya akan terlihat mirip seperti berikut:

    K8S-VERSION
    1.25.10-gke.2100
    1.26.5-gke.2100
    1.27.4-gke.500
    

Melihat properti yang dapat diupdate

Untuk setiap cluster Kubernetes, serangkaian properti tersedia untuk diubah setelah cluster dibuat. Anda hanya dapat mengubah properti yang dapat diubah yang ada di spec dari resource kustom Cluster. Tidak semua properti di spec memenuhi syarat untuk diperbarui setelah cluster disediakan. Untuk melihat properti yang dapat diupdate ini, selesaikan langkah-langkah berikut:

Konsol

  1. Di menu navigasi, pilih Kubernetes Engine > Clusters.

  2. Dalam daftar cluster Kubernetes, klik nama cluster untuk melihat propertinya.

  3. Properti yang dapat diedit memiliki ikon Edit.

kubectl

  • Lihat daftar properti untuk spesifikasi Cluster dan nilai valid yang sesuai dengan setiap properti:

    kubectl explain clusters.cluster.gdc.goog.spec \
        --kubeconfig MANAGEMENT_API_SERVER
    

    Ganti MANAGEMENT_API_SERVER dengan jalur kubeconfig server API zonal. Jika Anda belum membuat file kubeconfig untuk server API di zona target, lihat Login untuk mengetahui detailnya.

    Outputnya mirip dengan hal berikut ini:

    KIND:     Cluster
    VERSION:  cluster.gdc.goog/v1
    
    RESOURCE: spec <Object>
    
    DESCRIPTION:
        <empty>
    
    FIELDS:
      clusterNetwork    <Object>
        The cluster network configuration. If unset, the default configurations
        with pod and service CIDR sizes are used. Optional. Mutable.
    
      initialVersion    <Object>
        The GDC air-gapped version information of the user cluster during cluster creation.
        Optional. Default to use the latest applicable version. Immutable.
    
      loadBalancer  <Object>
        The load balancer configuration. If unset, the default configuration with
        the ingress service IP address size is used. Optional. Mutable.
    
      nodePools <[]Object>
        The list of node pools for the cluster worker nodes. Optional. Mutable.
    
      releaseChannel    <Object>
        The release channel a cluster is subscribed to. When a cluster is
        subscribed to a release channel, GDC maintains the cluster versions for
        users. Optional. Mutable.
    

    Perbarui setelan ini menggunakan konsol GDC atau kubectl CLI. Misalnya, Anda dapat mengubah ukuran node pool.

Langkah berikutnya