Nesta página, descrevemos como usar SSH em um nó de cluster do Google Distributed Cloud.
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ó. O campo NAME
inclui o nome do cluster de usuário com um código exclusivo anexado. Por exemplo, o nó chamado my-user-cluster-12345678-abcdef
faz parte do cluster do usuário chamado my-user-cluster
.
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] pelo nome do cluster de usuário. Você especificou esse nome ao criar um cluster de usuários.
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 anthos@[USER_NODE_IP]
em que [USER_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 anthos@[ADMIN_NODE_IP]
em que [ADMIN_NODE_IP] é o endereço IP interno de um nó no cluster de administrador, que você coletou anteriormente.