k8s service IP不能ping通?

小丫2年前技术文章2069

1、先看下serviceIP是怎么来的?

serviceIP是serviceController生成的,参数--service-cluster-ip-range string会配置在controller-manager上,serviceController会在这个参数指定的cidr范围内取一个IP

image.png

2、为什么不能ping?

serviceIP是虚拟的地址,没有分配给任何网络接口,当数据包传输时不会把这个IP作为数据包的源IP或目的IP。

kube-proxy在iptables模式下,这个IP没有被设置在任何的网络设备上,ping这个IP的时候,没有任何的网络协议栈会回应这个ping请求。

可以查看kube-proxy的服务的配置文件,核查kube-proxy的代理模式。mode处不配置,默认为iptables模式

image.png

image.png

进入容器查看配置文件详细内容

image.png

image.png

在iptables模式时,clusterIp会在iptables的PREROUTING链里面用于nat转换规则中。

而在ipvs模式下,会使用在ipvs模块的ipvs规则转换中。

在ipvs模式下,所有的clusterIp会被设置在node上的kube-ipvs0的虚拟网卡上,这个时候去ping是可以通的。

image.png

image.pngimage.png

相关文章

kubernetes调度和调度器

一、Kubernetes调度Scheduler 是 kubernetes 的调度器,主要的任务是把定义的 pod 分配到集群的节点上。听起来非常简单,但有很多要考虑的问题:公平:如何保证每个节点都能被...

Nacos服务公网环境登陆报密码错误问题排查

Nacos服务公网环境登陆报密码错误问题排查

问题现象nacos服务内网可以正常登录,如下:走公网代理出来之后,无法正常登录,报错"用户名密码错误"排查步骤链路分析首先确认公网代理的链路:域名—>haproxy—>nginx—>...

Prometheus集成pushgateway监控k8s集群

Prometheus集成pushgateway监控k8s集群

Prometheus部署环境介绍本文的k8s环境是通过二进制方式搭建的v1.20.13版本清单准备注意集群版本的坑,自己先到Github上下载对应的版本。注意: 集群版本在v1.21.x之前需要注意下...

压测实操--kafka-consumer压测方案

压测实操--kafka-consumer压测方案

环境信息:操作系统centos7.9,kafka版本为hdp集群中的2.0版本。Consumer相关参数使用Kafka自带的kafka-consumer-perf-test.sh脚本进行压测,该脚本参...

MySQL主从部署(同步+半同步)

一、环境规划1.1服务器规划服务器 IP 版本 配置 Mysql 端口 角色172-16-104-8 172.16.104.8 CentOS release 6.8 (Final) 4c8g 5.7....

Oracle上云找云掣

背景介绍:随着公有云技术成熟、稳定,越来被大中企业接受。自建IDC机房大成本投入终被云的高效方便稳定所替代。企业基于0racle核心的业务系统势必上云,企业面临0racle如何上云,上云后如何保障数据...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。