如何检查Debian上的K8s安装
导读:如何检查Debian上的K8s安装 在Debian系统上完成Kubernetes(K8s)安装后,需通过节点状态、控制平面、网络、存储、系统服务等多维度检查,确保集群正常运行。以下是具体步骤: 1. 节点状态检查 核心命令:kubectl...
如何检查Debian上的K8s安装
在Debian系统上完成Kubernetes(K8s)安装后,需通过节点状态、控制平面、网络、存储、系统服务等多维度检查,确保集群正常运行。以下是具体步骤:
1. 节点状态检查
核心命令:kubectl get nodes -o wide
- 作用:查看所有节点的状态(Ready/NotReady)、版本、操作系统、内核版本及内部/外部IP。
- 预期结果:所有节点状态为
Ready,且版本一致(避免版本冲突)。
补充命令: kubectl describe node < node-name>:查看节点详情(包括资源分配、污点、事件等),确认无异常警告。kubectl top nodes:查看节点CPU、内存使用率(需提前安装Metrics Server),确保使用率低于80%(避免资源瓶颈)。
2. 控制平面组件检查
控制平面是K8s的核心,需确保其所有组件正常运行:
核心命令:kubectl get pods -n kube-system -l tier=control-plane
- 作用:列出控制平面Pod(如
kube-apiserver、kube-controller-manager、kube-scheduler、etcd)。 - 预期结果:所有Pod状态为
Running,且副本数符合预期(如单节点部署为1,多节点为对应副本数)。
补充命令: kubectl logs -n kube-system < control-plane-pod-name>:查看控制平面Pod日志(如kube-apiserver),排查启动错误。
3. etcd集群健康检查
etcd是K8s的键值存储数据库,其健康直接影响集群稳定性:
核心命令(需登录etcd节点执行):
ETCDCTL_API=3 etcdctl \
--endpoints=https://127.0.0.1:2379 \
--cacert=/etc/kubernetes/pki/etcd/ca.crt \
--cert=/etc/kubernetes/pki/etcd/server.crt \
--key=/etc/kubernetes/pki/etcd/server.key \
endpoint health
- 作用:检查etcd节点的健康状态。
- 预期结果:所有etcd节点返回
healthy,且无高延迟(latency)或连接错误。
4. 网络插件检查
网络插件(如Flannel、Calico)负责Pod间通信,需确保其正常运行:
核心命令:kubectl get pods -n kube-system -l app.kubernetes.io/name=<
network-plugin>
- 作用:查看网络插件Pod(如
kube-flannel-ds、calico-node)的状态。 - 预期结果:所有网络插件Pod状态为
Running,无重启次数过多(RESTARTS为0或偶数次)。
补充命令: kubectl get networkpolicies -A:检查网络策略是否生效(若有配置)。kubectl exec -it < test-pod> -- nslookup kubernetes.default:测试CoreDNS解析(确保DNS服务正常)。
5. 存储检查
存储是Pod持久化的基础,需检查PV(持久化卷)、PVC(持久化卷声明)状态:
核心命令:
kubectl get pv -o wide:查看PV的绑定状态(Bound/Available),确认容量是否符合预期。kubectl get pvc -A:查看PVC是否已绑定PV(Status为Bound),无Pending状态的PVC。kubectl describe pvc < pvc-name> -n < namespace>:查看PVC事件(如ProvisioningFailed),排查存储分配问题。
6. 系统服务与内核参数检查
K8s依赖kubelet和容器运行时(如Containerd)的正常运行,且需正确配置内核参数:
核心命令:
systemctl status kubelet containerd:检查kubelet和containerd服务状态(应为active (running))。journalctl -u kubelet --since "24h":查看kubelet日志(最近24小时),排查启动错误或警告(如failed to start container)。sysctl net.ipv4.ip_forward:检查网络转发是否启用(应为net.ipv4.ip_forward = 1),确保Pod间网络通信正常。
通过以上步骤,可全面检查Debian上K8s安装的正确性及集群健康状态。若发现问题,可根据命令输出的错误信息针对性排查(如网络插件未运行、etcd健康异常、节点资源不足等)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何检查Debian上的K8s安装
本文地址: https://pptw.com/jishu/742592.html
