分享到:
发表于 2016-08-03 14:37:03 楼主 | |
近2年来,容器概念的火热似乎已经到了,要是不能没事拽两句有关Docker的常识,都不好意思跟人家说自己是IT工程师的地步。但事实却是,这些人云亦云的观点对于你的项目来说,可能是一个个“大坑”,今天PPPCloud就为大家盘点一下,到底有哪些常见的Docker观点最坑人... |
|
楼主热贴
个性签名:无
|
发表于 2016-08-03 14:38:35 1楼 | |
Top.1:Docker环境达到了一致性 坑指数:★★★★★ 几乎所有的Docker介绍或教程提到最多的Docker带来的好处就是:环境一致性。 但这个很显然是个命题错误。“环境”是一个模糊和相对的概念。Docker实现的是镜像内部的小环境一致性,它保证了一个应用程序在一台机器上使用Jetty 9, 在另一台机器上也使用Jetty 9(通过封装软件中间件如Jetty 9)。 然而在绝大多数公司或项目中,真正的难点在于如何保证“大环境”一致,既整个业务系统中众多容器、组件、服务之间如何配置、互联、耦合? 又怎样保证开发、测试、生产环境能相互转化、克隆等等...这些环境、配置在容器概念之上,是容器自身无法解决的,只能依赖集群层面的管理工具。 |
|
发表于 2016-08-03 14:38:46 2楼 | |
Top.2:Docker对微服务很关键 坑指数:★★★☆ 就研发技术本身来看,微服务与Docker是两个完全独立的维度,微服务所带来的好处并不依赖于你是否使用Docker,反之,微服务所带来的一些问题Docker也无法解决。例如:如今如今比较流行将原来的大型应用进行微服务细粒度切分,而第一个难点就是切分的粒度。虽然实践的方法各有不同,但总的逻辑是切分的粒度越细,软件开发灵敏度也就越高。 这样带来的问题是管理成本的增加:更多的模块应该如何进行各自的配置?更多的API通信、互联如何管理,更多的二进制如何发布?等等这些在采用微服务理念所开展的项目中常见的问题,Docker并不能为其提供解决方案。 |
|
发表于 2016-08-03 14:38:53 3楼 | |
Top.3:Docker实现了以应用为中心 坑指数:★★★ Docker的大火也让”App Centric”, “Cloud Native”焕发了青春,Docker确实在为实现这两者的道路上提供了便利,但Docker本身还远远不能和这两个词划等号。 Docker对应用虽然进行了封装,但是应用的开发者在实践中还远无法做到只要关心到Docker这一层即可。首先我们还是要关注操作系统,是否有合适的内核,是否有合适的API支持。甚至还要关心硬件,是否是x86架构还是power pc架构。此外,我们还需要关心引擎,是Docker还是Rocket还是runC。 最后,开发、运维者还要关心平台,是Kubernetes还是Mesos来进行生产集群管理,并需要针对具体的底层平台做完全针对该平台的部署、配置(甚至需要修改应用、框架等)。而这些都不是应用、业务所应该关心的范畴。 |
|
发表于 2016-08-03 14:39:41 4楼 | |
Top.4:Docker实现了Devops 坑指数:★★☆ 不可否认,Docker有很多开发、发布敏捷性方面的亮点,但不少人却认为Docker自身就意味着Devops。现实是他们往往在真正开始使用后很快发现Docker带来了额外的负担,例如基于Docker的发布流程应该是怎么样,应用程序打包的最佳实践应如何(如何避免打出一个上G的包),Docker的镜像仓库该如何管理(如何有效利用存储空间、识别Dockerhub里的恶意镜像)? 总之,Docker给系统中引入了新的一层东西。当业务出现问题,研发和运维人员就需要琢磨到底是应用的问题还是Docker的问题?Docker自身主要是进程级别的,而对于复合型、集群化的场景则需要第三方的工具和系统来补足。在设备层面,如何做到跨主机的通信、数据的迁移、跨主机的任务调度?在应用层面,如何做到用多个Docker镜像/容器构造成一个复合性应用?这些实际上都与Devops的理念相冲突。 以上,是本次分享的几个关于Docker认识的常见误区。当然,还有“安全性”这个在Docker中备受争议的冲突点... |
|
发表于 2016-08-04 21:47:27 5楼 | |
您的内容正在火速审核中,请稍等 |
|
针对ZOL星空(中国)您有任何使用问题和建议 您可以 联系星空(中国)管理员 、 查看帮助 或 给我提意见