Mengonfigurasi cluster agar dikelola oleh GKE On-Prem API

GKE On-Prem API memungkinkan Anda mengelola siklus proses cluster lokal menggunakan konsolGoogle Cloud , Google Cloud CLI, atau Terraform. Saat Anda membuat cluster dengan alat ini, API akan menyimpan metadata cluster di region Google Cloudyang Anda pilih. Jika Anda membuat cluster dengan bmctl, Anda harus mendaftarkannya di GKE On-Prem API untuk melihat detail dan mengelola siklus prosesnya melalui antarmuka ini.

Mendaftarkan cluster berbeda dengan mendaftarkannya ke fleet. Semua cluster Google Distributed Cloud otomatis mendaftar ke project host fleet saat dibuat. Di konsol Google Cloud , cluster terdaftar yang dikelola oleh GKE On-Prem API ditampilkan sebagai Bare metal di kolom Type, sedangkan cluster yang tidak terdaftar muncul sebagai External.

Persyaratan

  • Hanya cluster pengguna dan admin yang dapat didaftarkan dengan GKE On-Prem API. Mendaftarkan cluster hybrid dan mandiri tidak didukung.
  • Versi 1.13 atau yang lebih tinggi.
  • Pendaftaran cluster pengguna yang dibuat di namespace kustom tidak didukung. File konfigurasi cluster pengguna yang dihasilkan menggunakan namespace cluster default dari formulir cluster-CLUSTER_NAME. Jika Anda mengubah namespace saat membuat cluster, upaya untuk mendaftarkan cluster dengan GKE On-Prem API akan diblokir.

  • Jika Anda bukan pemilik project, minimal Anda harus diberi peran Identity and Access Management roles/gkeonprem.admin pada project. Untuk mengetahui detail tentang izin yang disertakan dalam peran ini, lihat Peran GKE on-prem dalam dokumentasi IAM.

Sebelum memulai

  1. Siapkan gcloud CLI, jika diperlukan.

    1. Jika Anda perlu menginstal gcloud CLI, lihat dokumentasi gcloud CLI. Update komponen gcloud CLI, jika diperlukan:

      gcloud components update
      
  2. Lakukan langkah-langkah berikut untuk mengaktifkan dan menggunakan GKE On-Prem API:

    1. Aktifkan API di project Anda:

      gcloud services enable \
          --project PROJECT_ID \
          gkeonprem.googleapis.com
      

      Ganti PROJECT_ID dengan project ID project host fleet Anda. Ini adalah project ID yang dikonfigurasi di bagian gkeconnect pada file konfigurasi cluster Anda.

      Jika Anda mendapatkan error PERMISSION_DENIED, periksa kembali project ID yang Anda masukkan. Jika project ID sudah benar, jalankan gcloud auth login untuk login ke Google Cloud CLI dengan akun yang memiliki akses ke project.

    2. Jika ini adalah pertama kalinya Anda mengaktifkan GKE On-Prem API di project, Anda harus melakukan inisialisasi API. Anda dapat melakukannya dengan memanggil perintah gcloud CLI yang menampilkan versi yang tersedia yang dapat Anda gunakan untuk membuat cluster:

      gcloud container bare-metal clusters query-version-config \
          --project=PROJECT_ID \
          --location=REGION
      

      Ganti REGION dengan us-west1 atau wilayah yang didukung.

  3. Jika organisasi Anda telah menyiapkan daftar yang diizinkan yang memungkinkan traffic dari Google API dan alamat lain melewati server proxy Anda, tambahkan hal berikut ke daftar yang diizinkan:

    • gkeonprem.googleapis.com
    • gkeonprem.mtls.googleapis.com

    Ini adalah nama layanan untuk GKE On-Prem API.

Mendaftarkan cluster pengguna

gcloud CLI

  1. Cantumkan keanggotaan fleet dari cluster yang terdaftar:

    gcloud container fleet memberships list \
        --project=PROJECT_ID
    

    Ganti PROJECT_ID dengan project ID untuk project host fleet Anda.

    Catat region tempat cluster admin yang mengelola cluster pengguna menjadi anggota karena Anda akan memerlukannya di langkah berikutnya.

  2. Daftarkan cluster di GKE On-Prem API:

    gcloud container bare-metal clusters enroll USER_CLUSTER_NAME  \
        --project=PROJECT_ID \
        --admin-cluster-membership=projects/PROJECT_ID/locations/MEMBERSHIP_REGION/memberships/ADMIN_CLUSTER_NAME \
        --location=REGION
    

    Ganti kode berikut:

    • USER_CLUSTER_NAME: nama cluster pengguna yang ingin Anda daftarkan.

    • PROJECT_ID: project ID dari project host fleet Anda.

    • MEMBERSHIP_REGION: region tempat cluster admin yang mengelola cluster pengguna menjadi anggota. Ini bisa berupa global atau region Google Cloud .

    • ADMIN_CLUSTER_NAME: nama cluster admin yang mengelola cluster pengguna.

      ADMIN_CLUSTER_NAME, MEMBERSHIP_REGION, dan PROJECT_ID membentuk nama cluster yang ditentukan sepenuhnya untuk flag --admin-cluster-membership.

    • REGION: region Google Cloud tempat GKE On-Prem API berjalan dan menyimpan metadata cluster. Tentukan us-west1 atau wilayah yang didukung lainnya. Region tidak dapat diubah setelah cluster didaftarkan.

bmctl

Lakukan langkah-langkah berikut di workstation admin Anda.

  1. Tambahkan bagian berikut ke file konfigurasi cluster pengguna:

    gkeOnPremAPI:
      enabled: true
      location: REGION
    

    Ganti REGION dengan region Google Cloud tempat GKE On-Prem API berjalan dan menyimpan metadata cluster. Tentukan us-west1 atau wilayah yang didukung. Region tidak dapat diubah setelah cluster didaftarkan.

  2. Update cluster:

    bmctl update cluster -c USER_CLUSTER_NAME \
      --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    

    Ganti kode berikut:

    • USER_CLUSTER_NAME: nama cluster pengguna yang akan diupdate.

    • ADMIN_CLUSTER_KUBECONFIG: jalur file kubeconfig cluster admin.

Mendaftarkan cluster admin

gcloud CLI

  1. Cantumkan keanggotaan fleet dari cluster yang terdaftar:

    gcloud container fleet memberships list \
        --project=PROJECT_ID
    

    Ganti PROJECT_ID dengan project ID untuk project host fleet Anda.

    Catat region tempat cluster admin menjadi anggota karena Anda akan memerlukannya di langkah berikutnya.

  2. Daftarkan cluster admin di GKE On-Prem API:

    gcloud container bare-metal admin-clusters enroll ADMIN_CLUSTER_NAME \
        --project=PROJECT_ID  \
        --admin-cluster-membership=projects/PROJECT_ID /locations/MEMBERSHIP_REGION /memberships/ADMIN_CLUSTER_NAME  \
        --location=REGION
    

Ganti kode berikut:

  • ADMIN_CLUSTER_NAME: nama cluster admin yang ingin Anda daftarkan.

  • PROJECT_ID project ID dari project host fleet Anda.

  • MEMBERSHIP_REGION: region tempat cluster admin menjadi anggota. Ini dapat berupa global atau region Google Cloud .

    ADMIN_CLUSTER_NAME, MEMBERSHIP_REGION, dan PROJECT_ID membentuk nama cluster yang ditentukan sepenuhnya untuk flag --admin-cluster-membership.

  • REGION: region Google Cloud tempat GKE On-Prem API berjalan dan menyimpan metadata cluster. Tentukan us-west1 atau wilayah yang didukung lainnya. Region tidak dapat diubah setelah cluster didaftarkan.

bmctl

Lakukan langkah-langkah berikut di workstation admin Anda.

  1. Tambahkan bagian berikut ke file konfigurasi cluster admin:

    gkeOnPremAPI:
      enabled: true
      location: REGION
    

    Ganti REGION dengan region Google Cloud tempat GKE On-Prem API berjalan dan menyimpan metadata cluster. Tentukan us-west1 atau wilayah yang didukung. Region tidak dapat diubah setelah cluster didaftarkan.

  2. Update cluster:

    bmctl update cluster -c ADMIN_CLUSTER_NAME \
    --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    

    Ganti kode berikut:

    • ADMIN_CLUSTER_NAME: nama cluster admin yang akan diupdate.

    • ADMIN_CLUSTER_KUBECONFIG: jalur file kubeconfig cluster admin.

Melihat cluster terdaftar

Semua fleet cluster Anda ditampilkan di halaman cluster GKE di konsol. Hal ini memberi Anda ringkasan seluruh fleet dan, untuk Google Distributed Cloud, memungkinkan Anda melihat cluster mana yang dikelola oleh GKE On-Prem API.

Untuk melihat cluster fleet Anda:

  1. Di konsol, buka halaman cluster GKE.
    Buka cluster GKE
  2. Pilih project Google Cloud .
    • Jika Bare metal ditampilkan di kolom Type, cluster dikelola oleh GKE On-Prem API.
    • Jika External ditampilkan di kolom Type, cluster tidak dikelola oleh GKE On-Prem API.

Mendapatkan informasi tentang cluster Anda

Setelah cluster didaftarkan, Anda dapat menggunakan perintah berikut untuk mendapatkan informasi tentang cluster Anda:

Cluster pengguna

  • Untuk mendeskripsikan cluster pengguna:
gcloud container bare-metal clusters describe USER_CLUSTER_NAME \
    --project=PROJECT_ID \
    --location=REGION
  • Untuk mencantumkan cluster pengguna:
gcloud container bare-metal clusters list \
    --project=PROJECT_ID \
    --location=-

Jika Anda menetapkan --location=-, artinya semua cluster di semua region akan dicantumkan. Jika Anda perlu mempersempit daftar, tetapkan --location ke region yang Anda tentukan saat mendaftarkan cluster.

Cluster admin

  • Untuk mendeskripsikan cluster admin:
gcloud container bare-metal admin-clusters describe ADMIN_CLUSTER_NAME \
    --project=PROJECT_ID \
    --location=REGION
  • Untuk mencantumkan cluster admin Anda:
gcloud container bare-metal admin-clusters list \
    --project=PROJECT_ID \
    --location=-

Jika Anda menetapkan --location=-, artinya semua cluster di semua region akan dicantumkan. Jika Anda perlu mempersempit daftar, tetapkan --location ke region yang Anda tentukan saat mendaftarkan cluster.

Hubungkan ke cluster

Setelah cluster didaftarkan dengan GKE On-Prem API, Anda harus memilih dan mengonfigurasi metode autentikasi agar dapat mengelola cluster dari konsol Google Cloud . Metode autentikasi yang Anda pilih juga mengontrol akses ke cluster dari command line. Untuk informasi selengkapnya, lihat referensi berikut: