0

当您编辑部署以更新 docker 映像时,我需要运行一个一次性脚本,该脚本会更改我的应用程序数据库的部分内容并发送一封电子邮件,告知滚动升级过程已完成并且结果通过/失败。

有没有可以将此脚本附加到的钩子?

4

3 回答 3

1

据我所知,Kubernetes 没有提供任何开箱即用的功能来支持此类功能,但是您可以使用以下命令修改脚本以检查部署的状态,并带有一些睡眠:

kubectl rollout status deployment/<deployment-name>
于 2021-01-28T08:17:04.530 回答
1

不,Kubernetes 中没有这样的东西。通常这应该由 CI/CD 管道完成。

于 2021-01-28T08:17:43.937 回答
1

Kubernetes 没有实现这样的东西。这可以通过 CI/CD 管道或手动检查滚动更新状态来完成。正如您所说,您可以编写简单的脚本来检查滚动更新的状态并通过电子邮件发送并将其附加到Jenkins 中创建的管道

要手动检查滚动更新执行命令的状态:

$ kubectl rollout status deploy/your-deployment -n your-namespace

例如,如果您使用 ConfigMap 传递变量,您可以使用 Reloader在 configmap/secret 更改时自动执行滚动更新。

于 2021-01-28T11:22:46.200 回答