Mengonfigurasi akses cluster untuk kubectl

Halaman ini menjelaskan cara mengonfigurasi akses cluster untuk alat command line kubectl untuk GKE di Azure.

Ringkasan

Untuk mengakses GKE di Azure, Anda perlu mengonfigurasi kubectl. Anda dapat menetapkan cluster default untuk kubectl dengan menetapkan konteks saat ini dalam file kubeconfig Kubernetes. Selain itu, Anda dapat menjalankan perintah kubectl terhadap cluster tertentu menggunakan tanda --cluster.

Untuk mengetahui informasi selengkapnya tentang kubeconfig dan endpoint cluster, lihat Tentang Kubeconfig.

Sebelum memulai

Jika menggunakan Gateway penghubung untuk akses kubectl, Anda harus memberi pengguna admin yang bukan pemilik project peran IAM yang dijelaskan dalam Menggunakan kubectl dengan identitas dari gcloud CLI.

Memeriksa kubeconfig saat ini

Bagian ini menjelaskan cara memeriksa kubeconfig saat ini.

Melihat konteks kubeconfig

Untuk melihat kubeconfig lingkungan Anda dan semua konteks yang ada di dalamnya, jalankan perintah berikut:

kubectl config view

Perintah ini menampilkan daftar semua cluster dengan entri kubeconfig yang telah dibuat. Jika GKE di cluster Azure tercantum, Anda dapat menjalankan perintah kubectl pada cluster tersebut di lingkungan Anda saat ini. Jika tidak, Anda harus membuat entri kubeconfig untuk cluster tersebut.

Melihat konteks saat ini untuk kubectl

Untuk melihat konteks saat ini yang digunakan alat command line kubectl, jalankan perintah berikut:

kubectl config current-context

kubectl menghasilkan nama konteks saat ini.

Membuat entri kubeconfig

Untuk menjalankan perintah kubectl terhadap cluster GKE, Anda perlu membuat entri kubeconfig. Cara membuat kubeconfig bergantung pada cara Anda ingin terhubung ke cluster. Sebaiknya gunakan Connect gateway. Jika ingin terhubung melalui endpoint pribadi, Anda harus memiliki koneksi dan perutean ke endpoint bidang kontrol di Azure Virtual Network. kube-apiserver cluster adalah bagian dari bidang kontrol. Untuk mengirim permintaan langsung ke endpoint pribadi, Anda mungkin perlu memperluas aturan firewall. Untuk informasi selengkapnya tentang cara menghubungkan ke bidang kontrol, lihat Grup keamanan jaringan.

Connect Gateway

gcloud container azure clusters get-credentials CLUSTER_NAME \
  --location GOOGLE_CLOUD_LOCATION

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda
  • GOOGLE_CLOUD_LOCATION: region atau zona Google Cloud tempat GKE Anda di Azure dikelola

Endpoint pribadi

Untuk terhubung ke endpoint pribadi, Anda memerlukan konektivitas ke bidang kontrol cluster. Lihat Menghubungkan ke bidang kontrol cluster.

gcloud container azure clusters get-credentials CLUSTER_NAME \
  --location GOOGLE_CLOUD_LOCATION \
  --private-endpoint

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda
  • GOOGLE_CLOUD_LOCATION: region atau zona Google Cloud tempat GKE Anda di Azure dikelola

Menangani beberapa cluster

Bagian ini menjelaskan cara menggunakan kubectl dengan beberapa cluster GKE.

Menetapkan cluster default untuk perintah kubectl

Anda dapat mengalihkan konteks saat ini untuk kubectl ke cluster tersebut dengan menjalankan:

gcloud container azure clusters get-credentials CLUSTER_NAME \
  --location GOOGLE_CLOUD_LOCATION \

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda
  • GOOGLE_CLOUD_LOCATION: region atau zona Google Cloud tempat GKE Anda di Azure dikelola

Misalnya, pertimbangkan project dengan dua cluster, cluster-1 dan cluster-2. Konteks saat ini adalah cluster-2. Untuk mengalihkan konteks saat ini dari cluster-2 ke cluster-1, jalankan perintah berikut:

gcloud container azure clusters get-credentials cluster-1 \
  --location GOOGLE_CLOUD_LOCATION

Menjalankan perintah kubectl individu terhadap cluster tertentu

Anda dapat menjalankan perintah kubectl satu per satu terhadap cluster tertentu dengan meneruskan nama cluster seperti yang muncul di kubeconfig sebagai argumen ke flag --cluster.

Misalnya, pertimbangkan lingkungan dengan dua cluster, cluster-1 dan cluster-2, dengan konteks saat ini adalah cluster-1. Anda tidak ingin mengubah konteks saat ini. Untuk mendapatkan daftar objek Pod di cluster-2 tanpa mengubah konteks saat ini, jalankan perintah berikut:

kubectl get pod --cluster cluster-2