Kubernetes 命名空间中所有部署的kubectl卷展栏状态

Kubernetes 命名空间中所有部署的kubectl卷展栏状态,kubernetes,rollout,Kubernetes,Rollout,我的命名空间中有许多部署对象。我想同时为所有这些产品运行kubectl卷展状态。因此,我希望命令仅在所有卷展栏完成或出现错误时退出。我怎样才能做到这一点 到目前为止,我唯一得到的是: kubectl get deploy -o name | xargs -n1 -t kubectl rollout status 但我希望有更聪明的方法。您可以使用这个简单的检查: #!/bin/bash deploy=$(kubectl get deploy -o name) for i in $deploy;

我的命名空间中有许多部署对象。我想同时为所有这些产品运行
kubectl卷展状态
。因此,我希望命令仅在所有卷展栏完成或出现错误时退出。我怎样才能做到这一点

到目前为止,我唯一得到的是:

kubectl get deploy -o name | xargs -n1 -t kubectl rollout status

但我希望有更聪明的方法。

您可以使用这个简单的检查:

#!/bin/bash
deploy=$(kubectl get deploy -o name)
for i in $deploy; do kubectl rollout status $i -w --timeout=30s; done

您还可以使用本文中的线索构建更高级的脚本

所以我想我的想法是最好的

kubectl get deploy --output name | \
  timeout -t 300 \
    xargs -n1 -t \
      kubectl rollout status

我认为你做不到。部署相关吗?如果是这样,定义舵图可能会有意义部署在舵图中,但我没有在舵图上使用
--wait
,因为它有一个bug->