关注公众号获取更多学习资源

常用命令介绍

查看资源使用情况



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


更多文章请扫一扫

 扫描下面二维码关注公众号获取更多学习资源

kubernetes入门必备常用命令_命名空间