容器技术·10月刊:后容器时代的一些思考

Posted 分布式实验室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了容器技术·10月刊:后容器时代的一些思考相关的知识,希望对你有一定的参考价值。

写在前面的话

纵观Linux内核在容器虚拟化技术层面的发展历史,我们可以看到,早在1992年的时候,关于namespace技术的计划就已经被人提起,而云计算的概念在2006年才刚刚出现,那时,Linux内核就已经支持最基本的namespaces和cgroups技术了。但是容器技术在2013年Docker出现之前,一直处于平淡发展状态,却在2013年Docker出现以后开始大为流行,为什么?


在我们看来,一是因为容器虚拟化在技术层面的发展需要时间的沉淀,实际上在2013年Linux内核版本到3.8的时候,user namespace才基本完成,而实际上到目前为止,内核上关于namespace的开发还远没有彻底完善,还有许多namespace特性可以继续开发,如time namespace隔离系统时间、device namespace隔离各类设备、security namespace隔离各类安全相关的系统权限等等,cgroups更是如此。而在2013年Docker出来的这个点上,容器技术在Linux 内核层面的支持就基本够用了,所以Docker借助了这个契机,巧妙的加入了镜像等机制,让容器技术变得家喻户晓。


第二点则是在云计算发展的今天,各类IaaS、PaaS技术渐渐成熟,云计算的概念再也不像刚出现那会一样高高在上浮于云端,开始被人们接受和理解,以OpenStack、CloudFoundry为代表的越来越多IaaS、PaaS平台开始在生产环境落地,基于云计算平台、微服务架构的无状态(轻状态)应用越来越被人们所接受,更多的企业用户开始把复杂应用拆分成一个个适宜部署在容器中的云应用。这也是一个契机,让以Docker为代表的容器云平台开始流行起来,Docker自然也是借着这股东风,水涨船高,大受欢迎。


不过,在微服务这个问题上,我们团队持有一些不同意见。Micro Service说起来轻松做起来很难,更多是一种说辞或者设计思想。而在具体实现上,以Spring Boot为代表的语言框架才是支撑和实现微服务架构的最佳手段。在这个领域中,Docker以及容器技术能做什么,做到什么程度,其实都不乐观。至于传统应用的改造和容器化,则更是一个需要专业团队长期攻坚的系统工程,绝非一句“微服务”或者”Docker大法”就能解决问题的。目前看来,在如何借助Docker改造和支撑用户现有应用这个问题上,百川TAE给出的”去Docker概念”的做法最值得肯定和借鉴。


2015年后,容器技术继续保持飞速发展。尤其是国内技术圈的“容器热”,已然超越了大洋彼岸提前进入了“后容器时代”。在这个大环境下,单纯普及Docker本身的知识和原理其实很难跟上企业愈来愈旺盛的技术需求。这个情况跟以往大热过的各类云计算技术有很大不同,Docker上手之容易,原理之简单,使得大多数技术团都能够很快摸清所谓“容器技术”的本质原理,并且快速将其集成到现有的技术方案和产品当中。也正是在这个背景下,”后容器时代“里更多的入局者都已经度过了“Docker基础知识学习阶段”,开始把关注点重点转移在如何创建一个属于自己的“容器云”上。这其实是理所当然的,容器技术普及最大结果,乃是大大拉低了构建一个PaaS的技术门槛。最终的现象就是,技术人员不再需要依赖任何大小厂商的解决方案就可以很容易构建出一套包含了代码上线,发布,测试,交付等一系列流程的PaaS出来,这才是国内这股容器热背后真正的推动力量。


与此同时,伴随着国内技术圈里容器应用规模的激增,如何管理、编排和运维这些容器很快成为了用户所需要面对的最严峻的问题。这也是自然而然的,随着用户逐渐认清了Docker的本质,大家的关注点自然不会再局限在“如何把Docker玩出花来”,以及Docker源码中的各种“奇巧淫技”,他们需要解决的关键问题一定会回归到原始和朴素,即:如何运维和管理一个足够规模的应用/容器集群?


在这个问题上,Google已经亮出了自己的秘密武器,Mesos也交出了漂亮的答卷,而我们团队对这个问题的一些思考和经验,也著成了《Docker容器与容器云》一书,希望能够以此为媒介与更多的读者交流这些思想和心得。相信在未来,IaaS和PaaS的概念将对用户越来越透明,而对技术人员来说,这也将是一个可以综合管理计算资源、网络、存储、安全、应用运行时、应用生命周期等技术元素的平台逐渐萌发的时代。既往不恋,纵情向前。只要不忘初心,未来还有太多事情可以并且值得我们去做。


——浙江大学 张磊 孙健波


关于月刊


《容器技术月刊》是由国内知名容器社区DockOne.io推出的刊物,旨在帮助国内爱好者学习使用Docker。本书涵盖的内容包括新闻回顾、他的态度、实战经验和万花丛中,内容篇篇精彩。容器技术月刊每月14号出版,欢迎阅读。

  • 百度阅读:http://yuedu.baidu.com/ebook/80961327960590c69fc37653?fr=index

  • 多看阅读:http://www.duokan.com/book/bea028c75d684b8c9e9bf98c90e0b7a8


月刊目录

dex:来自CoreOS的开源身份认证服务解决方案
【翻译:姚洪】今天CoreOS发布了一个新的开源项目dex,一个基于OpenID Connect的身份服务组件。CoreOS已经将它用于生产环境:自家的tectonic.com上。用户认证和授权是应用安全的一个重要部分,用户身份管理本身也是一个特别专业和复杂的问题,尤其对于企业应用而言,……

VMworld大会回顾:VMware发布新的容器战略
【翻译:赵帅龙 】容器是新兴的虚拟化技术,VMware作为全球最大的虚拟化解决方案供应商,也在拥抱变化,努力将容器技术融合到其产品栈中。Photom平台便是VMware做出的兼容方案,下面我们来了解一下 VMware在本周的年度VMworld大会上为容器技术推出了一个双管齐下的技术。V……

Kubernetes性能测试和发展计划
【翻译:何炜】Kubernetes是谷歌在2014年发起的开源容器编排框架,本文作者Wojciech Tyczynski,谷歌软件工程师,文章主要阐述目前状态下Kubernetes的性能测试和下一步发展计划。 无论你的容器编排系统是多灵活多可靠,你最终还是会有些工作要做,而且你还希望它能……

对容器中应用程序的配置和日志的认知
【翻译:强强】近日在迁移应用到Docker的过程中,纠结于配置和日志处理,通过查阅网友们的对此的讨论、官方镜像的处理手法,结合实践,对此有所认知,欢迎斧正。以下内容,均是基于测试/生产环境,不涉及开发环境。 关于配置 通过几个开源项目(Wordpress,mysql)的官方镜像处理方式,……

不可变基础设施:拒绝SSH
【翻译:梁晓勇】同一套软件系统在部署与运行过程中,常常会因为依赖组件版本、运行时间及人工干预等多种因素引发运行结果差异,造成不必要的损失。要消除这种影响,其中之一就是推行“不可变基础设施”保证其一致性。 什么是不可变基础设施 在开始本文之前,先介绍下什么是不可变基础设施。不可变基础设施(……

观点|Docker根本不适合用于本地开发环境
【翻译:胡震】依托Docker运行的后端服务(如数据库,缓存,存储等)感觉相当完美,但对于编译语言,Docker却并未本地开发的理想之选。 我一直在尝试使用Docker作为本地开发环境,最近我又尝试了一遍,结果发现依然行不通。但是这次尝试我得出了进一步的结论,那就是对于大多数的开……

反思|分布式框架是必须的吗?
【翻译:肖远昊】本文主要讲述了通过规范化处理流程,可以使用相同的处理流程来处理流式或者批量处理任务,例如Hadoop和Storm,从而提高重用性。 当有人问起该如何处理大数据问题时,他们总是被指引到现存的产品中,例如Hadoop或者Storm。虽然这些产品非常棒,但也引发了一些问题。首先……

美国电信巨头Verizon基于Mesos和容器的实践经验
【翻译:郭卿】本文主要介绍了电信巨头Verizon是如何通过使用Mesos和容器技术,将其原来的数据中心变成自动化、高利用率、高运营效率的现代化数据中心。据称其数据中心的资源利用率可以提高到50%~60%,并且现场演示了在72秒内部署50000个Docker容器,使得应用集群部署的效率至……

针对Kubernetes和Docker Workflow Plugin的Jenkins配置
【翻译:李加庆】Jenkins作为一款开源的持续集成工具,在很多平台上被使用,本文主要介绍了在Kubernetes和Docker Workflow Plugin中的一些配置,可以帮助读者了解到其中的一些细节和方法。 最近我开始尝试在Kubernetes中使用Jenkins,其实我也是想看……

使用Jenkins、Docker和Ansible进行持续集成和交付
【翻译:卢文泉】文介绍了使用Docker、Jenkins等技术实现应用开发,测试到部署的自动化。它是一种探索。重点在于流程中的代码检测、测试、部署。部署后要做的事情没有涉及。会在后面文章中介绍。 本文试图为您介绍一个设置持续集成、交付、部署工作流的可行方式。我会使用Jenk……

Docker在英雄联盟游戏中的实践探索(一)
【翻译:夏彬】Riot将Docker和Jenkins相结合,以此来构建流水线(Pipeline)。这篇博客是Riot实践Docker的系列博客的第一篇,主要介绍了他们的目标和理念;后续博客则以教程的形式一步一步地记录Riot的Docker实践。 容器技术已经风靡全球,我们欢迎容器化领域的……

Intercom的持续部署实践:一天部署100次,1次10分钟
【翻译:黄帅】博文分享了Intercom公司在持续部署的经验和体会。Intercom公司从创业起步时就开始认定持续部署的重要性,从2002年每天10次部署,到今年每天接近100次的部署,积累了丰富的经验,对持续部署有着较为深刻的认识,虽然本文没有详尽的技术细节,所谓……

关于微软容器战略,你需要知道的十件事
【翻译:张鹏程】自从微软和Docker宣布合作以来,微软Redmond一直在容器上面的战略可谓稳扎稳打。最近,微软加入Open Container Initiative(OCI),并作为创始成员承诺支持常见容器的格式和运行。在最新的Windows Server 2016技术预览版中,微软终于将本地的W……

Fenzo:来自Netflix基于Java语言的Mesos调度器
【翻译:边天亮】Fenzo是一个在Mesos框架上应用的通用任务调度器。它可以让你通过实现各种优化策略的插件,来优化任务调度,同时这也有利于集群的自动缩放。 Netflix有着数百万的用户,要为这个数量级的用户提供可靠的服务并不是一件容易的事情。Netflix是由几十个分布式的服务支撑的……

谈谈Apache Mesos和Mesosphere DCOS:历史、架构、发展和应用
【翻译:吴佳兴】Mesos是一个很年轻的开源项目,它的理念是怎样的?它的整体架构以及服务对象又是什么?基于此的Mesosphere DCOS又是如何定位的?本文作者就这些话题展开了探讨。 Mesos发展史 Mesos是一个早在2009年由Benjamin Hindman、Andy Kon……

解读 | 你真正理解什么是Cloud Native吗?
【翻译:柳泉波】什么是cloud-native?cloud-native框架、cloud-native运行时和cloud-native基础设施的自动化又有哪些内容?读完这篇文章,就能有一个大概的了解。 你能做到每周、每天甚至每个钟头向客户发布新特性吗?新加入的开发者能够在他们工作的第一天……

合作伙伴



点击左下角【阅读原文】链接,在多看阅读上面阅读本月刊。

以上是关于容器技术·10月刊:后容器时代的一些思考的主要内容,如果未能解决你的问题,请参考以下文章

容器技术·2月刊发布,点击阅读

容器技术·11月刊:容器技术与社区

请注意,容器技术圈已迈入后Kubernetes时代!

云原生时代,如何“玩转”容器安全?

云原生时代,容器技术对个人的发展有多重要?

2019,属于容器技术的时代来临?