【发布时间】:2018-09-18 04:23:19
【问题描述】:
我所做的是按照https://cloud.google.com/vpc/docs/special-configurations 中“构建高可用性和高带宽 NAT 网关”部分中的说明进行操作,在我用“no-ip”标记所有实例后,我不再能够访问使用“kubectl 日志”的 pod 日志。
是因为 kubectl logs 在后台使用 ssh 吗?是否有任何解决方法可以查看 pod 日志?
【问题讨论】:
-
它应该仍然可以工作,kubectl logs 与您的 master 上的 k8s api-server 交互,然后 master 从容器中检索日志(有效地在节点上运行 docker logs)并将信息发送回给您.您收到的错误消息是什么?
-
另外,kubectl 日志是唯一失败的命令吗?
-
@PatrickW "kubectl logs" 和 "kubectl exec" 都失败了。我原以为“kubectl exec”会失败,因为它在底层使用 ssh,而且我知道一旦该节点的出站连接通过 NAT,使用其公共 IP 连接到节点会失败。
-
无论何时运行 kubectl 命令,它都会与主服务器上的 API 服务器交互。然后主节点使用 SSH 连接到节点。我认为我们需要更多有关您如何设置基础架构的详细信息(有关 NAT 以及通过它引导的流量的更多详细信息)
-
@PatrickW 我明白了,目前来自我节点的出站连接都通过 NAT 网关,这可能是主节点无法 ssh 进入节点的原因。我将尝试添加一个路由规则,以便从节点到主节点的出站连接不会通过 NAT 网关。怎么知道master的IP?
标签: kubernetes google-compute-engine nat google-kubernetes-engine