极大提升 Docker 的网络性能
运行在虚拟机(VM)上的 Docker 可直接使用云平台的 SDN,避免两层网络的重叠带来的数据包容量损耗;
每一台 Docker Instance 均可独享一个网卡的转发能力,并使用 IaaS 平台所有网络功能。
大幅简化 Docker 的系统配置
只需通过创建网卡、使用「Hostnic」插件将网卡逐一与 Docker Instance 挂载,便可以完成对 Docker 网络的配置;
支持 Docker Instance 独立挂载 EIP,独立配置防火墙策略(SG),及挂载为负载均衡 (LB)后端。
传统 Docker 部署方案的问题
1.严重的网络性能损耗
传统的基于 VM 的 Docker 部署方案,需要采用 Overlay 或 Bridge 网络插件实现 VM 内部的虚拟网络,多次虚拟化对性能带来了重重损耗。经测试,在云平台上直接使用 Docker Overlay 会损失近 3/4 的性能。
2.配置复杂度高
主流的 Docker 管理平台需要对 IP 地址做转换,以提供业务对内网和外网的地址。本身 Docker 实现这些功能就比较复杂,而在此基础上,Docker 如果运行在云平台上则还需要对云平台的 IP 再做一层地址转换,会带来额外的复杂度。
上述问题的根源在于,云平台和 Docker 平台都有自己的 SDN 实现,功能重合,使用时需要嵌套。
SDN 网络直通解决方案的优势
SDN 网络直通功能使 Docker 可直接使用 IaaS 平台的 SDN,代替其自身的网络功能,从而达到提高性能和简化使用的目地。SDN直通包含两个方面:
1.IaaS 平台网卡管理
提供网卡接口,让虚拟主机能够挂载多个网卡,这些网卡可以属于相同或者不同的网络。每个网卡能够管理自己的私网 IP、公网 IP、负载均衡器和防火墙等功能。
2.Hostnic 插件
Hostnic 是青云开发的 Docker 网络插件。在启动 Docker 实例的时候,可以挂载虚拟主机上的网卡, 并配置 IP 地址和路由。启动之后, Docker 实例就加入了云平台 SDN 提供的网络,能够使用云平台所有的网络功能。
7 步简单操作即可赋予 Docker 应用强大的网络功能
- 网络规划:对于一套基于 Docker 的业务系统,有两个网络需求:A. 管理网络, 用于部署和管理云主机;B. 用户网络,用于运行基于 Docker 的业务。
- 启动虚拟主机,并安装 Docker。
- 创建网卡, 并挂载到虚拟主机上。
- 启用并配置 Hostnic 插件,启动 Docker 实例。
- 添加 Docker 实例为负载均衡器后端。
- 绑定防火墙。
- 给网卡绑定公网 IP。
* SDN 网络直通所有组件及功能均不计费。
更多详情请参看《SDN 网络直通》用户指南。