k8s不求甚解系列:巧用no-headers批量删除某一命名空间下的资源

背景

笔者面临这么一种k8s操作的场景:我期望批量删除集群中的某一个命令空间下的所有pod。

#一开始我是通过以下命令实现的
kubectl get po -n xxx|awk '{print $1}'|xargs kubectl delete po -n xxx

这时候发现会出席一异常报错,后来发下是因为,有标题行存在,导致程序异常

[root@testhd-server kubernetes]# kubectl get po -n kube-system
NAME                                  READY   STATUS    RESTARTS       AGE
coredns-65c54cc984-6x9jb              1/1     Running   1              24h
coredns-65c54cc984-94s64              1/1     Running   1              24h
etcd-yg2-control                      1/1     Running   11 (23h ago)   23h
kube-apiserver-yg2-control            1/1     Running   8 (23h ago)    24h
kube-controller-manager-yg2-control   1/1     Running   12 (23h ago)   24h
kube-proxy-n969x                      1/1     Running   1              24h
kube-scheduler-yg2-control            1/1     Running   12 (23h ago)   24h

修复

[root@testhd-server kubernetes]# kubectl get po -n kube-system --no-headers
coredns-65c54cc984-6x9jb              1/1   Running   1              24h
coredns-65c54cc984-94s64              1/1   Running   1              24h
etcd-yg2-control                      1/1   Running   11 (23h ago)   23h
kube-apiserver-yg2-control            1/1   Running   8 (23h ago)    24h
kube-controller-manager-yg2-control   1/1   Running   12 (23h ago)   24h
kube-proxy-n969x                      1/1   Running   1              24h
kube-scheduler-yg2-control            1/1   Running   12 (23h ago)   24h

–no-header可以删除标题行,这个flag在kubectl和helm中都存在,所以可以使用如下命令清理某个namespace下的所有pod

kubectl get po -n xxx --no-headers|awk '{print $1}'|xargs kubectl delete po -n xxx

请把xxx替换成自己需要的namespace

  • 13
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值