面向Docker的覆盖网络搭建探究*
2015-07-03张青刘剑朱晓民
电信工程技术与标准化 2015年9期
关键词:服务
张青,刘剑,朱晓民
(1 北京邮电大学网络与交换技术国家重点实验室,北京 100876; 2 东信北邮信息技术有限公司,北京 100191)
1 引言
云计算产业正处在高速发展的时期,各种新技术层出不穷,Docker就是这样一款颠覆性的产品。云计算的服务模型大致分为3类,分别为软件即服务(SaaS)、平台即服务(PaaS)和基础设施即服务(IaaS),正是Docker的出现让PaaS受到了极大的关注,也很大程度上引领了PaaS的架构走向。
Docker是一款类似于LXC(Linux Containers,Linux容器)的开源应用容器引擎,它的轻量、快速和强大的可移植性吸引了众多的开发者,并逐渐成为了PaaS容器的主流。Docker使用镜像技术实现了其高可移植性,开发者将他们的应用和全部的环境依赖打包成一个镜像,这个镜像可以被发布到任何一台安装了Docker的机器上,并运行起来成为容器,向外提供服务。最重要的是,镜像不依赖于任何语言、框架或系统,独立成为一个运行单元,根本上解决了云计算中复杂的环境依赖关系。
Docker容器使用沙箱机制在机器上创建出了一个独立的空间,即使处于同一台机器,不同的容器之间也是相互隔离的,它们之间的通信只能像两台机器一样通过网络互访问来实现,这样保证了应用之间不会互相干扰。然而现在的应用越来越复杂,不可能只是运行在一个容器中,而是多个容器相互协作来实现应用的功能,这样容器与容器之间的网络互访问至关重要。
然而,Docker容器本身的网络结构导致实现网络互联较为困难。根据Docker主机通过端口号来……
登录APP查看全文
