工具
### 获取命名空间下使用的镜像
```
#!/bin/bash
#命名空间
namespace=$1
if [ -z "$namespace" ];then
echo "Please usage: bash $0 <namespace>"
exit 0
fi
#获取pod的名字
pod_name=$(kubectl get pod -n$1 |grep -v NAME |awk '{print $1}')
#获取pod对应的镜像信息
for pod in $pod_name
do
image=$( kubectl get pod -n$1 $pod -ojson | jq .spec.containers | grep "\<image\>"| awk '{print $2}' | sed 's/,//g' )
echo -e "\t $pod: $image"
done
```
### 重启npds
```
kubectl get pod -n npds|grep -v NAME|awk '{print $1}'|xargs kubectl delete pod -n npds --grace-period=0 --force
```
### 清除磁盘不足时的驱逐pod
```
kubectl get pod -n kube-system|grep Evicted |awk '{print $1}'|xargs kubectl delete pod -n kube-system --grace-period=0 --force
```
### k8s强制删除Terminating 状态命名空间失败 kubesphere
```
kubesphere-monitoring-federated Terminating 7h28m
并且用
kubectl delete nskubesphere-monitoring-federated --force --grace-period=0
也无法删除时
kubectl edit ns kubesphere-monitoring-federated
把
finalizers:
- finalizers.kubesphere.io/namespaces
去掉则可正常删除
```