36 | 为什么说Kubernetes只有soft multi-tenancy?
该思维导图由 AI 生成,仅供参考
- 深入了解
- 翻译
- 解释
- 总结
Kubernetes网络隔离与NetworkPolicy实现原理 本文深入探讨了Kubernetes网络模型中的软多租户特性以及如何通过NetworkPolicy实现网络隔离。Kubernetes的网络方案注重容器之间的网络“连通”,而非“隔离”,因此被称为soft multi-tenancy。文章介绍了NetworkPolicy对象的定义和规则,以及网络插件如Calico和kube-router是如何通过生成iptables规则实现对Pod的隔离。同时,强调了要使NetworkPolicy在Kubernetes集群中生效,必须使用支持NetworkPolicy的CNI网络插件。此外,文章还提到了Flannel项目不支持NetworkPolicy,因此在使用Flannel的同时需要额外安装支持NetworkPolicy的网络插件。 在技术细节方面,文章详细解释了Linux内核中Netfilter设置的流入路径、流出路径和转发路径,以及iptables表的作用和工作原理。进一步阐述了CNI网络插件如何通过设置iptables规则实现对Pod的流入请求的拦截和隔离,以及如何判断允许或拒绝数据包的传输。最后,强调了不同的CNI网络插件可能采用不同的实现方式,但根本原理是相似的。 总之,本文通过深入剖析Kubernetes网络隔离的技术细节,为读者提供了对NetworkPolicy实现原理的全面了解,使其能够快速掌握Kubernetes网络隔离的关键概念和实现方法。 文章深入剖析了Kubernetes网络隔离的技术细节,介绍了软多租户特性和NetworkPolicy实现原理。强调了CNI网络插件的重要性,以及不同插件的实现方式。读者能够快速了解Kubernetes网络隔离的关键概念和实现方法。
《深入剖析 Kubernetes》,新⼈⾸单¥68
全部留言(35)
- 最新
- 精选
- 风轨job,cronjob这类计算型pod不需要也不应该对外提供服务,可以拒绝所有流入流量,提高系统安全。
作者回复: 对
2018-11-14121 - swordholderiptables -A FORWARD -d $podIP -m physdev --physdev-is-bridged -j KUBE-POD-SPECIFIC-FW-CHAIN 文中提到,上面这条iptables规则的作用是:“拦截”在同一个宿主机、接入同一个bridge上的容器发送过来的数据包。 iptables设置的是IP包被过滤处理的规则,而bridge是二层设备,数据包在bridge上的流动,如果受到上面规则的控制,就是说iptables还能设置二层链路的过滤规则?
作者回复: 文中提了,实际有ebtables的参与
2018-11-1412 - po老师你好,我想确认下基于ovs的网络,是不是不用iptables了,使用openflow实现networkpolicy,使用vni实现多租户,谢谢。
作者回复: iptables 在svc还会用到
2019-05-143 - OldGood老师,什么时候讲ingress?
作者回复: 很快
2018-11-151 - johnson.skiii张大请教一下;本来kube-proxy就会写大量的iptables规则,如果网络情况复杂,实施的networkpolicy又多的话,那么iptables会不会成为比较大的瓶颈,有什么好的解决方案吗?2018-12-17517
- helloworld文章中对iptables的讲解, 是我见过的对iptables讲解的最好的一个, 厉害2021-02-1813
- CYHhi,老师:请问我安照k8s官网拒绝所有进出流量,为什么该pod还是能ping通外部的ip呢?2018-11-2924
- Jerome2021-11-23,第四遍学习打卡。2021-11-2323
- lfn2020-04-06,打卡。2020-04-063
- heartbeat任何 Namespace 里的、携带了 project=myproject 标签的 Pod; namespaceselector应该是选择namespace的吧,project=myproject这个标签应该是匹配namespace的而不是匹配pod的,所以上面那个解释应该是携带了project=myproject 标签的所有namespace下的所有pod 不知道这个理解是否正确2019-07-2722