写在前面
- 被问到这个问题,整理相关的笔记
- 当 kube-proxy 模式设置为 iptables 的时候,通过 SVC 服务发布入口如何到达 Pod?
- 博文内容涉及:
- 问题简单介绍
- 三种常用的服务发布方式到Pod报文路径解析
- 当前集群为版本为
v1.25.1
- Demo 演示使用了
ansible
- 理解不足小伙伴帮忙指正
- 食用需要了解
iptables
生命的火花不是目标,而是对生活的热情。——《心灵奇旅》
kube-proxy 使用 iptables 模式时,SVC服务发布入口如何到达 Pod ?
kube-proxy 是 Kubernetes 中的一个组件,它负责将服务的请求路由到后端 Pod。当使用 iptables 模式时,kube-proxy 会在每个节点上创建 iptables 规则,将服务的请求路由到 后端Pod。
具体来讲,iptable 会创建一些自定义链,这些链最开始通过 iptables 内置链(INPUT
,FORWARD
)发生跳转,然后在自定义的链中匹配请求的数据包, 执行对应的动作,比如到其他的自定义链跳转,负载均衡操作(基于iptables 负载均衡,使用随机模式,指定概率 ),以及 DNAT
和 SNAT
操作