- 1、本文档共44页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
容器SDN技术与微服务架构实践
大纲
?SDN
?容器与网络
?开源容器网络方案
?Flannel
?Calico
?Weave
?七牛实践与案例分析
SDN
软件定义网络
网络结构的灵活性
容器与网络
?相比传统虚机
?每个容器的职能更少
?容器之间的关系更加复杂
?网络端点数量上升
?容器的生命周期更短
Pipework
DockerBridge
?原理:
?Linuxbridge二层包交换
?iptablesNAT地址转换
?ip_forward路由转发
DockerBridge
?重启后IP发生变化
?IP无法跨主机灵活迁移
?NAT模式下,跨主机间通信会隐藏地址信息
?NAT性能损耗
?Bridge内流量难以精细隔离
?需额外管理端口冲突
?blahblah…
Flannel
控制平面
转发平面-udp
转发平面-vxlan
Calico
?将操作系统协议栈化为Router
?模拟传统网络拓扑实现思路做路由转发
控制平面
转发平面/隔离
Weave
?分布式Router(container)
?Router间建立TCP学习路由,形成控制平面
?Router间建立UDP/vxlan通道,形成数据转发平面
控制平面
?分布式Router之间FullMesh结构
?通过路由协议自主学习路由
?自主进行节点拓扑计算与收敛
转发平面-pcap
?从网桥设备上通过pcap获取原始帧
?wRouter查询下一跳地址,将原始帧封成UDP发送
?对端解封UDP,将原始帧注入网桥设备
转发平面-odp
?wRouter不参与实际流量转发
?wRouter通过控制odpFlow规则达到路由目的
?odp间通过vxlan隧道互联
服务发现/负载均衡
?DNSServer监听在docker0
?Container的dnsserver指向docker0
?DNSServer从wRouter中查取
子网隔离
?支持子网级隔离
?依赖容器的网络配置权限
?仅子网内流量可走weavebridge
?非法流量会被导入默认网关(即docker0)
DockerBridge
Flannel
Weave
Calico
隔离粒度
粗
无
粗,子网级
细
地址管理
子网内分配
etcd
IPAM
IPAM
性能
NAT损耗
udp差vxlan好
pcap差odp好
好
服务发现负载均衡
无
无
DNS
无
控制平面
子网分配二层学习
etcd
TCPmesh路由协议
RR/BGPmesh
转发平面
Bridge+NAT
UDP/vxlan隧道
UDP/vxlan隧道
Linux协议栈
对基础架构的要求
IP可达
IP可达
IP可达
二层互通或BGP打通
业务需求
?适应复杂异构的基础架构
?端点可迁移,并保持IP不变
?服务发现、负载均衡
?精细均衡(L4/L7)
?对业务无侵入性(无需端口配置)
?端到端流量精细ACL
转发平面
?对原有物理基础网络侵入小
?offload隧道计算量提升性能
?硬件厂商支持相对完善
控制平面
?容器和虚机的一点不同
?容器间依赖关系相对固定(职责细化的结果)
?单机可推演可能产生的outbound
?实际产生的outbound可能产生的outbound
OpenFlow
?表达能力强
?HeaderFields几乎可以匹配任意字段
?配合Table和Priority可实现复杂的处理逻辑
?流表淘汰机制:
?被动:Idle/HardTimeout
?主动:FlowDelete
?支持第三方扩展,例如Nicira
OpenFlow
控制平面
?多控制器实例一组
?负载均衡?高可用
?多组分区域管辖
服务发现/负载均衡
?分布式负载均衡器
?在本机即被代理,无额外内网流量开销
?IP级负载均衡
?业务无需配置端口(后端监听即用)
?L7自定义配置丰富
?支持常用Nginx配置
?可指定访问某个后端
?etc.
安全组
?支持Pod/Service/SecurityGroup-Po
文档评论(0)