在 Helm 部署期间,Kubernetes Helm 在杀死旧 Pod 之前等待

标签 kubernetes microservices kubernetes-helm

我有一个“大”微服务(网站),在生产环境中使用 Helm Chart 部署了 3 个 Pod,但是当我部署新版本的 Helm Chart 时,在 40 秒(启动我的大微服务的时间)内,我网站有问题(503服务不可用)

所以,我研究了一个解决方案,告诉 kubernetes 在新版本完全启动之前不要杀死旧的 pod

我尝试了--wait --timeout,但它对我不起作用。

我的 EKS 版本:“v1.14.6-eks-5047ed”

最佳答案

如果没有有关 Pod 的更多详细信息,我建议:

使用Deployment (如果还没有)以便 Pod 由复制 Controller 管理,这允许执行 rolling updates ,并且与 configured 结合 Startup Probe(如果在 k8s v1.16+ 上)或 Readiness Probe,以便 Kubernetes 知道新的 Pod 何时准备好接收流量(当 Pod 的所有容器都准备就绪时,该 Pod 被视为准备就绪)。

关于在 Helm 部署期间,Kubernetes Helm 在杀死旧 Pod 之前等待,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58980083/

相关文章:

bash - 命名路径的 kubectl jsonpath 表达式

kubernetes - 使用istio在Kubernetes上运行mongodb有状态集

kubernetes - GKE 流式传输大文件下载失败并出现部分响应

azure - 如果我们已经在.Net Core微服务API网关中实现了授权,是否还需要在所有微服务中实现?

kubernetes-helm - Helm 根据条件下载依赖项

kubernetes - 如何从现有的 github 项目中添加 helm repo?

kubernetes - Kubernetes编辑 secret 错误: “cannot restore slice from…”

scala - Akka微服务之间如何共享通信模型?

java - docker 容器上的 Eureka : unknown host exception

kubernetes - ConfigMap 文件中的 Helm 变量