K8s集群某节点出现异常,新分配到node上面的pod不能ping通外部pod,同节点pod、宿主机IP也不行,外部pod也不可以ping通IP

这篇具有很好参考价值的文章主要介绍了K8s集群某节点出现异常,新分配到node上面的pod不能ping通外部pod,同节点pod、宿主机IP也不行,外部pod也不可以ping通IP。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

K8s集群某节点出现异常,新分配到node上面的pod不能ping通外部pod,同节点pod、宿主机IP也不行,外部pod也不可以ping通IP
首先对问题pod进行排查,发现他不能解析域名和svc,网路模式是IPVS的,集群内部可以ping通svc地址,我们中间件的pod来的,一开始怀疑是dns解析问题,查看了pod内部的dns解析文件内容
cat /etc/resolv.conf

IP地址和集群的dns地址一致,通过该节点其他pod对这个问题pod进行ping,发现还是不通,ping同节点其他pod是正常的,问题定位在这个pod上面,接着怀疑是svc未绑定问题,查看endpoint发现是绑定了pod的地址的,问题pod每次ping都是地址不可达,后将其切换至其他节点发现运行正常,也可以正常ping通其他pod,问题在节点上面,删建了一个deployment的pod,在该节点重新启动后故障现象和之前一样,问题现象明确:

1.问题节点旧pod是正常的,对外访问ping没问题
2.问题节点新建pod是异常的,网络模式像是none的,当时也去节点的docker inspect 容器 上面去查过这个容器的网络模式是host的和其他容器一致,ping不出去,也进不来,端口telnet也是一样
3.迁到其他节点没问题,问题在node上面

最终在网络上面发现IP出现问题,环境是云平台虚拟机,上面有2张网卡,一张是内网的,一张平台上的弹性地址,发现这个弹性地址不见了,查看网卡内容,该网卡是dhcp的,网卡状态UP,查看systemctl status NetworkManage,发现一直提示IPV4 DHCP timeout类型错误,查看路由表,发现全局路由默认是走这张网卡的,异常节点的路由表是没有全局路由的,0.0.0.0是不存在的,所以导致ping出去地址不可达,因为pod也是默认走这个网卡出去的,至此问题溯源成功,联系云平台进行虚机后台重启,启动后网卡正常,pod访问正常。(注:一定要云平台后台关机重启,测试过reboot启动后还是不行)
###这里没分析到为什么旧的pod是正常网络的,可以ping出去,也正是这个问题一开始干扰了问题排查思路,应该是calico网卡维护了一部分路由表信息吧??文章来源地址https://www.toymoban.com/news/detail-774963.html

到了这里,关于K8s集群某节点出现异常,新分配到node上面的pod不能ping通外部pod,同节点pod、宿主机IP也不行,外部pod也不可以ping通IP的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • k8s集群node节点运行kubectl命令

            在容器化项目部署中,某些应用需要部署到指定的机器上(涉及机器信息收集,然后生成license,机器授权等),所以需要在k8s集群的node节点上,手动执行kubectl命令。         具体的操作步骤如下: (1)在node节点执行任意kubectl命令,例如:kubectl get nodes,可以看到

    2024年02月14日
    浏览(46)
  • k8s集群—node节点的删除与添加

    在搭建集群过程中,有时候会遇到一个节点处于ready状态,另一个节点处于notready状态,需要把node节点从集群中删除后再次加入。 如果需要在k8s集群中删除节点,首先需要在master节点上删除该节点的相关数据,再删除该节点,接着在该节点上进行reset操作,接着删除相关文件

    2024年02月17日
    浏览(50)
  • K8S集群搭建(多master多node节点)

    目录           一 部署环境 关闭防火墙 设置主机名hostname,管理节点设置主机名为 master  配置hosts主机名解析 配置免密登陆 关闭交换分区 配置内核参数,将桥接的IPv4流量传递到iptables的链 开启ipvs 二 配置软件源 升级centos系统内核 配置时间同步 安装docker服务以及K8S  查

    2024年02月06日
    浏览(40)
  • k8s集群Node节点管理:节点信息查看及节点label标签管理

    如果是kubeasz安装,所有节点(包括master与node)都已经可以对集群进行管理 如果是kubeadm安装,在node节点上管理时会报如下错误 只要把master上的管理文件 /etc/kubernetes/admin.conf 拷贝到node节点的 $HOME/.kube/config 就可以让node节点也可以实现kubectl命令管理 1, 在node节点的用户家目录创建

    2024年02月03日
    浏览(44)
  • K8S集群Node节点NotReay状态故障排查思路

    在K8S集群中,经常会出现Node节点处于NotReady的状态,当Node节点处于NotReady状态时,会导致该Node节点上的所有Pod资源停止服务,对整体应用程序会产生一定的影响。 在一个Node节点中可以运行多个Pod资源,每一个Pod资源中可以运行一个容器或者多个容器,同时共享一个网络存储

    2024年01月22日
    浏览(48)
  • Kubeadm安装单master多node节点K8S集群

    记录在刚搭建的3个虚拟机里成功安装K8S1.25版本集群的步骤 由于是成功创建后才记录的博客,只记录了操作步骤,过程中执行命令后的截图会有部分缺失,或者换成了文字。 操作系统:centos7.9 每个服务器配置: 4Gib内存/4vCPU/80G硬盘 网络:NAT模式 K8S集群角色 IP 主机名 安装的

    2024年01月24日
    浏览(58)
  • 【云原生】二进制部署k8s集群(中)搭建node节点

    在上文已经成功部署了etcd分布式数据库、master01节点, 本文将承接上文的内容,继续部署Kubernetes集群中的 worker node 节点和 CNI 网络插件 kubelet 采用 TLS Bootstrapping 机制,自动完成到 kube-apiserver 的注册,在 node 节点量较大或者后期自动扩容时非常有用。   Master apiserver 启用 T

    2024年02月09日
    浏览(53)
  • K8S集群中Node节点资源不足导致Pod无法运行的故障排查思路

    故障一:Pod数量太多超出物理节点的限制 每一台Node节点中默认限制最多运行110个Pod资源,当一个应用程序有成百上千的Pod资源时,如果不扩容Node节点或者修改最大Pod数量限制,那么就会导致部分Pod资源无法正常运行,因为节点已经没有资源可以被调度了。 解决思路就是扩容

    2024年02月02日
    浏览(41)
  • 云原生 黑马Kubernetes教程(K8S教程)笔记——第一章 kubernetes介绍——Master集群控制节点、Node工作负载节点、Pod控制单元

    参考文章:kubernetes介绍 本章节主要介绍应用程序在服务器上部署方式演变以及kubernetes的概念、组件和工作原理。 在部署应用程序的方式上,主要经历了三个时代: 传统部署:互联网早期,会直接将应用程序部署在物理机上 优点:简单,不需要其它技术的参与 缺点:不能为

    2024年02月04日
    浏览(49)
  • k8s删除node节点

    如果不做上面的操作的话会导致这个节点上的pod无法启动,具体报错信息为:networkPlugin cni failed to set up pod \\\"alertmanager-main-1_monitoring\\\" network: failed to set bridge ad has an IP address different from 10.244.5.1/24 ,意思是已经集群网络cni已经有一个不同于10.244.51.1/24 的网络地址,所以需要执行

    2024年02月08日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包