当前位置: 首页 > news >正文

k8s 部署后 node 节点无法访问是怎么回事?

K8s 部署后 Node 节点无法访问,多数情况是网络配置、核心组件状态或安全策略拦截导致的问题,需要按照从底层网络到上层服务的顺序逐一排查。

先说结论:Node 节点无法访问通常源于网络不通、kubelet 服务异常或防火墙拦截,建议优先检查节点状态和组件日志。

  • 先确认:检查 kubectl get nodes 状态及网络连通性
  • 先处理:重启 kubelet 服务并修正防火墙规则
  • 再验证:通过 telnet 或 curl 测试端口及服务访问

命令速用版

# 查看节点状态
kubectl get nodes# 检查 kubelet 服务状态
systemctl status kubelet# 查看 kubelet 日志
journalctl -u kubelet -f# 检查防火墙规则
iptables-save | grep NodePort

为什么会这样

Kubernetes 集群中,Node 节点需要与 Master 节点保持通信以汇报状态和接收任务。如果底层网络不通,或者节点上的 kubelet 代理服务未运行,Master 就无法感知节点存活。此外,网络插件(如 Calico、Flannel)负责分配 Pod IP,若配置缺失会导致网络不可达。云环境的安全组或本地防火墙也可能直接丢弃进入节点的流量,导致端口无法访问。

分步处理

1. 检查节点状态
在 Master 节点执行 kubectl get nodes。如果状态为 NotReady,说明节点未正常汇报心跳。若节点列表中完全没有该 Node,可能未成功加入集群,需使用 kubeadm join 重新加入。

2. 检查核心组件服务
登录故障 Node 节点,检查 kubelet 和 kube-proxy 服务。使用 systemctl status kubelet 查看状态。如果服务未运行,尝试重启。查看日志 journalctl -u kubelet,关注是否有证书过期、配置错误或 CNI 配置缺失的报错。

3. 检查网络连通性
在 Node 节点上 ping Master 节点 IP,确保物理网络通畅。检查 Master 节点的 etcd 和 kube-apiserver 服务是否正常运行,这两个组件异常会导致所有节点失联。

4. 检查防火墙与安全组
如果是云服务器,检查控制台安全组是否放行了节点端口(如 NodePort 范围 30000-32767)。本地防火墙可使用 iptables -L 查看,必要时临时关闭测试。对于 NodePort 无法访问,需确认 iptables 中是否有 KUBE-NODEPORTS 规则。

5. 检查网络插件配置
查看 /etc/cni/net.d 目录下是否有网络配置文件。如果日志提示"Unable to update cni config: No networks found",说明网络插件未正确安装或配置丢失,需重新部署网络组件。

怎么验证是否生效

修复后,再次执行 kubectl get nodes 确认状态变为 Ready。在集群外部使用 telnet <节点 IP> <NodePort> 测试端口连通性。尝试在集群内创建测试 Pod,确认能否正常调度到该节点并拉取镜像。

常见坑

  • Master 节点默认有污点,普通 Pod 无法调度,不要误认为是节点故障。
  • 云厂商安全组规则未更新,导致外部流量被拦截。
  • kube-proxy 模式切换可能导致部分节点 NodePort 不通,需检查日志。
  • DNS 配置错误会导致服务域名无法解析,影响内部访问。

参考来源

  • K8s 部署后 Node 节点不能访问问题的科普性解析
  • K8s 1.22.17 中 NodePort 端口不通?可能是 kube-proxy 模式惹的祸 (附详细排查步骤)
  • k8s 部署 node 节点网络不通
  • k8s 无法连接 node 节点
  • K8s 中 NodePort 无法访问的终极排查指南:从网络策略到生产环境优化 - Leo_Yide - 博客园
  • kubernetes(K8S) 容器部署,重新启动后,node 节点提示 notready 无法正常工作。
  • K8S 线上集群排查,实测排查 Node 节点 NotReady 异常状态
  • k8s service nodePort 无法访问的问题解决
  • K8s NodePort 访问故障排查
  • K8s 集群看不到 node

原文链接:https://www.zjcp.cc/ask/10459.html

http://www.jsqmd.com/news/781012/

相关文章:

  • Spell UI:基于Next.js与Tailwind CSS的高阶React组件库实践
  • OpenClaw Monitor 3D:基于Three.js的AI智能体实时3D监控平台
  • 避开这些坑,你的小型定焦镜头设计才能成功:以6mm F4镜头为例谈实战经验
  • SAP APO CIF队列堵塞?别慌!手把手教你用SMQ1/SMQ2和/n/SAPAPO/cq定位核心故障单元
  • 开源学习资源库 mega-itmo:聚合高校课程资料与工具链的工程实践
  • 成都H型钢 批发零售均可 非标定制加工 全品类型钢源头供应商 - 四川盛世钢联营销中心
  • 2026英文论文降AI实战SOP:保留原格式,5款工具亲测压到7%
  • 2026年知名的快团团眼镜分销代理/光学眼镜分销代理优选公司推荐 - 行业平台推荐
  • 成都H型钢 国标全规格现货 钢厂直供 工程采购一站式配送 - 四川盛世钢联营销中心
  • 别只盯着硬件!用Python/C#玩转ZLG、创芯CAN盒的二次开发实战
  • 保姆级教程:在华为eNSP上复现校园网综合实验(含Telnet、ACL、动态NAT全配置)
  • ARM编译器命令行选项详解与嵌入式开发优化实践
  • 开源深度研究代理模型Tongyi DeepResearch技术解析
  • 2026年热门的马鞍山老房翻新装修/亳州新房装修热门公司推荐 - 品牌宣传支持者
  • 2026年评价高的西安氨氮降解剂/西安消泡剂/西安聚合稀酰胺厂家哪家好 - 品牌宣传支持者
  • 2026年推荐大庆岩土工程勘察/大庆工程勘察稳定合作公司 - 行业平台推荐
  • 腾讯 Hy3 Preview(Free)技术全解:295B MoE 架构与免费能力深度剖析
  • GPU加速优化框架cuGenOpt的设计与性能优化
  • 应对海外AIGC检测:英文论文AI率飙到94%?5款降AI工具深度实测
  • jq命令行工具:动态更新JSON对象
  • 2026年靠谱的供热管网节能改造/工业节能改造/公共机构节能改造高评分公司推荐 - 品牌宣传支持者
  • 2026年推荐一家黑龙江基坑监测/黑龙江岩土工程勘察/黑龙江观测井勘测高评分公司推荐 - 品牌宣传支持者
  • 为AI智能体部署本地深度研究引擎:OpenClaw与LDR集成指南
  • 2026年比较好的铜陵室内装修/马鞍山装修设计/池州室内装修/亳州装修设计可靠服务公司 - 行业平台推荐
  • 深入AutoSar诊断协议栈:当ECU报故障时,FiM模块是如何悄悄“阉割”你车上的功能的?
  • 热力学第二定律不只是考试重点:从卡诺循环到芯片散热的真实挑战
  • ARM内存访问描述符解析与优化实践
  • 告别软件切换!用uTools插件化工作流,5分钟搞定日常高频小任务
  • Android 14 AOSP编译踩坑记:手把手解决 ‘bazel: no such file or directory‘ 报错
  • 2026年靠谱的亳州装修设计/马鞍山装修设计/滁州装修设计/亳州老房翻新装修推荐榜单公司 - 行业平台推荐