前不久,我在《容器五大应用场景》那篇文章里提到了一家容器基金会组织CNCF——Cloud Native Computing Foundation,即云原生计算基金会。
恰恰是这家CNCF值得我们推敲,因为在这一组织里,不仅有阿里云、Docker、Twitter、Rancher、DaoCloud这些纯互联网企业,还有IBM、Intel、思科、华为、红帽、WMware等传统IT企业。

众所周知,Cloud Native即云原生,字面理解云原生应该是云计算原驻民的意思,为什么IBM、Intel、思科、华为、红帽、WMware这些老牌的传统IT厂商,也能“混迹”其中?
一种可能是,CNCF是谷歌发布其容器编排系统Kubernetes1.0版本时发起的开源组织——谷歌为了推广其容器编排系统Kubernetes,需要这些业界巨头与云计算创业公司一道参与其中,共同把市场做大。
这样看来,Cloud Native就是一个非常有趣的话题。到底什么是云原生架构?云原生给我们带来的好处是什么?我们应该如何看待云原生架构与传统IT架构之间的关系?
何为Cloud Native
笔者听到过的关于云与传统IT之间形象比喻有不少,大致是说,公有云好比是电厂、水厂、银行,传统IT就好像是自己家中的发电机、水泵或者现金。大家希望未来使用计算能力就好像使用水、电和银行卡一样,随用随取。
当然愿望归愿望,人们使用计算资源的现实,距离这个目标显然还有不少的距离。毕竟云计算在目前,至少还属于高科技,确实与水、电和货币这些基础资源不一样。
因此,并不是所有的IT系统架构只能跑在云上。换句话说,谷歌的做法说明,Cloud Native应该与传统IT是相通的。
在阿里云产品负责人何云飞看来,技术和商业模式的变革不是简单推翻过往,而是在上一轮技术的基础上,能让企业的运营效率更高,企业的商业价值更好。
当然,今天所谓的“传统IT”,主要是指IT架构“分久必合、合久必分”中的“分”的时代——也就是指三十多年前,IT架构分拆出独立和专业的存储、网络组件的供应商,比如EMC、思科等。而后,虽然IT架构虽然重新趋于“合”,但诞生于近20年前的VMware,在当时环境下只能把计算、存储等组件简单通过虚拟化手段攒在一起,而非像今天Cloud Native把所有堆栈有机融合在一起共同开发。
今天,Cloud Native“合”的好处之一是,让整个云服务的堆栈可以实现自动化的运维,降低数据成本,提高使用效率。
由于Cloud Native基于云计算的能力,可以实现微服务模式,使得DevOps可以利用Cloud Native的微服务器架构以实现松耦合、高内聚的产品。
应用驱动模式变革
抛开这些生涩的技术名词,我们更有必要看看那些较早采用公共云服务的企业为什么如此选择?或者看看有哪些企业比较容易接受公共云服务?
作为一家互联网企业的员工,何云飞认为互联网企业选择公共云服务,是因为互联网企业希望使用到最先进的技术,从而能够以最快的速度往前发展,这就需要系统不断快速迭代;其二,企业希望快速把新产品投放市场;第三,这些企业在初期只希望为自己想要的东西买单,不想一次投入太多的资金资源;第四,他们希望自己的基础设施足够精简,不希望在IT运维上花费太多的时间。
但是,纯粹的公共云毕竟是公共的,就好比是私家车和公共汽车的关系一样,不可能你想去哪儿就去哪儿。比如说,公共云服务不可能完全满足定制化需求;比如说,公共云服务的风险和责任之间的关系,还没有到达银行与个人银行卡之间那种责任与权利的关系。
从这个意义上,公共云和企业内部的传统IT架构或私有云在现阶段必然是互补的。当然最理想的状况是,公共云和企业内部IT之间能够随时切换,因为这样就如同自己的钱随时可以从银行中取出现金来,也可以随时放到银行中去一样,满足企业现阶段的需求。
满足企业数字化转型需求
企业既需要Cloud Native的公共云服务,又需要私有IT,这种模式的关键是要做到数据互通。众所周知,数据互通的关键是开放API。比如传统财务软件今天在云上,企业只要一个API,就可以查到与企业发生财务关系的供应商信息的真伪。
无疑,Cloud Native完全是构筑于即插即用的API和SDK上的,但问题在于,传统IT架构并非如此。
这时候,如果Cloud Native既能成为企业公共云部分的IT架构,也能成为企业内部IT的关键构件,那么这样一种基于Cloud Native的混合IT,实际上就是基于Cloud Native的混合云,显然能够满足企业的定制化和简单易用的需求,在API开放的基础上,轻松实现数据互通。
何云飞认为,Cloud Native与业务的结合,一定会带来商业本身企业运营效率的提升,也一定能够推动企业的数字化转型。
支持Cloud Native混合云的阿里云
一个例子,回到开篇提到的最近十分火爆的容器。
容器的好处笔者在上一篇文章中提到过,主要有两点。一是因为容器可以跨平台,从而让程序员可以享受到研发生产环境一致性的便利,也就是DevOps;二是容器在虚拟机里面可以大幅度提升资源利用率。
如今在容器领域,代表性的两大产品,一是Docker,二是谷歌的Kubernetes。值得一提的是,Docker和Kubernetes不仅都可以部署在阿里云的公共云平台上,同样Docker也已经在阿里云平台的Apsara Stack Agility中落地,可以部署在企业自有数据中心环境内,适用于企业专有云及混合云场景。
实际上,阿里巴巴电商平台本身已经全面容器化,能够部署和管控超过几十万容器规模,在双11狂欢节稳定支撑了每秒175000次的订单交易。
从这一角度讲,Cloud Native绝不仅仅是公共云所特有的。Cloud Native是企业数字化转型的一部分,可以以混合云的方式部署在企业数据中心内,这应该是企业新一代IT架构的基础。