在 Kubernetes 中遇到端口转发的连接超时问题?

tha*_*ono 3 docker kubernetes docker-for-mac

我正在 Docker for Mac 上运行 k8 集群。为了允许从我的数据库客户端连接到我的 mysql pod,我使用以下命令kubectl port-forward mysql-0 3306:3306。它工作得很好,但是几个小时后我收到以下错误E0201 18:21:51.012823 51415 portforward.go:233] lost connection to pod

我检查了实际的 mysql pod,它似乎仍在运行。每次运行port-forward命令时都会发生这种情况。

我在这里看到了以下答案:kubectl 端口转发超时问题,解决方案是使用以下标志,--streaming-connection-idle-timeout=0但该标志现已弃用。

那么从那里开始,看来我必须通过 kubelet 配置文件(config file)设置该参数?我不确定如何实现这一点,因为 Mac 版 Docker 作为守护程序运行,而且我没有手动启动集群。

任何人都可以向我发送代码示例或有关如何配置kubectl以设置该标志以便我的端口转发不会超时的说明吗?

cod*_*ger 6

端口转发通常用于短期调试,而不是“小时”。您可能想要的是一个 NodePort 类型的服务,然后您可以直接连接到该服务。