检查 Kubernetes 在 CI/CD 管道中部署是否成功

Joh*_*aib 2 deployment continuous-integration azure kubernetes azure-aks

我有一个 Kubernetes 版本为 1.14.7 的 AKS 集群。

我已经构建了 CI/CD 管道以将新创建​​的映像部署到集群。

我正在使用 kubectl apply 使用新映像更新特定部署。有时,由于多种原因,部署会失败,例如 ImagePullBackOff。

在 kubectl apply 命令之后是否有一个命令可以运行来检查 Pod 创建和部署是否成功?

Cro*_*rou 6

为此,Kubernetes 有 kubectl rollout并且您应该使用选项status

\n\n
\n

默认情况下,“推出状态”将监视最新推出的状态,直到完成为止。如果您不想等待推出完成,则可以使用 --watch=false。请注意,如果新的推出在中间开始,则“推出状态”将继续监视最新版本。如果您想固定到特定修订版并在它被另一个修订版滚动时中止,请使用 --revision=N,其中 N 是您需要监视的修订版。

\n
\n\n

您可以在此处阅读完整说明

\n\n

如果您使用kubect apply -f myapp.yaml并检查rollout status您将看到:

\n\n
$ kubectl rollout status deployment myapp\nWaiting for deployment "myapp" rollout to finish: 0 of 3 updated replicas are available\xe2\x80\xa6\nWaiting for deployment "myapp" rollout to finish: 1 of 3 updated replicas are available\xe2\x80\xa6\nWaiting for deployment "myapp" rollout to finish: 2 of 3 updated replicas are available\xe2\x80\xa6\ndeployment "myapp" successfully rolled out\n
Run Code Online (Sandbox Code Playgroud)\n