Kubernetes1.2如何使用iptables

本文详细解析了 Kubernetes 1.2 版本中 kube-proxy 如何通过 iptables 维护节点防火墙规则。kube-proxy 使用 iptables 提升性能,要求节点操作系统具备特定条件。文章深入介绍了 kube-proxy 创建自定义链和规则的过程,以及如何实现服务负载均衡和会话保持。
摘要由CSDN通过智能技术生成

本次分析的kubernetes版本号:v1.2.1-beta.0。
Kubernetes中kube-proxy组件负责维护NODE节点上的防火墙规则和路由规则,Kube-proxy有两种实现方式,一种是通过iptables,一种是通过userspace,在1.2中将使用iptables作为首选,可以大幅提升性能,下面看看kube-proxy组件是如何操作iptables的。
kube-proxy要求NODE节点操作系统中要具备/sys/module/br_netfilter文件,而且还要设置bridge-nf-call-iptables=1,如果不满足要求,那么kube-proxy只是将检查信息记录到日志中,kube-proxy仍然会正常运行,但是这样通过Kube-proxy设置的某些iptables规则就不会工作。
在源代码中有检查iptables版本是否低于1.4.11的校验,如果iptables版本低于1.4.11,那么不能使用-C/–check这个参数,这样可以保证kube-proxy对iptables版本的向下兼容性。
Iptables默认的数据包流向图如下图所示:
这里写图片描述
在iptables模式下,kube-proxy使用了iptables的filter表和nat表,并且对iptables的链进行了扩充,自定义了KUBE-SERVICES、KUBE-NODEPORTS、KUBE-POSTROUTING和KUBE-MARK-MASQ四个链,另外还新增了以“KUBE-SVC-”和“KUBE-SEP-”开头的数个链。
在iptables表中,通过iptables-save可以看到在filter表和nat表中创建

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值