首页主机资讯CentOS K8s安装后如何进行测试

CentOS K8s安装后如何进行测试

时间2025-11-20 16:23:03发布访客分类主机资讯浏览1166
导读:CentOS 上 Kubernetes 安装后的验证与测试清单 一 基础连通性与组件状态检查 检查节点与控制面组件状态 查看节点是否 Ready:kubectl get nodes 查看系统组件是否就绪:kubectl get pod...

CentOS 上 Kubernetes 安装后的验证与测试清单


一 基础连通性与组件状态检查

  • 检查节点与控制面组件状态
    • 查看节点是否 Readykubectl get nodes
    • 查看系统组件是否就绪:kubectl get pods -n kube-system
    • 查看 kubelet 服务:systemctl status kubelet(应为 active (running)
  • 若节点为 NotReady,优先检查并安装 CNI 网络插件(如 Flannel),安装后再次观察节点状态是否变为 Ready

二 部署应用与访问测试

  • 部署一个 Nginx 应用并暴露访问
    • 部署:kubectl create deployment nginx --image=nginx --replicas=2
    • 暴露为 NodePortkubectl expose deployment nginx --type=NodePort --port=80
    • 获取访问端口:kubectl get svc nginx,记录 NodePort(例如 3xxxx
    • 访问测试:
      • 集群内:kubectl run -it --rm test-nginx --image=busybox:1.36 --restart=Never -- wget -qO- http://nginx.default.svc.cluster.local
      • 集群外:curl http://< 任意节点IP> :< NodePort>
  • 预期结果:页面返回 Welcome to nginx!,说明 Pod 调度、Service 负载均衡、网络连通性均正常。

三 网络与服务发现验证

  • 验证 Pod 间网络Service DNS
    • 查看 Pod IP:kubectl get pods -o wide
    • Pod 间连通性(ICMP/端口):
      • kubectl exec -it < pod-name> -- ping < 目标PodIP>
      • kubectl exec -it < pod-name> -- nc -zv < 目标PodIP> 80
    • DNS 解析测试:
      • kubectl exec -it < pod-name> -- nslookup kubernetes.default.svc.cluster.local
      • kubectl exec -it < pod-name> -- nslookup nginx.default.svc.cluster.local
  • 验证 Service 与 Endpoints
    • kubectl get svc nginxkubectl get endpoints nginx,确认 Endpoints 中有后端 Pod IP
    • 从问题 Pod 内测试访问 Service ClusterIP:kubectl exec -it < pod-name> -- nc -zv < svc-cluster-ip> 80
  • 验证 kube-proxy 工作正常
    • kubectl get pods -n kube-system | grep kube-proxy
    • 异常时查看日志:kubectl logs < kube-proxy-pod> -n kube-system
  • 预期结果:Pod 之间可互通、服务名可解析、Service 后端有 Endpoints 且可访问。

四 弹性自愈与伸缩测试

  • 自愈能力
    • 删除一个 Pod:kubectl delete pod < nginx-pod-name>
    • 观察重建:kubectl get pods,应被 Deployment 自动拉起,数量恢复为 replicas 设定值
  • 水平伸缩
    • 扩容:kubectl scale deployment nginx --replicas=5
    • 验证:kubectl get pods 数量变为 5
  • 预期结果:删除后自动重建;扩容后 Pod 数量Service 后端同步更新。

五 常见故障快速排查

  • 节点 NotReady:未安装或未生效 CNI(如 Flannel),安装后复查:kubectl get nodeskubectl get pods -n kube-flannel
  • Service ClusterIP 不可达:检查 Service 配置与 Endpoints 是否为空;在 Pod 内 nslookupnc 测试;查看 kube-proxy 状态与日志
  • Ingress 502:核对 Ingress 的 host/path/service/port;确认后端 Service/Endpoints 正常;查看 Ingress Controller 日志
  • 镜像拉取失败:提前导入所需镜像或配置国内镜像源,避免节点加入/启动因拉取超时失败。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS K8s安装后如何进行测试
本文地址: https://pptw.com/jishu/752162.html
Kubernetes在CentOS上的兼容性如何 centos crontab如何设置任务执行目录

游客 回复需填写必要信息