在上次推送的文章中(传送门),田琪老师分享了他的DockerCon 2015峰会见闻。在“QCon高可用架构群”中。田老师分享以后,几位专家也參与了讨论。docker
他们是:markdown
- 闫国旗:京东资深架构师,京东架构技术委员会成员,负责京东云基础服务建设。也參加了DockerCon 2015峰会。
- 王渊命:技术极客,协做IM服务@Grouk联合创始人。也是Docker深度实践者。
- 陈飞:微博资深架构师,微博平台Docker容器项目负责人。
首先,闫国旗也分享了他的參会感觉:网络
此次DockerCon 2015主要环绕着这四慷慨向:开发平台、扩展、开放标准和商业支持。架构
详细而言:app
开发平台如田大师前面提到的内容。回想近两年Docker在这一方面的努力,及一些产出。框架
Docker Container/Docker
Registry/Docker Compose/Docker Machine/Docker
Swarm等。分布式这些产品事实上在去年都已上线。事实上咱们你们都也了解,本质上Docker的优点就是生态。所採用的技术都是各平台所提供的,充其量在这里Docker仅仅能算一个“服务编排者“的角色,固然这个比喻可能不是很是恰当。工具
没有技术竞争力。被替代的可能性就会很是高,正像Docker同CoreOS的竞争同样。在这里都没有太多的话语权。也许正是因为如此,才会走向开放之路。Docker将本身的runtime贡献给了runC项目,将appc合并进OCF。post
表面看起来是走向融合,但本质上怎样。Solomen和Alex也许会有不少其它的感触.ui
只是Docker令我我的最不爽的就是Projet
Orca项目。基本上把会场外面那些基于Docker的创业公司逼向绝路。这是我的最不喜欢的地方。在DockerCon
2015会后,咱们也有幸前往CoreOS的公司作了技术交流。对于Docker向CoreOS隔空喊话。他们也仅仅能表示”呵呵“。
微博平台Docker容器化项目负责人陈飞也谈了他的见解和感觉。
此次DockerCon,以前也仅仅是经过PPT有些简单了解,今天田大师分享后。收益颇多。
如下,谈谈我的粗浅的感觉:
一是Docker的扩展机制。这个仍是挺激动人心的。刚才田大师也提到。眼下已经有network plugin和volume
plugin走在前面了。相信你们在这块是比較纠结的,一方面Docker自己可能不能知足一些场景。需要作一些定制扩展,假设改它源代码的话,可能会形成与社区脱节的问题,相信有了这个机制,兴许扩展会更加方便。
二是Open Container
Project。在必定程度上“应该”会避免容器runtime标准的分化。之后应该可以放心来作容器的调度管理。而不用操心某一天底层执行时闹革命。只是感受是各家貌合心不合。
三是Shopify使用DNS来作服务发现,以及libnetwork的进展。只是libnetwork提到服务发现会是其基本功能。也是基于DNS实现的,很是cool。只是感受它是否是有点想多了。
另外一个就是此次大会,貌似没有提Mesos和Kubernates。记得上次大会有提到Swarm和Mesos会有一个亲热接触,不知道现在进展怎样了。
大规模集群调度管理,Swarm仍是处于pre-production的状态。Docker攻克了单机namespace,cgroup等容器技术组合的复杂性问题,集群技术怎样简化,这里机会应该蛮多。
Grouk联合创始人王渊命也谈到了他对此次大会的见解和感觉。
你们好。咱们是初创团队,主要在DevOps方向使用Docker。和持续集成流程打通。
Docker给咱们最大的便利是可以高速地复制出一整套系统,方便几套环境同一时候进行本身主动化測试。因此个人关注点也比較偏实践方向。
主要关注网络以及容器编排工具。
看此次DockerCon,感受这几方面很是快应该会有成熟的解决方式出来。既然有了标准和插件扩展机制,可以各厂商,各社区一块儿努力了。本身DIY也easy些。这个很是让我激动。
另外看到田大师分享的Docker
networking方面的抽象,感受很是符合分布式系统架构的抽象。各类语言的分布式框架可以在Docker之上大有做为,或者分布式的概念在Docker之上也逐渐标准化?
讨论以后是问答环节,几位专家回答了观众的提问。
请问Docker何时可以放心用在生产环境?需要先解决什么关键问题?
田琪:假设是私有云环境。我认为现在放在生产环境是ready的。网络和存储问题相对需要多考虑,网络这块国旗可以给你们分享下。国旗是网络方面的专家。
陈飞:就像田大师说的,Docker基本已经相对成熟了,对于计算型服务的话,应该没什么问题。有状态服务需要考虑一下存储方面的问题。
Projet Orca是个什么项目?国旗是否能进一步介绍下。
闫国旗:Project Orca是一套自上而下的整合方案。上层提供面向用户的GUI,下层管理Docker Engine/Docker Swarm/Docker Compose等等。
功能上支持服务编排、查看集群或容器状态、日志等等。大部分功能基本上和一些Startup的产品一致了。
Docker在当前市场前景以及应用价值怎样?
闫国旗:就当前环境来讲,基于Docker生态的工具链,能极大提升生产力,build & ship。在类似的研发生产流程中,都可以引入。
对于IO Bound类的业务。我的认为Docker仍是没有准备好的。
固然这里也不主要是Docker的问题,首先对于底层来讲,IO的隔离,眼下作的还不够。所以也致使了上层的Docker无能为力,讲到这里,感受又引出了那个话题。容器的将来究竟是OS Container仍是App Container?方向不一样,就决定着技术的走向不一样。
我相信国内大多数的小伙伴是因为Docker Image的特性。才对Docker感兴趣的吧。“Image特性”,可以理解为Docker镜像。
但是oveylayfs/dm的介入,会引入不少其它IO层面的问题。从现在的生态圈来看,你们眼下都把方向瞄准了APP Container。
王渊命:国旗的这个问题好。我刚開始用docker的时候就比較迷茫。既然已经在云上了,云也支持镜像,支持API调度,为啥还要Docker?只是现在我认为Docker应该是 App Container。
闫国旗:但在这个场景,所谓的OS env,貌似就没那么必要了。
陈飞:我的认为应该是App Container,内核容器技术出来的时候自己目的就是为了解决App间隔离问题。但是因为容器自己建立速度快,因此也有当作OS Container的,但是OS Container要解决的网络、存储等问题,刚好又是内核容器技术不具有的,因此Docker确定也是弱项。
闫国旗:OS Container的网络,可以引入SDN来解决,存储在本地是比較难作的。也许在将来,很是可能OS和APP的界限再也不那么明显。
嘉宾们对国内Docker的前景怎么看?
闫国旗:现阶段Docker在国内落地仍是蛮快的。从红包的案例,到京东的大促,都出现了Docker的身影。
主要也是因为使用Docker没有过高的技术门槛。
田大师前文提到“Docker项目现在的状况和当初的OpenStack有些相像”。 你们认为Docker会不会也重蹈覆辙?
王渊命:Docker解决的问题没有OpenStack那么大,应该不会搞到OpenStack 那么复杂吧。
洪涛(爱抢购CTO):OpenStack的不成功很是大程度在于架构的复杂性上,想当年。要配置一个可用的OpenStack没有一周时间是全然搞不定的。光这点就致使不少想玩OpenStack的人被挡在了成功安装这条线之外。
Docker很是方便部署,咱们现在就把它当作App的容器,Docker怎么作资源分配?咱们的Docker中有个应用内存泄露。干了260g内存。不能单独分配给某个Docker固定的内存或者网络?cgroup可以限制内存和网络是吗?这个是否能作动态改动?比方敲代码调用他改。
刘斌:Docker网络分配应该是以daemon为单位的。就是cgroup改动參数就可以了。
Docker本事没有此功能,但实现不难。
想问问各位大师,现在Docker都应用在哪些组件上面?是仅仅有无状态App。仍是DB、Cache和存储全面应用了?
闫国旗:现在Docker的主要场景依旧仍是无状态App。像部分Cache也跑在了上面。
一些IO密集型的应用,特别是磁盘IO,使用Docker是否合适?
闫国旗:IO Bound类业务。从现阶段的測试结果上看,不是特别理想。小规模的使用问题不大,假设是大平台业务就是谨慎了。
就问题8。大家測过?大概比裸机慢多少?
闫国旗:这个不是慢的问题,是隔离的问题。IO隔离,IOPS或IO带宽的SLA。
陈飞:另外应用的时候,版本号选择也很是重要。像咱们就遇到docker1.5和1.6版本号在CentOS 6.5上,致使Kernel Panic的问题。
现在有什么比較好用的Docker管理工具?
闫国旗:Swarm/Compose都算是Docker管理工具。固然Orca更无缺一点。
想问下田大师和国旗。此次交流。国外同行对Docker将来发展趋势怎么看。还有哪些机会?
闫国旗:从交流的结果上来看,国外的公司使用Docker不少其它是为了减小“部分流程”上的成本。正是出发点如此,因此才会有那么多的Startup參与进来。
对于容器技术,咱们也可以理解为是一种虚拟化技术。
所以很是多公司也但愿本身的产品能向这个方向有所延伸。
田琪:我认为厂商跟Docker仍是关心的不太同样的。
感谢刘世杰@猎聘网的记录与整理,臧秀涛@infoq的校对与公布。其它多位编辑组志愿者对本文亦有贡献。读者可以经过搜索“ArchNotes”或长按如下图片,关注“高可用架构”公众号,查看不少其它架构方面内容,获取通往架构师之路的宝贵经验。转载请注明来自“高可用架构(ArchNotes)”公众号。