道客船长新推出访谈类栏目 「坐而论道」,由两位重量级嘉宾 Docker Swarm 全球 Maintainer 孙宏亮 (Allen) 和 DaoCloud 首席架构师王天青 (Grissom) ,共同探讨云计算行业的热门话题,从技术和业务的角度探索容器技术的最佳实践.
2015 年 7 月, Docker 、 Intel 、 Red Hat 、 IBM 等 19 家知名公司共同创建了 “云原生计算基金会( CNCF )”,目标在于解决一个长久以来困扰业界的难题——云体系应该采用怎样的架构来服务现代应用。近期,DaoCloud 也很荣幸成为 CNCF 的一员,共同推动云原生行业落地。本期「坐而论道」, Allen 和 Grissom 将围绕 “云原生” 与 “ CNCF ” ,分别从技术和业务角度,探讨云原生的价值。
Allen
我觉得任何事物的诞生肯定是有其自身的原因,这个原因就是当前所遇到的挑战。从我目前的认知来说,可以从以下几个角度来讨论目前行业遇到的挑战:
第一个挑战:在目前的行业中,软件交付方面存在一些障碍。这时候为了适应新的格局行业亟需变迁,在变迁的过程中会出现各方推力。一方面的推力是互联网模式的诞生,应用的喷薄式增长,带来巨大的交付压力,这是软件流程方面面临的一大挑战。
第二个挑战涉及应用架构,在应用架构方面,项目管理、应用管理方面存在一些弊端。其实大家已经发现了单体应用架构存在的问题,这个时候就有一些推力让它朝着新的软件模式的方向发展。
还有最后一个挑战:在上层应用架构转变的过程中,底层——数据中心的架构,数据中心的能力,是否可以很好地支撑上层的应用架构,或是软件流程的变化。数据中心也要谋变,不谋变的话,往往压力会很大。
以上是我认为当前行业软件行业面临的 3 个方面的挑战。
Grissom
T 最终是必须要服务业务的,所以我主要会从业务角度探讨这个问题。从业务的角度来看,企业老板,尤其是互联网行业的老板,只关注两类最核心的问题:这个功能明天能不能上线?双 11 能撑得住吗?类似于这样的问题。他希望的是什么呢?其实就是又快又好。
( Allen :甚至不花钱)
其实速度和质量更重要一些,当然你说的不花钱,或者成本比较小,也是一个关注点。那些独角兽公司,例如当时的 Pivotal ,有一本书名字叫作 Migrating to Cloud-Native Applications Architectures,书中总结了四条成功的秘诀。
- 第一条就是 speed of innovation,就是快,“天下武功唯快不破”。
- 第二条秘诀叫作 always available service,就是服务 24 小时都可用,可用性很重要。
- 第三条秘诀 web scale,就是从 0 到 1 要能快速复制。具体来说,比如说你们公司从天使轮开始只有 500 个用户, A 轮后已经增长到了 10 万,甚至可能是 100 万用户。那么,整个体系就要有能力支撑这么大体量的用户,这一点非常重要。
- 最后一点同移动互联很有关系,mobile first 移动优先。我们先不探讨具体怎么做,但是这是行业对 IT 的要求。
对创业公司来讲, IT 部门最关键的就是必须要做到这四点。从业务层面来看,云原生的产生对 IT 提出了新的需求。由于传统行业对安全保障性要求更高,比如说银行业、金融行业,他们每个 release 的周期可能是半年,甚至是一年,这样的情况在互联网行业往往不现实。所以,云原生针对互联网行业能够提供更大的帮助和价值。因为对他们来说,云原生能够切切实实解决业务层面的问题。
Allen
这个方面我还想多说一点,不仅仅是创业公司,包括微软这类大型企业,公司层面的策略也是基于 cloud first , mobile first 。从业务角度来讲,这不仅仅是对技术的要求,也是对整个企业策略方面的要求。
Grissom
这个问题可以从几个方面来理解。云原生能够解决老板的问题就是又快又好了。快,就是整个研发的流程、迭代周期快。通过微服务架构,可以把原来一个大的单体应用拆成了一块块小的部分,这样就实现了高耦合。改动比较小的部分通过小步迭代的方式,粒度很小,很多功能其实只要改一二行代码,就可以快速上线。
过去一个大的单体应用,所有人都在上线,很难在比较短的周期内完成全部工作。很多时候,一处小的修改,需要把整个测试重新做一遍,甚至两周都无法完成既定目标。但是,在使用微服务架构之后,这个问题迎刃而解。
然后,通过持续集成的流程可以很好地保证代码从提交,到最后的交付,这一整个流程的自动化。同时中间过程中可以通过各种自动化测试来保证质量。
最后,就是底层的敏捷基础架构 docker。它使得交付能够做到标准化,保证在开发测试生产上,环境都是基本一致的。这样一来,交付时间大幅度缩减,因为标准化势必会提高整体的效率。最后,通过做到更小的粒度使得整体的交付效率大幅度提升。这是从“快“的角度延伸来讲,“云原生技术”能解决的问题。
从质量的角度来讲,从前,我们更多采用的是人工介入的方法,而现在更多是通过自动化的方式,包括运维,我们都会使用基于容器的自动化运维方式。它能够很好地支撑整个体系,避免人为造成的问题。同时,通过结合一些最佳实践,如应用架构层面的实践,避免了过去踩过的坑。这样的话,我们不仅在整体上提升了效率,同时能够有效避免犯一些错误。
另外还有一个方面,微服务架构这一块,在可用性、可扩展性、可靠性方面,比原来的单体应用都会有所提升。由于原来是单体架构,现在通过集群让每个地方都可以做到扩展。老板想要的又快又好,针对这种突发的场景,整个云原生的理念或者整个体系的配套,是可以充分满足这些需求的。
Grissom
DaoCloud 在初期的时候,给人的印象是个容器公司。刚才提到的 云原生和微服务, DevOps ,还有以容器为代表的敏捷的技术架构,我们可以称之为是 DaoCloud 的黄金三角。但是就像一个三角架, 3 个角,现在缺了一角。为了更好地提供支持,我们想通过学习 Pivotal ,或者同 CNCF 这样的组织有更紧密的合作,最终能够更好地支持微服务这个大生态,这样我们的产品才能更好地去服务好这些业务。
另外,业务其实是应用,它跟底层的架构,还有一定距离,底层架构很重要。但实际上,一定要在流程上从上到下提供更好的服务。在这之前,我们已经帮客户解决了容器的问题,现在我们要帮助客户解决应用的问题。当然容器的问题我们还会一直做下去,但是会上升到更高的一个层面来帮助客户解决应用的问题。这个应用就是新时代下的云原生应用。
从我个人的理解来看,并非意味着容器变得不重要了,而是现在的核心目标是做好服务。所以,我们的三大产品线, DaoCloud Services 、 DaoCloud Enterprise 、 DaoCloud Voice ,就是围绕应用在做这些事情。
Allen
我觉得从开源技术的角度来讲,基金会 CNCF 的诞生可以从 3 个方向应对行业面临的挑战:一个方向是 container packaged,也就是通俗意义上的软件打包方式,交付方式,然后沿着这条路走下去,又可以做到在 DevOps 方面的改进。第二个方面是 microservices,面向微服务,主要聚焦在应用架构方面。第三点就是 dynamical management,动态管理方面,是数据中心的领域。
这 3 个方向中,关于 container packaged ,目前行业里面需要制定一个容器标准。行业里面目前都会比较认同 OCI ,那么 OCI 的标准是谁在推动呢?业界比较有名的一些 IT 公司,包括 IBM 、 Red Hat 、 Docker 等公司,它们为了整个行业的标准在推动。从技术角度来讲,随着 OCI 标准的建立,我们希望看到的是依附这个标准出现更多的具体实现。
在行业当中,目前使用标准这方面的是 docker ,我们希望通过社区的能力、技术手段把 docker 这个方面做得更好,更成熟,帮助 docker 在企业落地的时候排除一些障碍。这也是 DaoCloud 在社区中做过的一些贡献和投入,我们会从企业的角度去收集一些需求和想法,然后在开源社区里做贡献。
在微服务领域,我们希望通过技术理念影响整个社会,带来一些不一样的东西。我们主要关注如何和传统充分融合,如何去改变一些已有的模式,为企业真正地提供价值。在这个方面,像 Grissom 、 Chris Richardson 等微服务行业的大亨,他们可以为企业提供一些专业的服务,比如说咨询。
关于第三个方面是敏捷的 IT 架构,或者说是编排能力。例如 docker 的 swarmkit , kubernetes ,这是一种多样性,说明这个生态是活跃的。我们甚至可以反推,企业级对于这方面的需求,明显是最旺盛的,这也是长期来看的一个发展方向。我们目前选择的 swarmkit ,是一条“原生”的技术方向,为企业解决一些实际问题。我们也会在技术、编排和 cloud native 开放性方面做起,兼容并包。推进整个行业的标准,进而真正为企业解决问题,实现共赢。
Allen
CNCF 的角色就是制定整个行业的标准,引导整个 IT 行业的应用架构朝着云原生方向发展。这是一个很大的目标,同时有很多细节需要去做。
在政治方面,我们需要有类似委员会的机构,通过民主的形式,让大家共同来做决策。 DaoCloud 是委员会的一员,我们将共同参与和影响 CNCF 的发展。
另外, DaoCloud 在 CNCF 中会用自己的实际行动,体现我们的最大价值,或者说发挥我们的重大贡献。作为基金会的成员,我们会在 CNCF 中做出更多的贡献,比如说在开源社区中,我们希望以一些项目为契机,投入更多的人力物力在开源社区的建设中。
上游投入、基金会的管理是最重要的。同时在这个基础之上,我们要做的最重要的一件事就是:让更多的人,更多的企业参与到社区中来,共同建设生态,营造云原生的未来。
本期的「坐而论道」就到这里,下期内容敬请期待!
嘉宾介绍
Allen 孙宏亮: DaoCloud 技术合伙人, Docker Swarm 全球核心 Maintainer , Docker 项目全球 Top 30 贡献者,《 Docker 源码分析》作者,《 Docker 容器与容器云》合作者。数年来一直深耕云计算领域,研究 PaaS 与容器技术等。是国内第一批 Docker 实践者以及布道者。爱开源,衷分享。
Grissom 王天青: DaoCloud 首席架构师,曾先后在麻袋理财担任职首席架构师, EMC 中国研究院任职主任工程师,工作十多年间,做过前端,做过后端, 对云计算有深入了解。目前对云原生应用之微服务架构及敏捷的基础架构( Docker )有比较多的研究和实践,同时对大型网站的技术架构有比较多的认识和实践,在 DaoCloud 负责企业客户应用微服务架构转型。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.