Mendaftarkan cluster di Google Cloud ke fleet Anda

Halaman ini menunjukkan cara menambahkan cluster GKE di Google Cloud ke fleet Anda. Bergantung pada project dan kasus penggunaan Anda, Anda dapat menggunakan Konsol Google Cloud, Terraform, Config Connector, atau Google Cloud CLI untuk pendaftaran. Anda juga dapat membuat dan mendaftarkan cluster baru dalam satu langkah menggunakan Google Cloud CLI, Konsol Google Cloud, atau Terraform.

Sebelum memulai

Pastikan Anda telah mengikuti prasyarat umum untuk mendaftarkan cluster.

Bergantung pada kasus penggunaan Anda, cluster GKE pada pendaftaran Google Cloud mungkin juga memerlukan hal berikut:

Mendaftarkan cluster GKE Anda di Google Cloud

Seperti yang Anda lihat dalam prasyarat, sebaiknya daftarkan cluster GKE Anda dengan mengaktifkan Workload Identity Federation for GKE, yang memberikan cara konsisten bagi aplikasi untuk melakukan autentikasi ke API dan layanan Google Cloud. Anda dapat mengetahui lebih lanjut tentang keuntungan mengaktifkan fleet Workload Identity Federation for GKE di Use fleet Workload Identity Federation for GKE. Mendaftarkan cluster menggunakan salah satu opsi berikut memungkinkan Anda mengaktifkan workload Workload Identity Federation for GKE jika diperlukan.

Anda dapat memilih antara mendaftarkan cluster baru saat pembuatan cluster, atau mendaftarkan cluster yang sudah ada.

Daftarkan cluster baru

Jika Anda telah mengaktifkan GKE Enterprise, sebaiknya daftarkan cluster baru ke fleet selama pembuatan cluster. Ini karena mereka "lahir di armada" cluster dibuat dengan setelan default tingkat fleet yang Anda pilih untuk sejumlah fitur perusahaan, dan dengan log dan metrik yang direkomendasikan sudah diaktifkan. Anda dapat mempelajari hal ini lebih lanjut di panduan berikut:

Jika belum mengaktifkan GKE Enterprise, Anda masih dapat mendaftarkan cluster selama pembuatan cluster menggunakan petunjuk ini, tetapi tidak akan mendapatkan konfigurasi default tingkat fleet.

Konsol

  1. Di konsol Google Cloud, buka halaman pembuatan cluster yang relevan.

  2. Ikuti petunjuk di dokumentasi GKE untuk menyelesaikan bagian pembuatan Autopilot, Region standar, atau Cluster zona standar dari Konsol Google Cloud.

  3. Di bagian Pendaftaran perangkat, centang kotak Daftar ke armada. Secara default, nama fleet didasarkan pada project ID Anda.

  4. Isi bagian yang tersisa.

  5. Jika Anda telah memilih untuk membuat cluster Standar dan ingin cluster terdaftar menggunakan fleet Workload Identity Federation (direkomendasikan), klik Security di panel navigasi dan pastikan Enable Workload Identity Federation for GKE sudah dipilih. Fitur ini diaktifkan secara default pada cluster Autopilot.

  6. Setelah selesai meninjau detail cluster, klik Create untuk membuat dan mendaftarkan cluster ke fleet.

gcloud

Perintah ini memerlukan gcloud CLI versi 450.0.0 atau yang lebih tinggi.

Dengan mendaftarkan cluster menggunakan Google Cloud CLI, Anda akan mendapatkan lokasi keanggotaan regional secara default.

  • Untuk membuat dan mendaftarkan cluster GKE Autopilot baru, jalankan perintah berikut:

    gcloud container clusters create-auto CLUSTER_NAME --enable-fleet
    

    Ganti CLUSTER_NAME dengan nama unik untuk cluster yang Anda buat. Nama ini juga akan menjadi nama keanggotaan cluster. Jika sudah ada cluster dengan nama ini di fleet yang Anda pilih, perintah akan menampilkan error.

  • Untuk membuat dan mendaftarkan cluster GKE Standar baru dengan Workload Identity Federation for GKE aktif, jalankan perintah berikut:

    gcloud container clusters create CLUSTER_NAME --enable-fleet \
    --workload-pool=PROJECT_ID.svc.id.goog
    

    Ganti kode berikut:

    • CLUSTER_NAME: nama unik untuk cluster yang Anda buat. Nama ini juga akan menjadi nama keanggotaan cluster. Jika sudah ada cluster dengan nama ini di fleet yang Anda pilih, perintah akan menampilkan error.
    • PROJECT_ID: project ID Google Cloud untuk project yang akan memiliki cluster baru Anda.

    Jika Anda membuat cluster Standar, sebaiknya buat cluster dengan Workload Identity Federation for GKE aktif, karena tindakan ini akan mengaktifkan Workload Identity Federation untuk cluster Anda yang terdaftar. Namun, Anda dapat menghilangkan flag --workload-pool jika tidak ingin menggunakan fitur ini. Cluster Autopilot mengaktifkan Workload Identity Federation untuk GKE secara default.

Bergantung pada cluster yang ingin dibuat, Anda juga dapat menentukan salah satu opsi lain untuk membuat cluster Zona standar, Region standar, atau Autopilot. Anda mungkin juga perlu menentukan zona Compute Engine jika belum mengonfigurasi zona default untuk Google Cloud CLI, dan project Google Cloud untuk memiliki cluster jika Anda belum mengonfigurasi project default.

Pelajari lebih lanjut cara membuat berbagai jenis cluster GKE di dokumentasi GKE.

Terraform

Anda dapat membuat dan mendaftarkan cluster GKE dengan Terraform menggunakan penyedia google. Anda dapat menemukan referensi lengkap untuk resource google_container_cluster yang digunakan untuk mengelola cluster GKE di registry Terraform.

Pastikan Anda sudah membuat akun layanan untuk Terraform yang akan digunakan seperti yang dijelaskan dalam prasyarat sebelum mengikuti petunjuk ini.

Untuk membuat dan mendaftarkan cluster baru, tambahkan blok berikut dalam konfigurasi Terraform Anda.

  1. Tentukan penyedia google sebagai penyedia wajib:

    terraform {
      required_providers {
        google = {
          source = "hashicorp/google"
          version = "VERSION"
        }
      }
    }
    

    Ganti VERSION dengan versi 5.6.0 atau yang lebih baru.

  2. Buat dan daftarkan cluster baru:

    resource "google_container_cluster" "TF_CLUSTER_RESOURCE_NAME" {
      provider = google
      name               = "CLUSTER_NAME"
      location           = "ZONE"
      initial_node_count = 1
      fleet {
        project = "FLEET_HOST_PROJECT"
      }
    }
    

    Ganti kode berikut:

    • TF_CLUSTER_RESOURCE_NAME: nama unik untuk resource google_container_cluster baru yang Anda buat.
    • CLUSTER_NAME: nama unik untuk cluster GKE baru yang ingin Anda buat dan daftarkan.
    • ZONE: zona untuk resource cluster GKE Anda. Contoh: us-central1-a.
    • FLEET_HOST_PROJECT: project ID Google Cloud tempat Anda membuat dan mendaftarkan cluster. Jika tidak disetel, cluster tidak akan didaftarkan ke fleet. Tentukan project ID yang berbeda jika Anda ingin mendaftarkan cluster ke fleet di project lain.

Daftarkan cluster yang ada

Gunakan salah satu opsi berikut untuk mendaftarkan cluster yang ada, baik ke fleet project-nya sendiri maupun ke fleet dalam project yang berbeda (semua opsi kecuali konsol Google Cloud). Anda juga dapat memilih untuk mendaftarkan beberapa atau semua cluster yang ada saat mengupgrade ke GKE Enterprise.

Untuk mendaftarkan cluster GKE yang ada:

Konsol

Jika Anda ingin cluster Anda menggunakan fleet Workload Identity Federation (direkomendasikan), pastikan Workload Identity Federation for GKE diaktifkan di cluster tersebut sebelum mengikuti petunjuk ini. Cluster Autopilot mengaktifkan Workload Identity Federation untuk GKE secara default. Cluster dengan Workload Identity Federation untuk GKE otomatis mengaktifkan Workload Identity Federation saat Anda mendaftarkannya dari Konsol Google Cloud.

  1. Di konsol Google Cloud, buka halaman Cluster GKE.

    Buka halaman GKE Clusters

  2. Klik Register di samping cluster yang belum terdaftar yang ingin Anda tambahkan ke fleet.

  3. Klik Register lagi pada dialog konfirmasi yang muncul.

gcloud

Perintah ini memerlukan gcloud CLI versi 450.0.0 atau yang lebih tinggi.

Dengan mendaftarkan cluster menggunakan Google Cloud CLI, Anda akan mendapatkan lokasi keanggotaan regional secara default.

Kedua perintah ini mengaktifkan Workload Identity Federation fleet untuk cluster jika cluster sudah mengaktifkan Workload Identity Federation untuk GKE.

  • Untuk mendaftarkan cluster GKE yang sudah ada di Google Cloud ke fleet project-nya, jalankan perintah berikut:

    gcloud container clusters update CLUSTER_NAME --enable-fleet
    

    Ganti CLUSTER_NAME dengan nama cluster yang Anda daftarkan. Nama ini juga akan menjadi nama keanggotaan cluster.

  • Untuk mendaftarkan cluster ke fleet di project yang berbeda, gunakan flag --fleet-project, seperti ditunjukkan di bawah ini. Pastikan Anda telah menyiapkan izin yang diperlukan untuk pendaftaran lintas project sebelum menjalankan perintah ini.

    gcloud container clusters update CLUSTER_NAME --fleet-project=PROJECT_ID_OR_NUMBER
    
    • Ganti CLUSTER_NAME dengan nama cluster yang Anda daftarkan. Nama ini juga akan menjadi nama keanggotaan cluster.
    • Ganti PROJECT_ID_OR_NUMBER dengan project ID atau nomor project host fleet yang Anda pilih.

Terraform

Anda dapat mendaftarkan cluster GKE dengan Terraform menggunakan penyedia google. Anda dapat menemukan referensi lengkap untuk resource google_container_cluster yang digunakan untuk mengelola cluster GKE di registry Terraform.

Pastikan Anda sudah membuat akun layanan untuk Terraform yang akan digunakan seperti yang dijelaskan dalam prasyarat sebelum mengikuti petunjuk ini.

Daftarkan cluster yang ada

Untuk mendaftarkan cluster yang ada, tambahkan blok berikut ke konfigurasi resource google_container_cluster cluster Anda:

fleet {
        project = "FLEET_HOST_PROJECT"
      }

Ganti FLEET_HOST_PROJECT dengan project ID Google Cloud yang mencakup cluster Anda, atau project ID yang berbeda jika ingin mendaftarkan cluster ke fleet di project lain.

Mengaktifkan Workload Identity Federation untuk GKE pada cluster yang terdaftar

Anda dapat menggunakan Terraform guna mengaktifkan Workload Identity Federation for GKE untuk cluster.

Guna mengaktifkan Workload Identity Federation for GKE untuk cluster baru atau yang sudah ada, tambahkan blok berikut dalam konfigurasi resource google_container_cluster cluster yang relevan:

  workload_identity_config {
    workload_pool = "PROJECT_ID.svc.id.goog"
  }
  ```

 Replace <code><var>PROJECT_ID</var></code> with the Google Cloud project ID for your Terraform resources.

Config Connector

Jika Anda memiliki add-on Config Connector diinstal, Anda dapat menggunakan Config Connector untuk mendaftarkan GKE klaster. Pastikan Anda memiliki versi Config Connector di atas 1.47.0 dan Anda telah membuat akun layanan seperti yang dijelaskan dalam prasyarat.

Anda dapat menemukan referensi lengkap untuk referensi GKEHubMembership di Dokumentasi referensi Config Connector.

Mendaftarkan cluster GKE

Untuk mendaftarkan cluster, pertama-tama tentukan tempat Anda ingin membuat resource, dengan mengikuti petunjuk dalam panduan Config Connector. Kemudian buat file YAML untuk mendaftarkan dan (secara opsional) membuat cluster, sebagai berikut:

Membuat dan mendaftarkan cluster GKE

  1. Buat cluster GKE, seperti pada contoh sederhana berikut:

    apiVersion: container.cnrm.cloud.google.com/v1beta1
    kind: ContainerCluster
    metadata:
      name: CLUSTER_NAME
    spec:
      location: LOCATION
      initialNodeCount: 1
    

    Ganti kode berikut:

    • CLUSTER_NAME: nama yang Anda pilih untuk secara unik mewakili cluster yang Anda buat dengan Config Connector.
    • LOCATION: zona atau region yang Anda pilih untuk menyediakan cluster GKE resource Anda Contoh: us-central1-a.

    Untuk mengetahui daftar lengkap opsi saat membuat cluster GKE dengan Config Connector, lihat dokumentasi Config Connector.

  2. Daftarkan keanggotaan untuk cluster GKE.

    apiVersion: gkehub.cnrm.cloud.google.com/v1beta1
    kind: GKEHubMembership
    metadata:
      name: MEMBERSHIP_NAME
    spec:
      location: MEMBERSHIP_LOCATION
      endpoint:
        gkeCluster:
          resourceRef:
            name: CLUSTER_NAME
    

    Ganti kode berikut:

    • MEMBERSHIP_NAME: nama keanggotaan yang Anda pilih secara unik mewakili cluster yang didaftarkan ke fleet.
    • MEMBERSHIP_LOCATION: lokasi layanan Armada yang Anda inginkan untuk mengelola keanggotaan cluster. Lokasi ini dapat berupa lokasi cluster sendiri (direkomendasikan) atau global. Pelajari lebih lanjut di Lokasi keanggotaan Armada. Anda tidak dapat menentukan lokasi yang berbeda dengan lokasi cluster: jika Anda melakukannya, pendaftaran akan gagal.
    • CLUSTER_NAME: nama yang Anda pilih untuk secara unik mewakili cluster yang Anda buat dengan Config Connector.

Mendaftarkan cluster pada project lain

Tambahkan hal berikut ke kolom metadata dari resource GKEHubMembership untuk mendaftarkan cluster ke fleet di project lain.

   metadata:
     annotations:
       cnrm.cloud.google.com/project-id: FLEET_PROJECT_ID

Ganti kode berikut:

  • FLEET_PROJECT_ID: project host fleet yang Anda pilih untuk mendaftarkan cluster GKE.

Daftarkan cluster yang ada

Gunakan konfigurasi berikut jika Anda ingin mendaftarkan cluster yang sudah ada, terlepas dari cara cluster tersebut dibuat. Dalam hal ini, Anda perlu menentukan nama lengkap resource cluster agar Config Connector dapat menemukannya. Ganti kolom resourceRef dari resource GKEHubMembership dengan:

   resourceRef:
     external: //container.googleapis.com/CLUSTER_RESOURCE_NAME

Ganti kode berikut:

  • CLUSTER_RESOURCE_NAME: nama resource Google Cloud untuk cluster GKE. Contoh: projects/my-project/zones/us-west1-a/clusters/my-cluster.

Jika cluster dibuat dengan Config Connector, Anda tidak perlu menentukan nama cluster yang sepenuhnya memenuhi syarat.

Mengaktifkan Workload Identity Federation untuk GKE pada cluster yang terdaftar

Mengaktifkan Workload Identity Federation untuk GKE menggunakan konfigurasi yang sama dengan mendaftarkan cluster, dengan langkah-langkah tambahan berikut.

  1. Aktifkan Workload Identity Federation for GKE dengan menambahkan hal berikut di bagian Kolom spec dari ContainerCluster resource. Anda perlu melakukan hal ini baik untuk cluster baru maupun yang sudah ada.

    spec:
      workloadIdentityConfig:
        workloadPool: PROJECT_ID.svc.id.goog
    

    Ganti kode berikut:

  2. Aktifkan Workload Identity Federation fleet dengan menambahkan hal berikut di bagian Kolom spec dari GKEHubMembership blok resource.

    spec:
      authority:
        issuer: https://container.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_NAME
    }
    

    Ganti kode berikut:

    • PROJECT_ID: project default yang Anda pilih melalui anotasi namespace untuk membuat resource cluster GKE Anda.
    • LOCATION: zona atau region yang Anda pilih untuk menyediakan cluster GKE resource Anda Contoh: us-central1-a.
    • CLUSTER_NAME: nama yang Anda pilih untuk mewakili cluster yang Anda buat secara unik.

Pemecahan masalah

Jika Anda mengalami masalah selama penyiapan ini, lihat panduan pemecahan masalah kami.

Apa langkah selanjutnya?