赞
踩
一、k8s网络通信
a.容器间通信:同一个pod内的多个容器间的通信,通过lo即可实现;
b.pod之间的通信:pod ip <---> pod ip,pod和pod之间不经过任何转换即可通信;
c.pod和service通信:pod ip <---->cluster ip(即service ip)<---->pod ip,它们通过iptables或ipvs实现通信。
d.Service集群与外部通信
二、CNI网络接口
flannel:支持地址分配,不支持网络策略,flannel默认使用 vxlan的方式进行后端网络传输机制的,ifconfig可以看到有个flannel.1接口,这个是封装了网络隧道的接口,还有个cni0接口,这个是在flannel.1隧道上通信的接口。
flannel支持多种后端:
VxLAN:
a.vxlan 叠加网络模式
b.Directrouting #直接路由模式
vxlan:扩展的虚拟局域网
V虚拟的
X扩展的
lan局域网
host-gw: Host Gateway 直接路由模式,不推荐,只能在二层网络中,不支持跨网络,如果有成千上 万的Pod,容易产生广播风暴
UDP: 一般不使用这种方式,性能差
calico:部署使用麻烦,支持地址分配,支持网络策略,calico可以实现三层网络路由,性能比flannel好;caclio:有着很强大的控制平面,有自己的面向工具使用,直接在这个层面控制网络参数的配置和使用,caclio是基于bjp的网络控制协议,通过自动学习来判定和发现有哪些路由条目需要设置,flannel是自动生成的,caclio是直接学习的
三、Calico网络优化
1、IPIP网络:
流量:tunlo设备封装数据,形成隧道,承载流量。
适用网络类型:适用于互相访问的pod不在同一个网段中,跨网段访问的场景。外层封装的ip能够解决跨网段的路由问题。
效率:流量需要tunl0设备封装,效率略低
连接方式:
2、BGP网络:
在安装calico网络时,默认安装是IPIP网络。calico.yaml文件中,将CALICO_IPV4POOL_IPIP的值修改成 "off",就能够替换成BGP网络。
流量:使用路由信息导向流量
适用网络类型:适用于互相访问的pod在同一个网段,适用于大型网络。
效率:原生hostGW,效率高
连接方式:
作者微信:luckylucky421302
精彩文章推荐
2022,这些技术决定你的薪资|K8S+微服务+DevOps等前沿涨薪技术最佳实践
基于Jenkins+git+harbor+Helm+k8s+Istio构建DevOps流水线
基于k8s+Prometheus+Alertmanager+Grafana构建企业监控告警系统
k8s七层代理Ingress-nginx基于cookie、请求头、权重实现灰度发布
修改k8s kube-proxy代理-由iptables模式变为ipvs模式
2022,这些技术决定你的薪资|K8S+微服务+DevOps等前沿涨薪技术最佳实践
每周好课推荐
目前有以下几个畅销和高口碑课程,在平台所有课程中排在第一:
【1】Docker+k8s+DevOps架构师课程:基础+高级->
https://edu.51cto.com/topic/4735.html
【2】k8s+Istio+DevOps+微服务架构师实战课程->
https://edu.51cto.com/topic/5168.html
【3】k8s架构+CKA+CKS实战培训->
https://edu.51cto.com/topic/5326.html
【4】【2022新版】CKA+CKS认证考试->
https://edu.51cto.com/topic/5263.html
【5】K8S安全认证课程CKS+k8s运维->
https://edu.51cto.com/topic/5206.html
点亮,服务器10年不宕机
点击阅读原文 | 了解更多
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。