Just Another Buzzword?听Netflix讲Docker

2016年9月11日,美国Docker生态重量级选手Docker、CoreOS、Netflix的主要技术负责人以及国内一线互联网公司技术负责人将汇聚 《中美企业级容器应用高峰论坛》,共同探讨Docker和容器服务到底能为企业带来哪些价值,本次高峰论坛由灵雀云主办。

本次峰会邀请到了Netflix资深架构师徐振中带来演讲“容器化在Netflix微服务架构的价值提升和案例分析”,从Netflix的经验出发,告诉大家容器技术如何为企业带来价值。

Netflix是一家视频网站,更是一家走在技术前沿的大数据分析公司,Netflix使用Hadoop,同时也贡献了很多相关的开源技术;Netflix早在2009年就开始实践微服务架构,并在Docker出现后马上就开始关注和使用。可以说Netflix是美国企业中通过Docker带来价值的代表。

Just Another Buzzword?听Netflix讲Docker

作者简介:徐振中,目前在硅谷互联网公司Netflix负责日万亿级别实时数据平台,用于支持公司提供数据驱动决策的企业文化,以及间接推动产品体验。之前曾在微软Azure云的基础设施部门负责全球底层分布式系统计算和网络部分的构架改革,以及数据中心纠错自动愈合的项目。再之前还曾经是微软必应视屏产品后端分布式系统开发的原班人马之一。

目前主要兴趣是探索技术整合(比如说Docker容器,微服务构架,参与者模式,流化构架等等)来推动产品在云和移动时代的构架提高和客户体验的提升。其次,解决大数据时代的决策问题,也是他的兴趣之一。

Just Another Buzzword?

现代容器技术是Linux操作系统内核提供的虚拟化功能。主要用途就像它的名字“容器”所提示的,能让用户user space的进程得到系统物理资源上的隔离和管理。举个简单例子,如果使用容器来运行Windows操作系统上的应用,那么当你用notepad打开一个1G的文本文件的同时,操作系统不会影响到你当时所观看的视屏。

现代容器技术主要利用cgroups的Linux内核feature,这项内核feature最早于2008年发布,主要贡献者是Google的工程师。之后,以Docker公司为代表的社区,实践中验证了这项功能可以提供的价值,从2013年开始在美国引起了直线性上升的关注。下图是google trend显示的关注度变化。

Just Another Buzzword?听Netflix讲Docker

短短三年,这样的轩然大波也是整个软件社区验证这项技术成功的结果。“容器化”这个词也一度成为技术界里时尚的代名词之一。也许有人说这只是暂时的热度,背后也少不了创业公司的推波助澜,但他认为整个市场本身还是理性的,不管企业怎么做市场投资,不管是大数据技术还是Docker,他们的快速发展是由市场需求决定的。

对企业的价值

当然,这项技术相对年轻,周边的一系列生态系统还在完善的过程之中,特别是在大型分布式系统构架下面临的多租户,编排,调度,网络拓扑,以及在现存的微服务构架下服务发现,容错自我修复,服务自动缩放等等的生态系统整合。

这是一个前沿的领域,但确实是又能给公司提供很多在开发,运维,组织结构和成本上的优化。正是因为如此,美国各大云服务提供商也争先恐后的进入这个领域。当下美国很多技术企业也走在探索的道路上,其中不乏一些已经大规模生产上线的案例。

容器技术很新,现阶段我们没有必要把重心放在推测它未来会不会成功上,而是要关注企业型用户到底有什么需求,哪些需求是容器技术和它周围的生态系统所能提供的。

容器技术在近几年往往和微服务构架是被同时提起的,他们之间有种相辅相成,互补利弊的关系。应用得当的企业往往能在产品迭代速度上制胜,开发运维环境中降低阻力。再者,也有很多初创企业能非常高效的在不损失availability和performance的情况下利用容器技术来降低成本。但是世界上没有哪项技术是silver bullet,很多走在探索道路上的先驱总结了很多技术以及文化方面的经验值得我们学习。

Docker为Netflix带来的价值

Netflix早在2009年开始迁入云端时就探索尝试微服务构架。另外,Netflix独特的企业文化和微服务构架致使一些团队早在2014年左右就开始关注和使用Docker技术。到目前为止,公司内部已经有多项利用容器的平台服务生产上线。

以徐振中所在的团队为例,在短短一年时间内重构架、开发和部署了一套日万亿(1,000,000,000,000)级别的数据平台。其中一个重要的微服务构件完全搭建在Docker提供的基础服务上。目前他们生产环境中平均同时运行14,000个容器。在开发期间总结了很多构架上的设计原则,也发现了很多可以利用容器的优化。同时也发现很多团队独自利用容器技术,慢慢形成对一个多租户,共用的容器云平台的需求。在本次峰会上,徐振中将详细分享他们的经验。