Halaman ini menjelaskan cara mengonfigurasi akses cluster untuk alat command line kubectl untuk GKE di AWS.
Ringkasan
Untuk mengakses GKE di AWS, 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 pada cluster AWS 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 AWS Virtual Private Cloud Anda. kube-apiserver cluster adalah bagian dari bidang kontrol. Untuk mengirim permintaan langsung ke endpoint pribadi, Anda mungkin perlu memperluas aturan firewall. Untuk mengetahui informasi selengkapnya tentang cara menghubungkan ke bidang kontrol, lihat grup keamanan AWS.
Connect Gateway
gcloud container aws clusters get-credentials CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION
Ganti kode berikut:
CLUSTER_NAME
: nama cluster AndaGOOGLE_CLOUD_LOCATION
: region atau zona Google Cloud tempat GKE Anda di AWS dikelola
Endpoint pribadi
Untuk terhubung ke endpoint pribadi, Anda memerlukan konektivitas ke bidang kontrol cluster. Lihat Menghubungkan ke bidang kontrol cluster.
gcloud container aws clusters get-credentials CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION \
--private-endpoint
Ganti kode berikut:
CLUSTER_NAME
: nama cluster AndaGOOGLE_CLOUD_LOCATION
: region atau zona Google Cloud tempat GKE Anda di AWS 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 aws clusters get-credentials CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION \
Ganti kode berikut:
CLUSTER_NAME
: nama cluster AndaGOOGLE_CLOUD_LOCATION
: region atau zona Google Cloud tempat GKE Anda di AWS 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 aws 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