kubernetes集群常见问题排查

1. 确定由于NotReady节点

kubectl get nodes -owide | grep NotReady

2. 确定有无异常Pod

kubectl get po --all-namespaces | egrep -v  '(Running|Complete|ark-diagnose|NAME)'

3. 确认集群组件状态(deprecated in v1.19+)

kubectl get cs
# STATUS为Healthy为正常

4.确认节点资源水位情况

kubectl top node
# 节点资源水位有无超限(CPU使用率大于80%,内存使用率超过80%)

image

5. 查看集群异常事件信息

kubectl get events --all-namespaces | egrep -v '(Normal|NAMESPACE)' | awk '{print $1,$5,$4}' | grep -v BackendInvalid | sort | uniq | sort -k 3

6. 查看pod重启次数

kubectl get pod -A -owide
# 正常应为个位数或为0

7. 确定具体问题与处理

kubectl -n <NAMESPACE> describe <TYPE> <RESOURCE_ID>
# 关注Events事件,Condition条件,Limit/Requests是否超限等

kubectl -n<NAMESPACE> logs <POD_ID> [-c <CONTAINER_NAME>]
posted @ 2021-09-21 19:30  AlexG  阅读(52)  评论(0编辑  收藏  举报