如何通过 SSH 连接到 Google 容器引擎集群的节点?当我尝试使用节点 IP 地址进行 SSH 连接时,它会显示“公钥被拒绝”。
有没有人能帮助我获取连接到 Google 容器引擎集群节点所需的密钥呢?
如何通过 SSH 连接到 Google 容器引擎集群的节点?当我尝试使用节点 IP 地址进行 SSH 连接时,它会显示“公钥被拒绝”。
有没有人能帮助我获取连接到 Google 容器引擎集群节点所需的密钥呢?
您应该使用gcloud工具,例如:
gcloud compute ssh <NODE_NAME> --zone <ZONE>
我也遇到了同样的问题,在谷歌上搜索了几个小时后,找到了这个解决方法。
添加以下防火墙规则:
目标标签:GKE节点的标签
源IP范围:35.235.240.0/20(Cloud IAP的TCP网络块,请参见https://cloud.google.com/iap/docs/using-tcp-forwarding)
端口:22
然后我尝试了下面的命令:
gcloud compute ssh [节点名称] --zone=[区域]
kubectl exec -it [POD_NAME] -- /bin/bash
我尝试按照其他答案中建议的方式通过SSH登录容器,但无论我选择哪个区域,响应始终是"未找到资源 'projects/...'"。因此,我将这个解决方案作为一个替代方案,它允许我检查部署容器上的文件。
更新1:感谢Glen Yu的评论,我成功找到了无法SSH登录我的节点的原因。我使用了Autopilot集群进行部署,它禁止SSH登录:"Autopilot阻止对节点的SSH访问。GKE处理节点的所有运营方面,包括节点健康和运行在节点上的所有Kubernetes组件。"(source)。感谢Glen指出这一点。
ssh
命令,gcloud ssh
命令,还是通过GCP WebUI)?同时,请提供输出和错误信息。 - ihor_dvoretskyi