您的位置: 网界网 > 周报全文 > 正文

[周报全文]容器战争

2015年07月15日 14:30:40 | 作者:CNW.com.cn | 来源:网界网

摘要:Docker还会继续成为有关容器报道的头条,但是进入2015年,我们将会看到更多的容器,Docker不再是唯一的主角了。

标签
容器
Docker

容器技术(Container),特别是Docker,今天已经热得不能再热了。尽管还处在测试阶段,但财富500强企业都开始利用Docker,将其服务器、数据中心和云应用进行“容器化”。Docker公司负责服务和技术支持的副总裁James Turnbull称,在Docker 1.0尚未发布前,就有三家大银行已经将其用于生产环境了。

Docker与容器因何大热?

一旦你了解了Docker能做什么,也就很容易明白它为何是如此受到欢迎了。Parallels负责服务器虚拟化的CTO James Bottomley认为,从技术上讲,已经使用了多年的虚拟机(VM)管理程序Hypervisor(例如Hyper-V、KVM和Xen等)主要是基于仿真虚拟硬件的。也就是说,它们对系统的要求很高。而容器则主要基于分享操作系统。容器显然比Hypervisor更瘦身、更有效率。容器不对硬件进行虚拟化,而是驻留在一个Linux实例上。这等于说,你可以抛弃掉99.9%没用的虚拟机废料,只保留一个小而干净的胶囊用来容纳你的应用。

此外,据Bottomley说,一个经过整体调谐的容器系统,可将Xen或KVM虚拟机上的服务器实例数量增加4~6倍。换句话说,无须额外投入,用户就可在同样的硬件上,将服务器应用实例的数量至少翻一倍。“Docker虽然本身不是容器技术,但它是一个应用打包和编排系统,需要利用容器技术来实现其功能。假如底层操作系统不能提供容器技术,那么Docker就无法工作。” Bottomley说。

利用Docker,你可以在最少数量的服务器硬件上运行大量服务器应用实例。这意味着数据中心可以在每年的电费、硬件购买,以及维护成本方面省下数百万美元。

Docker的成功之路

Docker如今频频受到媒体、客户与合作伙伴的热切关注。亚马逊、思科、谷歌和VMware都对Docker提供了支持,就连微软也启动Docker行动了。那么,Docker究竟是如何获得如此压倒性的行业支持的呢?容器大受关注自然有其技术和经济方面的原因,但是企业不情愿使用容器也有自己的道理。

第一个,也是最重要的原因自然是安全性。作为libvirt虚拟化API开发者的Daniel Berrange曾在2011年写道:“LXC(Linux Container,Linux容器)并不安全,如果我需要安全性的话,最好使用KVM。”尽管当时他所谈论的只是其中的一种容器技术,但人人都知道,所有的容器都存在这个问题。

2013年,为无特权用户而不是根用户创建LXC容器成为可能。这就使得创建更安全的容器成为了可能。随着Docker日益被认可,有了更高的安全性,但依然有大量的工作要做。

另一个重要的里程碑是在2014年3月,Docker获得了来自Canonical、谷歌、红帽和Parallels的联合支持,创建了至关重要的标准化开源计划libcontainer。该计划力图使容器能够与Linux命名空间、控制组、功能组、AppArmor安全配置、网卡,以及防火墙规则等以一致性、可预见的方式协同发展。“通过让应用摆脱对Linux用户控件组件,例如LXC、libvirt或systemd-nspawn的依赖,该计划可大大减少迁移部件的数量,让Docker摆脱由于需要跨LXC的多种版本和发行版而产生的副作用。”Docker的共同创始人兼CTO Solomon Hykes说。

更重要的是,通过让Docker的一个关键组件成为标准,该计划获得了更多的信赖。尤其是该计划让Docker更加受到开发人员的关注,使他们能更自信地向客户交付容器化的应用,并配备所有需要的库和其他文件,确保能够在客户的Docker上运行。

此外,正如Bottomley所解释的那样:“libcontainer可以向应用展示更细粒度的容器特性,允许我们在制作工具时能够更无缝地跨越多种不同的产品。”

另外,如Red Monk共同创始人兼分析师Stephen O'Grady所解释的那样,从很多方面来看,Docker的运气也很不错,可以说是在正确的时间出现的正确技术。O'Grady写道:“它的成功可以看作是诸多因素的综合效果。最明显的因素,就是其底层平台的普及。”

O'Grady还指出:“也许更为重要的是,有两大行业转变因素在发挥作用,让容器技术的采纳变得更容易了。首先是虚拟化在企业中几乎到处都是。具体到容器来说,则是操作系统的重要性不断受到侵蚀。”容器,特别是Docker,对操作系统产生威胁,底层操作系统作为一种共享的基底,一种通用的基础,其实并不比数据中心的高架地板具有更多的价值。对容器来说,其构建的基础单元就是应用。只有应用才是唯一真正独特的要素。

Docker的路子是否走对了?

如上所述,已有不少厂商开始了自己的布局。它们希望在自己的产品组合中锦上添花般地增加容器功能。用什么容器对于谷歌这样的大公司来说可能不算什么(无论你是用lmctfy,还是Docker,只要在谷歌的计算引擎上跑就行了),但是对于容器领域的很多小企业来说,就完全是另外一回事了。

这些小公司很多都是纯粹的开源厂商,要想寻找到一个切实可行的商业模式是很难的。此外,这些小公司很多都背负着风投的压力,必须尽快地将其技术转换成可见的利润。一种方法就是尝试去主导一个生态系统,吸引尽可能多的组件进入其新的软件堆栈,从而留住客户。业内人士称,Docker所做的就是要为其最初的容器产品增加更多的服务项目。

有一家公司,也就是CoreOS(+微信关注网络世界),正在围绕Docker构建自己的轻型Linux服务器操作系统。该公司公开表示,Docker公司已经严重偏离了最初只提供一个简单容器的初衷,开始转而想提供一个令人困惑的平台,希望把创建、存储、上载、运行和编排Docker映像的程序构成一个完整的平台。CoreOS的CEO Alex Polvi说:“很多在其现有环境中使用CoreOS的企业,只是想在其中集成容器功能而已,他们并不打算要一个全新的平台。”

Polvi还说,他们曾尝试与Docker合作来解决这些问题,但Docker的团队却没有兴趣。所以CoreOS只好开发自己的容器——Rocket。

虽然有些容器企业,例如云厂商Joyent完全支持Docker的市场定位,但其他一些公司则暗中赞同CoreOS的看法。CoreOS是第一家批评Docker的公司,不过有业内人士称,其他一些公司也认为Docker这是在做贪多嚼不烂的事情。可以预计,还会有一些竞争对手会拿出自己的容器,或者支持CoreOS的Rocket。

与此同时,诸如Canonical这样的开源企业则在扩展Docker的底层技术。Canonical的LXD(Linux Container Daemon,Linux容器精灵)依据已有的Linux安全技术,为Docker增加了安全性能,其中包括支持用户命名空间和CGroup的内核,以及其他Linux安全机制(例如Secgroup和AppArmour等)。尽管Canonical的创始人Mark Shuttleworth说,LXD只是一种Docker的增强版,并没有想过取代Docker,但有消息称,Canonical私下里正在开发的一些项目就是想与Docker展开竞争的。

还在Docker的CEO Solomon Hykes真正看好Docker之前很长一段时间,Parallels就一直在进行容器的商业化,并计划与Docker和Rocket展开合作。Parallels日前已宣布,Docker将会在Parallels云服务器的容器中运行。

Parallels的Bottomley说,Parallels计划提供比任何容器企业“更安全、更密集,也更为集成化的容器解决方案”。他说:“从长远来看,我们认为容器的未来将取决于大量用例的开发,就像能够解决云租户、云安全的解决方案一样,甚至可能是支持虚拟网络功能的新型操作系统。所以,我们打算与计算行业所有领域的企业开展合作,全力扩大容器的实用性。”

毫无疑问,容器会持续成为热点,还会进入更多的领域。2015年的现实问题是,谁将成为领跑者。Docker目前的确已经获得了巨大的支持,但它能够持续发展吗?2015年会不会出现一个或多个竞争对手,从而扰乱其发展?此外,会不会出现严重的安全方面的技术问题,延缓其发展的步伐?笔者认为,Docker以及支持或与其有合作关系的企业,在2015年会发展得不错。但这一年也将是Docker不断遭遇挑战的一年。(波波编译,更多内容详见: http://www.cnw.com.cn/P/6224)

[责任编辑:孙可 sun_ke@cnw.com.cn]

我也说几句

热点排行