头盔错误地显示升级失败状态

时间:2020-10-14 20:46:00

标签: kubernetes kubernetes-helm

在一定比例的时间内使用头盔安装/升级时,出现此故障:

Failed to install app MyApp. Error: UPGRADE FAILED: timed out waiting for the condition

这是因为应用程序有时需要更多时间才能启动并运行。

当我收到此消息时,Helm不会停止安装/升级,但仍会继续进行,最终会成功。我的整个集群将完全正常运行。
但是,头盔仍然显示该发行版的这种失败状态。
一方面,这很烦人,另一方面,它可能会破坏正确安装的发行版。

如何清除此错误错误并进入“已部署”状态(无需重新安装/升级)?

1 个答案:

答案 0 :(得分:0)

在这里您可能会发现有用的是以下两个选项:

  • --wait:等待所有Pod都处于就绪状态,PVC绑定,部署中的Pod最少(Desired减去maxUnavailable) 就绪状态和服务具有IP地址(如果 在将发布标记为成功之前,请先执行LoadBalancer)。它将等待 持续时间为--timeout的值。如果超时,则 版本将标记为FAILED。注意:在以下情况下 部署的副本设置为1,而maxUnavailable未设置为0 作为滚动更新策略的一部分,--wait将返回 它已满足准备就绪状态下的最小Pod。

  • --timeout:等待Kubernetes命令完成的秒数(默认值为5m0s)

头盔安装和升级命令包括两个CLI选项以帮助检查部署:--wait--timeout。使用--wait时,Helm将等待,直到在部署中启动了最小的Pod预期数量,然后再将发布标记为成功。只要--timeout设置为Helm,头盔就会等待。

另外,请注意,这不是cli标志的完整列表。要查看所有标志的描述,只需运行helm <command> --help

如果要检查图表为什么失败,可以使用helm history command