关注公众号,获取更多学习资源
常用命令介绍
查看资源使用情况
kubectl get nodes --no-headers | awk '{print $1}' | xargs -I {} sh -c "echo {} ; kubectl describe node {} | grep Allocated -A 5 | grep -ve Event -ve Allocated -ve percent -ve --;"
调试coredns
kubectl run -it --rm --restart=Never --image=infoblox/dnstools:latest dnstools
查看CPU分配情况
kubectl get nodes --no-headers | awk '{print $1}' | xargs -I {} sh -c 'echo -n "{}\t" ; kubectl describe node {} | grep Allocated -A 5 | grep -ve Event -ve Allocated -ve percent -ve -- | grep cpu | awk '\''{print $2$3}'\'';'
查看内存分配情况
kubectl get nodes --no-headers | awk '{print $1}' | xargs -I {} sh -c 'echo -n "{}\t" ; kubectl describe node {} | grep Allocated -A 5 | grep -ve Event -ve Allocated -ve percent -ve -- | grep memory | awk '\''{print $2$3}'\'';'
查找非 running 状态的 Pod
kubectl get pods -A --field-selector=status.phase!=Running | grep -v Complete
获取前一个pod的日志
kubectl -n namespace logs my-pod –previous
查看Pod详情
kubectl describe pod podname -n namespace
进入pod(容器),或执行命令:
kubectl exec -it podname -n namespace [-c containername] -- /bin/sh [CMD]
查看node节点标签
kubectl get node --show-labels
查看资源对象简写
kubectl api-resources
查看命名空间
kubectl get namespace
查看default命名空间的所有资源
kubectl get all [-n default]
删除命名空间
kubectl delete namespace app
删除deployment控制器
kubectl delete deployment nginx [-n default]
查询deployment
kubectl get deployment
设置node标签
kubectl label node xxx.xxx type=nginx
查看node标签
kubectl get node --show-labels
删除标签
kubectl labels node xxx.xxx <key>-
设置node污点(新的pod无法调度到该node)
kubectl taint nodes node1 key=value:NoSchedule
设置node污点(新的pod无法调度到该node,,旧的也会被驱逐)
kubectl taint nodes node1 key=value:NoExecute
设置node污点(尽量不调度到该节点)
kubectl taint nodes node1 key=value:PreferNoSchedule
更多文章请扫一扫
扫描下面二维码关注公众号,获取更多学习资源