Nesta página, você aprende a usar SSH em um nó de cluster do GKE local.
Antes de começar
Para concluir essas etapas, você precisará do local dos arquivos kubeconfig
do usuário e do administrador. Por padrão, esses arquivos são armazenados no diretório em que você criou os clusters de administrador e usuário. Para mais informações sobre kubeconfig
, consulte Como configurar o acesso ao cluster para a kubectl na documentação do GKE.
Como conseguir os endereços IP dos nós do cluster
Consiga os endereços IP dos seus nós de cluster de usuário:
kubectl --kubeconfig [USER_CLUSTER_KUBECONFIG] get nodes --output wide
em que [USER_CLUSTER_KUBECONFIG] é o caminho do arquivo kubeconfig do cluster de usuários.
Consiga os endereços IP dos nós do cluster de administrador:
kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] get nodes --output wide
em que [ADMIN_CLUSTER_KUBECONFIG] é o caminho do arquivo kubeconfig do cluster de administrador.
Para qualquer um dos comandos, anote o campo INTERNAL-IP
. Esses são os endereços IP
do nó.
Como usar SSH para se conectar a um nó de cluster de usuário
Consiga a chave SSH para um cluster de usuário:
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
onde:
[ADMIN_CLUSTER_KUBECONFIG] é o caminho do arquivo kubeconfig do cluster de administrador;
[USER_CLUSTER_NAME] é o nome do cluster de usuário.
O comando anterior executa as seguintes etapas:
No cluster de administrador, consiga o campo
ssh.key
de um secret chamadossh-keys
no namespace [USER_CLUSTER_NAME].Decodifique em Base64 a chave.
Armazene a chave decodificada no arquivo
~/.ssh/[USER_CLUSTER_NAME].key
.Defina as permissões de acesso apropriadas para o arquivo de chave.
Use a chave para executar o SSH em um nó de cluster do usuário:
ssh -i ~/.ssh/[USER_CLUSTER_NAME].key ubuntu@[NODE_IP]
em que [NODE_IP] é o endereço IP interno de um nó no cluster de usuário, que você coletou anteriormente.
Como usar o SSH para se conectar a um nó de cluster de administrador
Consiga a chave SSH para o cluster de administrador:
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
em que [ADMIN_CLUSTER_KUBECONFIG] é o caminho do arquivo kubeconfig do cluster de administrador.
O comando anterior executa as seguintes etapas:
No cluster de administração, consiga o campo
vsphere_tmp
de um secret chamadosshkeys
no namespacekube-system
.Decodifique em Base64 o campo
vsphere_tmp
, que é a chave.Armazene a chave decodificada no arquivo
~/.ssh/admin-cluster.key
.Defina as permissões de acesso apropriadas para o arquivo de chave.
Use a chave para executar o SSH em um nó de cluster de administrador:
ssh -i ~/.ssh/admin-cluster.key ubuntu@[NODE_IP]
em que [NODE_IP] é o endereço IP interno de um nó no cluster de administrador, que você coletou anteriormente.