我按照此处的说明创建了一个ACS Kubernetes群集:https://docs.microsoft.com/en-us/azure/container-service/container-service-kubernetes-walkthrough。
我看到主节点有一个公共IP,我可以使用azureuser
进入主节点。但是常规节点没有公共IP,我也不知道如何从主节点进入常规节点。
如何通过SSH连接到常规节点?
答案 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会话,并将其用作代理节点的跳转主机。