k8s集群一些常用命令记录

2020-06-01  本文已影响0人  wowshiwoniu

日常命令记录

1. 对集群内的pod数量排序
kubectl get pods -A | awk '{print $1}' | uniq -c | sort -n
2. 获取集群内的所有镜像列表

参考网址

kubectl get pods --all-namespaces -o jsonpath="{.items[*].spec.containers[*].image}"

jsonpath 解释如下:

注意: 注意: 按名字获取单个 Pod 时,例如 kubectl get pod nginx,路径的 .items[*] 部分应该省略,因为返回的是一个 Pod 而不是一个项目列表。

3. 观察pod部署状态
kubectl get pods --watch
或
kubectl get pods -w

该命令会监听pod部署状态,及时更新刷新,不必手动去刷新 kubectl get pods

4、创建Role并绑定

--dry-run 只是打印命令到控制台,并不真正执行
> 将打印命令重定向输入到文件内

# 创建role,具有所有资源的访问和操作权限,将运行命令导入到yaml文件并不执行
kubectl create role "tmp:reader" --verb="*" --resource="*" -n xxx --dry-run -o yaml > role.yaml

# 创建rolebinding,将role绑定到指定的namespace下,--dry-run 只是打印命令,并不真的执行
kubectl create rolebinding "tmp:reader-bind" --role="tmp:reader"  -n xxx --user=xxx --dry-run -o yaml

# 创建role
kubectl create role "tmp:reader" --verb="*" --resource="*" -n xxx
# 创建rolebinding
kubectl create rolebinding "tmp:reader-bind" --role="tmp:reader"  -n xxx --user=xxx 
# 删除role
kubectl delete role "tmp:reader" -n xxx
# 删除rolebinding
kubectl delete rolebinding "tmp:reader-bind"  -n xxx
上一篇 下一篇

猜你喜欢

热点阅读