K8S集群部署,flannel网络问题,各个节点之间的Pod无法ping通

本文详细描述了在裸机搭建的Kubernetes集群中,如何通过排查kube-controller-manager配置、调整网络分配参数并重启节点,最终解决不同节点Pod间网络连通性问题的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:在使用裸机搭建的K8S集群中,同一节点上的Pod可以ping通,但是分布在各个节点之间的Pod无法ping通。

服务器系统信息:

问题排查:

查看所有Pod的状态信息:kubectl get pods -A

发现主节点和工作节点的flannel网络出现问题:

 查阅资料,之后顺利解决:

1.查看kube-controller-manager.yaml

vi /etc/kubernetes/manifests/kube-controller-manager.yaml

2.在容器命令数组中,添加参数如下:

--allocate-node-cidrs=true
--cluster-cidr=10.244.0.0/16

3.重启各个节点的kubelet

systemctl restart kubelet

结果如下:

 

 工作节点的仍然处于CrashLoopBackOff状态

4.将整个集群重启之后,工作节点也好了。

 

 

### Kubernetes 1.21 版本新加入节点域名解析失败解决方案 Kubernetes 集群中的 DNS 是过 CoreDNS 提供服务的,默认情况下,CoreDNS 负责处理集群内部的服务发现和域名解析。如果在 Kubernetes 1.21 中新增加的节点无法解析域名,则可能是由于以下几个原因引起的。 #### 可能的原因分析 1. **CoreDNS 未正常运行** 如果 CoreDNS 的 Pod 出现异常状态(如 CrashLoopBackOff 或者 Pending),则可能导致整个集群内的域名解析功能失效[^1]。 2. **网络插件配置错误** Kubernetes 使用 CNI 插件来管理容器网络。如果新的节点上未正确安装或配置网络插件(例如 Calico、Flannel 等),可能会导致 DNS 请求在网络层面上被阻断[^2]。 3. **kubelet 服务未启动成功** 新增节点上的 `kubelet` 服务如果没有正确启动并注册到 API Server 上,也可能影响该节点与其他组件之间信,从而间接导致 DNS 解析问题[^3]。 4. **resolv.conf 文件设置不当** 容器内的 `/etc/resolv.conf` 应指向 CoreDNS 所监听的地址(常是 `cluster-ip`)。如果此文件的内容不正确,比如包含了外部 DNS 地址或其他无效条目,则会干扰正常的名称解析过程[^4]。 --- #### 排查步骤与修复方法 ##### 1. 检查 CoreDNS 运行状况 确认当前部署环境中是否存在健康的核心 DNS 组件实例: ```bash kubectl get pods -n kube-system -l k8s-app=kube-dns ``` 上述命令应返回至少一个处于 Running 状态下的 CoreDNS Pod 实例;否则需进一步排查日志信息找出具体故障所在位置,并采取相应措施恢复其运作能力。 ##### 2. 核实网络性 测试目标主机能否访问到指定的 ClusterIP 对应于 CoreDNS 服务端口 (默认为53/tcp),可执行如下操作验证连接情况: ```bash nc -zv <coredns-clusterip> 53 ping <coredns-clusterip> ``` ##### 3. 查看 Kubelet 日志记录 登录至出现问题的新服务器终端界面下输入以下指令获取更多关于本地代理进程的工作详情以便定位潜在隐患源头: ```bash journalctl -u kubelet.service --no-pager | tail -n 50 ``` ##### 4. 修改 resolv.conf 设置 进入任意有问题的应用容器内部环境编辑路径名为 /etc/resolv.conf 文档内容替换原有数据仅保留一行server字段值设为核心 dns ip 即可完成调整工作流程图解说明如下所示: 假设已知 core dns service cluster ip address is : 10.x.y.z; 那么最终修改后的效果应该是这样的样子 : ```plaintext nameserver 10.x.y.z search default.svc.cluster.local svc.cluster.local cluster.local options ndots:5 ``` --- ### 总结 过对以上几个方面的逐一核查可以有效解决大部分因各种因素引发出来的此类现象的发生概率大大降低同时提高了整体系统的稳定性表现水平.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

新停浊酒杯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值