kubernetes 如何通过一个命令删除所有命名空间部署相关的所有Pod?

pokxtpni  于 2023-08-03  发布在  Kubernetes
关注(0)|答案(1)|浏览(119)

如何使用一个命令删除与所有命名空间部署相关的所有pod?但不删除部署本身?
请注意,在其他命名空间中,我有几十个部署,我需要一些通用的东西,以便能够在任何情况下捕获所有部署。
例如,我有下面的部署,我想删除它们的所有pod(在本例中为9个pod),而不删除部署。
我不想重新部署(这会更改我不想要的副本集ID),只是删除它们以强制系统根据部署规范使用相同数量的副本重新创建它们。此外,扩展到副本0是不可接受的,因为它不是一个命令,然后如果我想缩减,其中一些有1个其他2个副本等。

kubectl get deployments.apps
NAME                                          READY   UP-TO-DATE   AVAILABLE   AGE
pm-bulk-reporter                              2/2     1            1           131d
pm-resource-monitor                           2/2     1            1           131d
sec-access-mgmt                               3/3     1            1           131d
sec-admin-user-management                     2/2     1            1           131d

字符串

wf82jlnq

wf82jlnq1#

要删除属于Deployment的所有Pod,您可以尝试以下操作:

kubectl -n my-namespace delete pods `kubectl -n my-namespace get pods -o=jsonpath='{.items[?(@.metadata.ownerReferences[0].kind=="ReplicaSet")].metadata.name}'`

字符串

相关问题