k8s pod和service网络暴露详解
更新时间:2023年11月22日 10:25:08 作者:moon
这篇文章主要介绍了借助iptables的路由转发功能,打通k8s集群内的pod和service网络,与外部网络联通,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
k8s pod 和 service 网络暴露
- 借助
iptables的路由转发功能,打通k8s集群内的pod和service网络,与外部网络联通
# 查看集群的 pod 网段和 service 网段 kubectl -n kube-system describe cm kubeadm-config networking: dnsDomain: cluster.local podSubnet: 10.244.0.0/16 serviceSubnet: 10.96.0.0/12 # 内核模块 sysctl -a | grep 'net.ipv4.ip_forward = 1' echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p # 在k8s节点 192.168.1.79 节点上开启转发 192.168.0.0/16 网段为服务器网段,利用 192.168.0.0/16 网段某个服务器作为路由器 iptables -P FORWARD ACCEPT iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o eth0 -j SNAT --to-source 10.244.0.0/16 iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o eth0 -j SNAT --to-source 10.96.0.0/12 # 这个不确定是否执行 iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -j MASQUERADE # 测试,在 192.168.0.0/16 网段中找一个非k8s集群的服务器,加上路由,进行测试 # 现找个pod ip ping一下是否通不通 route add -net 10.244.0.0 netmask 255.255.0.0 gw 192.168.1.79 dev eth0 # 加上这个路由之后, 再测试看是否通 # 为了能让办公人员的浏览器可以访问到, 需要再核心交换机上配置规则 # 核心交换机 route add -net 10.244.0.0 netmask 255.255.0.0 gw 192.168.1.79 dev eth0 route add -net 10.96.0.0 netmask 255.240.0.0 gw 192.168.1.79 dev eth0
以上就是k8s pod 和 service 网络暴露详解的详细内容,更多关于k8s pod网络暴露的资料请关注脚本之家其它相关文章!
相关文章
解决k8s namespace 一直处于 Terminating 状态的问题
这篇文章主要介绍了k8s namespace 一直处于 Terminating 状态的解决方法,以下的 tool 为 Terminating 状态的 namespace,下面相关的一些操作记得将 tool 修改成自己的 namespace 名称,需要的朋友可以参考下2022-10-10
Kubekey安装Kubernetes-1.24.8的详细过程
这篇文章主要介绍了Kubekey安装Kubernetes-1.24.8的详细过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-05-05


最新评论