加入收藏
您好,欢迎访问中国开源云联盟官网!

当前位置:

DaoliNet 为 Docker 容器量身打造动态敏捷的可编程网络开源发布
2016-11-29

2016年5月27日下午,道里云公司在北京白石桥举行“DaoliNet开源发布会暨Docker社区沙龙”,道里云CEO毛文波博士郑重宣布,为Docker容器的应用量身打造的动态敏捷的可编程网络技术正式开源!

DaoliNet是道里云公司自主研发的为基于Docker的应用平台量身打造的动态敏捷**网络技术,DaoliNet将以全新的技术变革,通过技术开源模式,为全球Docker容器网络贡献价值。本次DaoliNet开源,将核心技术免费对外发布,供全球用户免费使用和共同完善。

发布会现场,Docker公司中国区代表,国内的十数家Docker创业公司创始人,一批关注Docker的创投资本,多位企业级用户代表,十数位Docker、SDN及云计算技术大牛和社区**,多位大公司云计算技术高管,多家圈内媒体等皆悉数到场

       在活动开始前在炼石网络CipherGateway CEO创始人白小勇的主持下,参会嘉宾依次进行自我介绍。



      中国开源云联盟秘书长杨丽蕴女士做开场致辞,表达了对道里云公司数年磨一剑的Docker网络技术的赞赏与认同,祝愿DaoliNet与Docker社区不断壮大。表示愿意一同努力,推动中国开源产业和标准化事业发展,共同为打造我国良性开源生态圈添砖加瓦;同时,积极推动我国开源产业与国际接轨合作,共谱开源产业发展新篇章。



     道里云CEO毛文波博士就DaoliNet开源项目的由来、技术特性,与现有多种Docker网络方案相比的独有差异化优势,现场就Docker网络当前与未来SDN发展势态及一些技术问题与参会嘉宾进行了互动讨论。作为演讲结尾,毛文波博士庄重宣布DaoliNet技术正式开源!

      紧接着道里云工程师在现场进行DaoliNet系统的演示,并与现场嘉宾进行热烈的问答互动。


      在短暂的茶歇之后,在峰瑞资本张矩幽默风趣的主持下,Docker的从业者,***,Docker用户以及创投资本,畅所欲言了对Docker容器的看法。其中,Docker公司中国区代表杜旭阳Alan发表了《Docker在中国的发展构想》的主题演讲,指出了Docker未来在中国的发展方向及重点。紧接着中油瑞飞公司代表从私有云企业用户角度提出Docker对成熟的商业套件的支持情况问题。Docker创业公司,包括希云,数人云,博云等公司代表,以及逐鹿安全社区代表Joe,分别就该问题从Docker企业与用户角度展开了激烈讨论,多方观点碰撞,引起现场掌声不断。

      发布会进行到**,VMware、轻元 、好雨云、博云、EitCloud等Docker创业公司代表以及CSDN代表从各自的专注领域,以及发展方向进行了闪电演讲。

      DaoliNet开源发布会暨Docker社区沙龙在现场嘉宾意犹未尽的讨论对话中圆满结束,全体嘉宾合影留念,共同祝福来自中国原创的Docker容器网络开源项目日益发展壮大!



会议ppt资料:










毛文波 道里云公司CEO——DaoliNet技术分享

Docker如火如荼!

为何如火如荼?我认为Docker容器管理平台向世人揭示了容器应用虚拟化本质所体现的轻灵性:身轻如燕,即用即建,打包交付!居然还有用毕杀掉一说!当然此说法不能是Build, Ship, Run ...的信达雅翻译:-) 。Docker通过管理容器说明了PaaS层须向上层SaaS提供支撑业务逻辑所需的能力服务,这不同于IaaS层仅提供资源类服务。容器轻灵的属性也在后续出现的容器管理平台如K8S,Mesos,Docker Swarm中得到体现,如Kubernetes体现的是启动大量高可用冗余备份,Mesos体现的是在服务器集群上智能地调度容器分布部署,而Docker Swarm则着重标记容器的服务内容。我们可以从这三个平台的侧重看到它们都在设法让所管理的容器摆脱IaaS层的物理资源属性,让云服务带有更多的业务逻辑语意。除了众所周知的Web服务器,数据库,中间件等能力,PaaS层的业务逻辑能力还包括但不限于:利用IaaS资源池弹性扩展Scale-out服务,动态异地容灾备份,安全监控,NFV(网络功能虚拟化)服务链(Service Chaining),身份认证,等。Docker的优势是可以将这些能力进行打包交付。


Docker自出世伊始就一直在呼唤网络连通方案,至今已出现四种开源技术:


  • Weave: UDP Overlay封包,早期版本在用户态做,后升级至内核态VXLAN

  • Flannel: UDP Overlay,也有用户态UDP及内核态VXLAN两种版本

  • Docker Libnetwork Overlay: 内核态VXLAN

  • Calico: 服务器跑BGP路由算法铺平三层连通


从叙述中可见前三种是很同质的技术,我们都知道MAC-in-UDP封包显然既可连通网络又可隔离租户。那么Calico呢?Calico在一个铺平的三层网络中做BGP路由,利用了一个非标准做法:ARP欺骗,容器内部cache的全部目的MAC地址皆为容器所在服务器的MAC,于是路由的第一跳就会到达作为虚拟路由器的服务器。这样做法还有什么含义?当然就是把容器固定在了服务器,容器逻辑网络和服务器物理网络紧密耦合,动弹不得。


以上Docker网络解决方案还有一个共性:都是在网络底层(L2,L3)提供传统网络连接,这样的连接其实整合了网络作为资源(IaaS)。的确与容器PaaS管理平台Docker Swarm, K8S, Mesos提供差异化服务形成比较明显的反差,上述Docker网络方案无疑都很好地为容器整合了网络资源,然而我们看不到它们对PaaS平台体现出什么差异之处,即便是在IaaS层评估,它们都是将服务器Linux网络协议栈通过配置成为固定连通的资源性网络。而若在PaaS层能力服务方面评估,我们就更看不见这些网络资源整合技术如何利用了容器轻灵属性,动态性,可封装性所释放的PaaS power,向PaaS用户提供支撑业务的能力。其实连通容器并不难,让管理平台在服务器上配置封包点即可(Weave, Flannel, Docker Libnetwork Overlay),甚至为了让虚拟路由器工作,直接把路由器的MAC地址写死到容器的ARP缓存中(Calico)!如果说Docker Swarm,Kubernetes,Mesos,甚至OpenStack,等都正在用非同质技术竞争容器管理,提供差异化服务,那么在网络方面我们没能看到差异化竞争也在这些Docker网络连通方案中发生。


DaoliNet是什么


先简要叙述OpenFlow是什么。源于斯坦福大学的一个网络技术创新:网络的控制面与网络的数据面分离。为什么要分离?举个栗子:还在用古董版车载导航吗?先下载地图,听它指挥吧!如今咱们中国日新月异,马路拉链可不少,不被导航到沟里算你运气!下载地图就是一种控制面与数据面不分离的情况,陷在数据中的控制无法对应动态变化中的路况,导航不仅是不认识路,而是要知道那条路畅!路况是实时动态变化的,当然要听在线导航的,控制器,请下车!


请网络控制器离开服务器(路由器)和Docker网络有什么关系?关系真的很大!控制器离开服务器后,Docker对容器轻灵的管理不仅再是Orchestrator**任务了,网络控制器也可发担起有的责任了!怎么讲?


还是举个栗子:


当某服务容器被大流量访问时,按现有控制数据非分离网络,基本处理思路是让被访问容器发现异常报告管理平台,管理平台部署异常处理措施。异常处理措施很可能需要加强额外容器兵力援助,那么对新容器进行网络配置是不可避免的。当然可以用IaaS方法做,但不容易,可能属于手动配置技巧,会很慢,也很容易出错。我们还要注意到容器是轻量级微服务的,在一个容器中既提供业务服务又准备异常检测,是与轻量级微服务做法背道而驰的。


而OpenFlow控制器会在第一时间感知网络请求出现的异常状况,控制器可以为此状况启动若干容器,在网络拓扑上将这些新起的容器部署到目标容器的前端,有的做初步分析,如简单丢弃Syn flood,有的做深包检测,由于深包检测需要大量CPU资源,所以还可把它们部署成LB服务状态,有的还可以要做入侵检测,是否发生了针对TLS/SSL的攻击?补充说明,针对TLS/SSL的若干攻击比如DROWN/Padding-Oracle/Lucky13攻击等,攻击者需要向Server发起大量的非正常TLS请求,在现有的主流防火墙产品上想要灵活添加这样的检测规则是有难度的,而OpenFlow控制器却可用SDN技术灵活添加检测规则,在攻击发生的第一时间感知到攻击流量,这就是网络可编程的。



此图是DaoliNet的架构图,体现了DaoliNet网络控制器在PaaS平台中与容器编排管理平台各司其职分担责任的逻辑构造。在管理容器方面,编排器已经不是一个人在战斗了,网络控制器也加入了战斗行列!



总结


DaoliNet的独到之处:抓住Docker容器的轻灵性,让网络控制器介入容器生命周期管理,提供满足应用策略的PaaS服务,支撑业务的能力服务,而非停留在提供网络资源层面的IaaS服务。


DaoliNet + Docker = 轻灵的CPU + 轻灵的网络 + 各司其职的控制 = 适合于PaaS的网络。