如何ssh到ACS Kubernetes集群中的节点?

时间:2017-06-19 03:16:51

标签: azure kubernetes azure-container-service

我按照此处的说明创建了一个ACS Kubernetes群集:https://docs.microsoft.com/en-us/azure/container-service/container-service-kubernetes-walkthrough

我看到主节点有一个公共IP,我可以使用azureuser进入主节点。但是常规节点没有公共IP,我也不知道如何从主节点进入常规节点。

如何通过SSH连接到常规节点?

3 个答案:

答案 0 :(得分:7)

您可以使用其中一个k8s母带作为"堡垒主机"并避免复制密钥。例如:

# In ~/.ssh/config

Host agent1_private_ip agent2_private_ip ....
  IdentityFile ~/.ssh/<your_k8s_cluster_key>
  ProxyCommand ssh user@master_public_ip -W %h:%p

现在只是ssh user@agent1_private_ip

在此处查看更多内容:http://blog.scottlowe.org/2015/11/21/using-ssh-bastion-host/

PS:以/etc/hosts格式快速检索代理私有网址:

kubectl get nodes -o json | jq -r '.items[].status.addresses[].address' | paste - -

答案 1 :(得分:4)

您可以将私钥复制到主VM。然后,您可以使用ssh -i <path>/id_rsa user@<agent private IP>到k8s代理VM。

注意:座席的用户名和私钥与主虚拟机相同。

答案 2 :(得分:0)

Microsoft已在https://docs.microsoft.com/en-us/azure/aks/ssh发布了官方文档。想法是通过SSH进入交互式POD会话,并将其用作代理节点的跳转主机。