道里云开源DaoliNet高效动态Docker网络

daolinet.png

DaoliNet是高效和动态Docker网络
DaoliNet是一个软件,旨在提供Docker容器效率和动态连接,这是适合于Docker容器的微服务工作负荷的重量轻且短暂性质定义网络(SDN)的系统。

高级特征:
    []资源高效:容器连接消耗,当容器不主动沟通的小主机资源,而且可以立即切换到提供完整的连接能力。 这是在主机CPU资源的容器有效地利用相同的方式。 你获得更多的服务器资源。[/][]分布在任何地方:Docker服务器可以在公共云,如AWS在自己的数据中心的笔记本电脑或PC你的办公室或家中,服务器的防火墙内,或虚拟机。[/][]网络虚拟化:您可以选择任何CIDR IP地址,你的容器和容器可以保持IP地址移动物理位置后保持不变。[/][]使用开放式的V-Switch纯软件实现(OVS):提供网络功能的分布式交换机,路由器,网关和防火墙。 在插件的即插即用的简单系统的部署。[/]

要了解更多关于DaoliNet: http://www.daolinet.org 
 
Docker在高效和动态网络的需求
提供高效的微服务容器时,可以在生命周期短暂的高度:大量的Docker动态云集装箱的需要快速建立连接,以及频繁更换连接状态。 传统的数据平面的路由学习技术要求泊坞窗服务器经常学习和更新了大量动态的容器,这转化为较低的高效利用服务器资源的路由信息。 迄今为止,网络是Docker的核心特征是相对不成熟,仍处于开发状态。

架构
DaoliNet的网络体系结构是基于OpenFlow的标准。 它采用的OpenFlow控制器作为智能控制平面,和Open-V开关(OVSes)来实现数据路径。 该OpenFlow的控制器在DaoliNet是逻辑上集中的实体,但实际一组HA分布式Web服务类似物。  OVSes是无所不在提供Linux内核,因此可以应用在所有的Docker服务器。

在DaoliNet网络中,所有Docker服务器都在其中无论是身体或VPN连接的以太网。 每个Docker服务器充当所有在该服务器上托管的容器的工作负载的虚拟路由器。 然而,这些虚拟路由器的OpenFlow技术工作,他们不运行任何路由算法。 在一个容器发起连接,所涉及的虚拟路由器将实时由OpenFlow的控制器配置成建立路由。
dotnet.png


怎么运行的
当容器开始在Docker服务器作为源路由器将发出一个PacketIn请求的OpenFlow控制器的连接时,OVS。 该PacketIn请求是刚刚从启动容器中的第一个数据包。 在OpenFlow的控制器,知道所有Docker服务器,路由器OpenFlow技术在系统中,看到PacketIn,可以识别它承载容器作为目标工作负载的另一个Docker服务器。 该第二Docker服务器是为连接目的地路由器。 所述的OpenFlow控制器将有一对PacketOut流,一个用于源服务器,和另一个用于目标服务器的响应。 这些PacketOut流建立在两个容器之间热插拔路线,见下图:
dnet2.png

当一个连接变得空闲并且在一个时间阈值,则热插拔路线将超时和删除以释放服务器的资源。 由于热插拔路由建立快速,删除不活动的连接可以在重新连接被重新热插拔。 因此Docker服务器作为DaoliNet路由器工作在无连接,无资源消耗的风格。 网络资源利用率的这种风格完全匹配利用服务器CPU在该容器的时候,闲置集装箱消耗很少的服务器资源. DaoliNet是一种有效的和动态的网络技术用于连接Docker容器。

简单的网络为集装箱
在DaoliNet,在系统Docker服务器处于未会意酮另一个的一个简单的状态,完全独立于彼此。 这个体系结构不仅节省了资源利用率,但更重要的是Docker服务器之间的独立关系极大地简化了资源的管理。 扩展资源池是为服务器添加到游泳池和通知的OpenFlow控制器的即插即用的打法一样简单。 需要在路由器之间没有复杂的路由表查找和更新。 也没有必要Docker服务器成对运行一些包的封装协议,它不仅是资源利用效率低,而且会抵消网络诊断和故障排除工具,如跟踪路由。
更多了解官网: http://www.daolinet.org/html/technology.html 
Github项目地址https://github.com/daolinet/daolinet

0 个评论

要回复文章请先登录注册