参考
kubectl https://kubernetes.io/zh-cn/docs/reference/kubectl/
-o custom-columns json格式
Deployment
/*公共*/
kubectl get deployment -n beta-net -o custom-columns=Name:.metadata.name,Namespace:.metadata.namespace,
# 注释
Annotations:.metadata.annotations
#名称、命名空间
Name:.metadata.name,Namespace:.metadata.namespace,
#副本数
Replicas:spec.replicas
#挂载卷
Volumes:.spec.template.spec.volumes,
VolumeMounts:.spec.template.spec.containers[*].volumeMounts
#生命周期
Lifecycle:.spec.template.spec.containers[*].lifecycle
#健康检查
LivenessProbe:spec.template.spec.containers[].livenessProbe,
ReadinessProbe:spec.template.spec.containers[].readinessProbe,
StartupProbe:spec.template.spec.containers[].startupProbe
#资源限制
Limits:spec.template.spec.containers[].resources.limits,
Request:spec.template.spec.containers[].resources.requests
#默认调度器
SchdulerName:.spec.template.spec.schedulerName
#nodeName调度策略
NodeName:spec.template.spec.nodeName,
#nodeSelector调度策略
NodeSelector:spec.template.spec.nodeSelector,
#nodeAffinity调度策略
NodeAffinity:.spec.template.spec.affinity.nodeAffinity
# Annotations 注释
Annotations:.spec.template.metadata.annotations
# 节点亲和性
P2级别
kubectl get deployment -n beta-net -o custom-columns=Name:.metadata.name,Namespace:.metadata.namespace,NodeAffinity:.spec.template.spec.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[0] |grep P2
/*批量删除*/
#一次性过滤出删除
kubectl get pods -n beta-net |grep OutOf|awk '{print $1}'|xargs -I {} kubectl delete pod {} -n beta-net
#for 循环删除
for i in `kubectl get pod -n beta-net |grep OutOfcpu|awk '{print $1}'`;do kubectl delete pod -n beta-net $i;done
/*根据pod名批量重启deployment*/
抓取
k get pod -n beta-net -o wide --show-labels |grep k8s-master|head -20|awk '{print $10}' |awk -F "," '{print $1}'|cut -d= -f 2 > /root/label_initial.log
->
重启
for i in `cat /root/label_initial.log`;do kubectl rollout restart deployment -n beta-net $i;done
回滚
]# k -n beta-istio rollout undo deployment betadatasyncapi
-o custom-columns-file=template.txt 文件过滤
# cat template.txt
# 过滤健康检查
NAMESPACE NAME REPLICAS LIVENESSPROBE READINESSPROBE
metadata.namespace metadata.name spec.replicas spec.template.spec.containers[].livenessProbe spec.template.spec.containers[].readinessProbe
kubectl get deploy -n NAMESPACE -o custom-columns-file=template.txt
查看Node节点资源
k describe node |grep -A 3 "Resource"
k top node --sort-by='cpu'
k get node -o wide
k describe node |grep Non-terminated
查看node 节点上所有的pod(默认limit 110个)
阿里云ACK,默认最大2000个Node