kubernetes helm:"失去与pod的连接"并且"运输正在关闭"错误

时间:2018-01-28 04:54:57

标签: kubernetes kubernetes-helm

我运行helm upgrade --install来修改我的kubernetes集群的状态,有时会出现这样的错误:

22:24:34 StdErr: E0126 17:24:28.472048   48084 portforward.go:178] lost connection to pod
22:24:34 Error: UPGRADE FAILED: transport is closing

似乎我不是唯一一个,它似乎发生在许多不同的helm命令中。所有这些github问题都有描述或评论提及"失去与pod的连接"或者"运输正在关闭"错误(通常是两者):

虽然阅读数百个github问题评论可能具有教育意义,但通常在切换到堆栈溢出时更快,并且看起来这个问题似乎不存在,所以这里是。希望一些快速症状修复,最终一个或多个根本原因诊断最终会出现在答案中。

3 个答案:

答案 0 :(得分:1)

删除分蘖部署并重新创建它只是我在github(herehere)上看到的修复方法。当相同的helm命令反复失败时,这对人们最有帮助(不是间歇性失败,尽管你可以试试)。

删除分蘖(helm'服务器端组件):

kubectl delete deployment -n kube-system tiller-deploy
# deployment "tiller-deploy" deleted

并重新创建它:

helm init --upgrade
# $HELM_HOME has been configured at /root/.helm.
# Tiller (the helm server side component) has been upgraded to the current version.
# Happy Helming!

弹跳分蘖显然无法解决根本原因。希望有一个比这更好的答案,可能来自https://github.com/kubernetes/helm/issues/2025。这是截至2018年2月13日唯一开放的github问题。

答案 1 :(得分:1)

通过将分host主机信息添加到helm install命令中,我得以纠正此问题。

--host=10.111.221.14:443

您可以通过这种方式获得分till IP

$ kubectl get svc -n kube-system tiller-deploy
NAME            TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)     AGE
tiller-deploy   ClusterIP   10.111.221.14   <none>        44134/TCP   34h

完整命令示例

helm install stable/grafana --name=grafana --host=10.111.221.14:4413

我知道这是个变通办法,但是通过此方法安装后,Helm的所有其他功能都可以正常运行。初始安装后,我无需再次添加主机信息即可执行升级或回滚。希望这会有所帮助!

答案 2 :(得分:0)

内存限制对我造成了此错误。修复了以下问题:

kubectl set resources deployment tiller-deploy --limits=memory=200Mi