批量删除 Job

删除所有以 foo-bar 开头的 Job:

1
kubectl get jobs -o name | grep 'foo-bar' | xargs kubectl delete

命令说明:

部分 作用
kubectl get jobs -o name 列出所有 Job 名称
grep 'foo-bar' 过滤以 foo-bar 开头的 Job
xargs kubectl delete 批量删除

预览删除列表(不执行删除):

1
kubectl get jobs -o name | grep 'foo-bar'

指定命名空间:

1
kubectl get jobs -n your-namespace -o name | grep 'foo-bar' | xargs kubectl delete -n your-namespace

设置默认 StorageClass

1. 查看现有 StorageClass

1
kubectl get storageclass

2. 设置默认 StorageClass

my-storage-class 设置为默认:

1
kubectl patch storageclass my-storage-class -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'

3. 移除其他默认标记

如果之前有其他默认 StorageClass,需要移除:

1
kubectl patch storageclass old-default-storage-class -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'

4. 验证设置

1
kubectl get storageclass

查看 my-storage-class 的注解是否为 true

注意事项

  • 批量删除操作不可逆,执行前务必确认
  • 同一时间只能有一个默认 StorageClass
  • 修改 StorageClass 需要相应的集群权限