大势已来：阿里云梭哈云原生
阿里云正在云原生的路上狂奔，将各个产品、服务都押宝在元原生的领域上。
阿里云 云原生
阿里云正在云原生的路上狂奔，将各个产品、服务都押宝在元原生的领域上。
![](/data/attachment/album/201910/09/081514u0qs7mz0kjk5gtmk.jpg)


### 云原生是什么？


技术圈总是在不停地蹦各种新名词。也不知道从什么时候开始，人们慢慢不怎么提“云计算”这个名词了，而是频繁提到一个新名词“云原生”，好像不这么提就不足以体现云计算原住民的身份。不过，要真的问什么是“云原生”，其实很多人都说不太清楚。随着云原生生态如火如荼的发展，甚至连 CNCF 官方都觉得有必要专门做个定义出来：


![](/data/attachment/album/201910/09/081456oh5m82y8wozzgin7.png)


前一段时间，我在云栖大会上见到了阿里云的李响，就有人问他，“怎么理解‘云原生’？”作为 CNCF 的技术监督委员会成员的李响，以他的角度对此作了阐释：


“我觉得云原生本身实际上就是比较泛的概念，它最终的目标就是利用云上的资源、云上的服务来重构软件开发以及运行时的生命周期。简而言之就是怎么更好利用云。……随着云的发展，云原生本身也会有一些变化，大家接受云原生的理念和实现云原生的情况也会有变化。……我觉得不用太把云原生本身在一个框框里圈定，它更多还是一个核心的概念——更好地利用云释放云的红利，产生相关的技术让大家去实践。”


在我看来，虽然现在云原生的概念的内涵和外延都在不断的变化当中，但是不可否认的是，云计算生态已经从最初的巨石应用、刚性的分布式计算逐渐演变到原生地基于云计算环境进行设计、开发、部署、运维和弹性伸缩。可以说，云原生重新定义了云计算。


借助于云原生技术，一个计算系统可以很便捷的从一个环境中迁移至另外一个环境当中，而这在之前几年，几乎还是不可想象的。就这个场景，阿里云举了一个例子：比如像三维家，他们在上海云栖大会上宣布了全站上云的消息，因为他们已经应用了云原生的方式，仅花了三天把全部业务迁到阿里云上。而在迁移之后，三维家现在可以利用云原生的方式可以充分发挥云计算的弹性，三分钟之内就可以创建 100 个神龙节点去应对突发的业务需求，极大提升企业 IT 的灵活性，并且降低了 IT 成本。三维家表示，“阿里云的容器生态系统打造得非常完善，从监控、日志、服务暴露、应用拓扑、伸缩扩容方面能够做的更加灵活；基础设施的建设和维护稳定性交给阿里云，目前没有出现过问题。”


### 云原生进化


今年我参加云栖大会，有一个明显的感受就是，阿里云在不断的大声谈论云原生。事实上阿里云早已是云原生计算基金会的成员（现在是白金成员），也在这个领域耕耘良久，但是今年，无论是多到你参加不过来的各种主题演讲，还是各种产品和服务的消息，都在不断的讲，云原生、云原生……


在过去大家更多是把互联网和移动互联网的应用，大部分是无状态应用部署在容器平台之上，今年越来越多的企业开始把有状态的应用、交易类的应用以原生化的方式进行交付，进行自动化的运维。


![](/data/attachment/album/201910/09/081823llbfsaxi95sxl45a.jpg)


这次云栖大会上阿里云还发布了 ACK 2.0。ACK 是阿里云容器服务 Kubernetes 版，它提供了高性能可伸缩的容器应用管理能力，支持企业级 Kubernetes 容器化应用的全生命周期管理，简化了集群的搭建和扩容等工作，整合了阿里云虚拟化、存储、网络和安全能力，以打造云端最佳的 Kubernetes 容器化应用运行环境。


关于阿里云容器服务，阿里云的易立说，从 2015 年底公测、2016 年中正式上线到现在的 4 年时间发展非常快，现在已经覆盖了阿里云全球 20 个地域，支撑了国内外数千家客户的生态系统。同时容器产品在持续保持增长，过去 3 年都能保持 400% 以上的增长速度，现在一个月下载次数超过 3 亿次。今年在 Forrester 全球公共云容器平台的评测里面，阿里云是国内排名第一，在 Gartner 报告也唯一入选公共云容器平台竞争格局。


阿里云容器服务优化整合了阿里云整体的计算、存储、网络、安全等核心能力。


比如说计算，不但能够支持强大虚拟机，像神龙这样的裸金属服务，还有异构计算的 CPU、GPU，未来也会包括云栖大会当天发布的含光芯片，通过容器的高效调度能够让 GPU 的利用率提升了 5 倍，而且容器产品能充分把计算资源弹性发挥出来，可以实现分钟级千节点的弹性伸缩，这对客户来说是非常重要的。


而在容器网络方面，它和阿里云的虚拟化网络进行了优化集成，可以实现原生网络一样的性能，与社区的 VXLAN 实现相比提升了 20% 性能。


在存储方面支持阿里云所有的存储产品，包括块存储、网络存储、对象存储等。针对容器场景进行了很多创新，比如说容器高密度部署时容器之间会对 I/O 进行争抢，通过跟操作系统团队进行深入合作，实现了更好的存储 I/O 隔离。另外，还实现了透明、高效的存储缓存，可以低成本支持像高性能计算和AI场景下大数据吞吐量的需求。


本次云栖大会上阿里云发布的 ACK 2.0 面向云原生进化，最重要的是它为整个企业上云奠定了一个新的基石。首先是容器服务全球化的部署，利用在阿里巴巴集团的大规模生产实践沉淀，建立了这样的基础设施。其次，云边端一体化可以实现边缘节点极大降低访问的延迟降低 75%。第三，可以让客户把他的私有云和云端利用 Kubernetes 进行统一管理，应用发布效率可以提升三倍，另外，还提供了全链路的安全架构，对安全风险进行监控。


对于云原生的发展，作为阿里云内部基础设施负责人的李响，在帮助阿里经济体以更为云原生的方式上云，在推动阿里经济体采用 Kubernetes、Service Mesh、Serverless 这些技术。他谈到：



> 
> “阿里和蚂蚁有着最大的 Kubernetes 集群，我们对 Kubernetes 上游拓展性、功能性是最大的贡献者之一，我们今年尝试落地Service Mesh，之前大家对 Service Mesh 的疑问是，它能不能应对一个复杂的场景，尤其和传统的微服务体系对接的场景。在阿里巴巴内部要验证这件事情，我们要告诉大家可以做到，而且我们要告诉大家怎么做到，后续会提供解决方案让大家去做这件事情。
> 
> 
> 第二，大家会思考 Service Mesh 的规模性是不是足够，阿里巴巴其实有巨大规模性的挑战，我们也会解决 Service Mesh 规模性的问题。我们认为阿里巴巴能够使用 Service Mesh，我想世界上 99% 的公司都可以使用 Service Mesh， 而不会遇到它的规模性问题。
> 
> 
> 第三，Service Mesh 是不是会影响核心链路上的性能问题，会不会影响在核心时刻的性能。我们也会在双 11 这种洪峰流量，对流量要求极高的情况下去验证 Service Mesh，使用 Service Mesh，去打磨 Service Mesh，所有打磨的东西会反馈到上流，让用户、开发者享受到这种红利。
> 
> 
> 第四，阿里巴巴通过这些事情培养出一批靠谱的工程师，我们有非常强的兜底能力，当用户遇到任何问题，阿里巴巴都能帮你解决问题，阿里巴巴真的是运营这套体系的，有这个生产实践的经验。
> 
> 
> 阿里巴巴真正把‘云原生’新的概念，在我们认为正确的方向进行落地、进行打磨，最后交付给客户。所有这些东西，当我们说阿里巴巴云上有这样的产品，一定是可靠的，一定是稳定的。”
> 
> 
> 


### 容器安全是重点


当然我们也看到企业客户在使用云原生技术过程中面对几个挑战，第一个挑战就是安全。


安全是企业上云的首要关注。云原生加剧了这个挑战，云原生平台高密度、高动态部署使得遭受攻击可能性增加，而且一旦遭受攻击，用户不知道是谁受到攻击，也没有办法实时应对。


安全是体系性的东西，永远在最弱的一环去攻破整个企业的安全体系。阿里云容器服务实现了非常全面的端到端的云原生安全的架构，包括基础设施的安全，跟阿里云的云安全基础设施紧密基础，利用 RAM 进行认证、鉴权和审计，支持存储的 BYOK 加密等，提供了一个安全的云基础设施。


同时，在应用的生命周期里面用了安全的镜像检测，上线之前要进行扫描，上线之后会进行实时的安全检测。还有运行时的安全，因为安全的风险无处不在，一旦出现了安全问题必须第一时间对它进行监控、报警。


对于企业来讲，大量采用容器之后面临的挑战之一就是安全隔离。比如说一台机器上要混布多种类型的应用，但是有些像金融交易的应用，安全级别敏感性会很高，不希望受到其他应用的攻击和干扰。另外企业除了自己的应用还要部署第三方应用，这个过程中对一些不可信的应用要进行安全的隔离，阿里云引入了安全沙箱一系列的技术。传统的容器 RunC 用是共享内核的机制，很高效，但是安全隔离做得不好，现在可以利用安全沙箱可以进行安全隔离。


在这方面阿里云有一些差异化的优势：首先就是对它进行大量的性能优化，比如说它的网络跟原生的进程没有任何区别，网络性能非常好。整体能够达到 90% 的原生性能，对用户来讲可以获得非常好的安全性，同时对性能损耗是可以接受的。另外，能够让用户自主选择是 RunC 还是安全沙箱，两种容器运行时用户体验是完全一致的，用户可以根据自己对业务需求来选择合适的容器应用技术。


![](/data/attachment/album/201910/09/081854yoszbbkymis7ke7z.jpg)


在安全容器领域有几个重要的项目，如 Google 的 gVisor，以及已经属于蚂蚁金服旗下的 Kata 容器项目等，不过和易立的沟通当中，我了解到阿里云容器服务的安全容器所采用的技术并非照搬 Kata 容器技术，而是集成了目前主流的安全容器项目，加以自身的创新而成的。阿里经济体实际上在容器安全方面投入非常大，包括 Kata，还有其他几种技术。他们与蚂蚁金服、阿里的操作系统团队合作一起来提供这样商业化安全容器的实现。这次发布的安全沙箱容器底层技术针对阿里云进行了大量优化，跟 Kata 技术有些类似，但是里面有很多部分不同，性能也做了大量的优化。


现在提供的是基于虚拟化隔离的安全技术，后续会陆续提供其他的技术能力，它们的隔离级别和适用场景是不同的，用户只要去选择就好了，在保证用户体验是一致的基础上，对用户是透明的。


### 结语


我们看到，阿里云正在云原生的路上狂奔，将各个产品、服务都押宝在元原生的领域上。最后，让我们用李响的一段话来结束这篇文章：“新兴的应用，或者是新兴的领域，我们建议你使用容器轻量级自动化平台，现在我们阿里云、ACK 都是朝着这种模式跟大家宣导的。我们要去帮助开发者，引导开发者从非原生的体系向云原生体系去转移，我觉得这条道路非常重要，这也是阿里云的责任，带动整个国内的基础设施，带动国内云原生体系发展，我们要去承担这件事情。”

