Menggunakan SSH untuk terhubung ke node cluster

Halaman ini menjelaskan cara melakukan SSH ke node cluster GKE di VMware.

Sebelum memulai

Untuk menyelesaikan langkah-langkah ini, Anda memerlukan lokasi file kubeconfig cluster pengguna dan admin. Secara default, file ini disimpan di direktori tempat Anda membuat cluster pengguna dan admin. Untuk informasi selengkapnya tentang kubeconfig, lihat Mengonfigurasi akses cluster untuk kubectl dalam dokumentasi GKE.

Mendapatkan alamat IP node cluster

Dapatkan alamat IP node cluster pengguna:

kubectl --kubeconfig [USER_CLUSTER_KUBECONFIG] get nodes --output wide

dengan [USER_CLUSTER_KUBECONFIG] adalah jalur file kubeconfig cluster pengguna Anda.

Dapatkan alamat IP node cluster admin Anda:

kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] get nodes --output wide

dengan [ADMIN_CLUSTER_KUBECONFIG] adalah jalur file kubeconfig cluster admin Anda.

Untuk salah satu perintah, perhatikan kolom INTERNAL-IP. Yaitu alamat IP {i>node<i}. Kolom NAME berisi nama cluster pengguna dengan tambahan ID unik. Misalnya, node bernama my-user-cluster-12345678-abcdef adalah bagian dari cluster pengguna yang bernama my-user-cluster.

Menggunakan SSH untuk terhubung ke node cluster pengguna

Dapatkan kunci SSH untuk cluster pengguna:

kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] get secrets -n [USER_CLUSTER_NAME] ssh-keys \
-o jsonpath='{.data.ssh\.key}' | base64 -d > \
~/.ssh/[USER_CLUSTER_NAME].key && chmod 600 ~/.ssh/[USER_CLUSTER_NAME].key

dengan:

  • [ADMIN_CLUSTER_KUBECONFIG] adalah jalur file kubeconfig cluster admin Anda.

  • [USER_CLUSTER_NAME] adalah nama cluster pengguna Anda. Anda menentukan nama ini saat Membuat cluster pengguna.

Perintah sebelumnya melakukan langkah-langkah berikut:

  • Dari cluster admin, dapatkan kolom Secret ssh.key yang bernama ssh-keys di namespace [USER_CLUSTER_NAME].

  • Base64 mendekode kunci.

  • Simpan kunci yang didekode dalam file ~/.ssh/[USER_CLUSTER_NAME].key.

  • Tetapkan izin akses yang sesuai untuk file kunci.

Gunakan kunci tersebut untuk melakukan SSH ke node cluster pengguna:

ssh -i ~/.ssh/[USER_CLUSTER_NAME].key anthos@[USER_NODE_IP]

dengan [USER_NODE_IP] adalah alamat IP internal node di cluster pengguna, yang telah Anda kumpulkan sebelumnya.

Menggunakan SSH untuk terhubung ke node cluster admin

Dapatkan kunci SSH untuk cluster admin:

kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] get secrets -n kube-system sshkeys \
-o jsonpath='{.data.vsphere_tmp}' | base64 -d > \
~/.ssh/admin-cluster.key && chmod 600 ~/.ssh/admin-cluster.key

dengan [ADMIN_CLUSTER_KUBECONFIG] adalah jalur file kubeconfig cluster admin.

Perintah sebelumnya melakukan langkah-langkah berikut:

  • Dari cluster admin, dapatkan kolom vsphere_tmp Secret yang bernama sshkeys di namespace kube-system.

  • Base64 mendekode kolom vsphere_tmp, yang merupakan kuncinya.

  • Simpan kunci yang didekode dalam file ~/.ssh/admin-cluster.key.

  • Tetapkan izin akses yang sesuai untuk file kunci.

Gunakan kunci tersebut untuk melakukan SSH ke node cluster admin:

ssh -i ~/.ssh/admin-cluster.key anthos@[ADMIN_NODE_IP]

dengan [ADMIN_NODE_IP] adalah alamat IP internal node di cluster admin, yang telah Anda kumpulkan sebelumnya.