centos上k8s安装成功标志是什么
小樊
34
2025-12-27 13:34:31
判定标准
- 所有节点状态为Ready:执行命令:kubectl get nodes,看到每个节点的 STATUS 为 Ready。
- 控制平面与核心系统组件运行正常:kube-system 命名空间下的核心 Pod(如 kube-apiserver、kube-controller-manager、kube-scheduler、etcd、CoreDNS、网络插件如 Calico/Cilium)均为 Running,且 READY 列显示期望副本数(如 1/1)。
- API Server 健康:本地探针返回 200,执行命令:curl -k https://localhost:6443/healthz 输出 ok;集群就绪探针:kubectl get --raw=‘/readyz?verbose’ 返回 ready。
- 节点上关键服务运行:systemctl status kubelet 为 active (running);容器运行时(如 containerd 或 docker)为 active (running)。
- 基础业务验证通过:部署测试应用(如 nginx),Service 可分配 NodePort/ClusterIP,能通过 : 访问;跨节点网络与 DNS 正常(如在测试 Pod 内 nslookup kubernetes.default.svc.cluster.local 能解析)。
快速自检命令
- 节点与组件概览:kubectl get nodes -o wide;kubectl get pods -n kube-system
- 控制平面就绪与健康:curl -k https://localhost:6443/healthz;kubectl get --raw=‘/readyz?verbose’
- 节点服务状态:systemctl status kubelet containerd(或 docker)
- 日志与事件:kubectl logs -n kube-system ;kubectl describe node ;kubectl get events --sort-by=‘.metadata.creationTimestamp’ -w
- 功能验证:kubectl create deployment nginx --image=nginx;kubectl expose deployment nginx --type=NodePort --port=80;kubectl get svc;curl http://:
常见异常与排查要点
- 节点 NotReady:优先检查 kubelet 与容器运行时是否运行(systemctl status kubelet/containerd)、节点资源与污点、以及 kubelet 日志(journalctl -u kubelet -f)。
- 核心组件异常(CrashLoopBackOff/ImagePullBackOff/Pending):kubectl describe pod -n kube-system 与 kubectl logs 查看事件与日志,确认镜像可达、资源配额与调度约束。
- API Server 不可达:本地执行 curl -k https://localhost:6443/healthz;必要时检查证书、端口与 kubeconfig 配置。
- 网络与 DNS 异常:确认 CNI 插件已部署且 Pod 就绪;在测试 Pod 内验证 nslookup kubernetes.default.svc.cluster.local 与跨节点 ping/访问 Service IP。