科技云报道原创。
以Docker为代表的容器技术,以轻量级虚拟化技术为初衷,从默默无闻跃进产业视野,如今已经被列在诸多企业IT发展的技术版图之中。标准化云的交付件只是一个开端,随之而来的是一系列技术与管理方法的升级,重大的方法论变革指向Cloud Native(云原生)这一“终极”目标。
距离已经消失,要么创新,要么死亡。
——【美】托马斯·彼得斯
无处不在的全连接,以云为驱动的数字社会,美国管理学大师托马斯·彼得斯《追求卓越》中的这一金句,足以形容当今社会每一个生产组织所面临的数字化冲击。
为了驾驭云计算这一新技术基础平台,Cloud Ready(云就绪)、Cloud Friendly(云友好)、Cloud Resilient(云弹性)、Cloud Native(云原生)等等概念不断定义新IT世界。
云原生,一切为了敏捷
云原生的吸引力,CNCF(原生云计算基金会)对其的设想为:分布式系统应该具备有扩展到成千上万台节点的能力,并且这些节点具有多租户和自愈能力。简单来说,就是更快的上线速度、高容错性、故障自动隔离与自动回复、快速水平扩展能力……
通过采用基于Cloud Native的技术和管理方法,企业可以更好地把业务迁移到云平台,放开以虚拟机替代物理机的思维局限,更加充分地享受云的高效和按需资源能力。
因此,云原生所代表的,不仅是虚拟化之上的技术革新,而是基于云的、全新的软件架构思想和软件开发实践,以及根据商业能力对组织架构进行重组的一套方法论,其核心在“敏捷”二字。
这里的敏捷是包括开发、测试、集成、交付等等贯穿软件生命周期所有环节的敏捷:敏捷基础设施、微服务架构、DevOps、敏捷化交付以及推动企业内部架构革新的康威定律,以此来完美契合云原生的最初诉求。
打开云原生从CNCF所代表的主流阵营说起
由于云原生拥有这样整体性变革思维的和自己的生态定义,很多大型企业才对它趋之若鹜。
2015年,在容器技术迅速兴起成为云环境中的关键组成部分的同时,为了推动基于开源码软件的云原生计算,Google联合AT&T、Box、Cisco、Cloud Foundry Foundation、CoreOS、Docker、Intel、IBM等20余家公司成立开源组织CNCF,其开源容器集群管理系统Kubernetes正式走上台前。
2016年,Docker宣布将Docker Engine核心组件Containerd开源,并捐赠到CNCF基金会。今年5月,阿里云正式加入CNCF成为金牌会员。7月,微软宣布加入了CNCF,成为其铂金会员,微软Azure团队和前Deis CTO容器的首席项目经理Gabe Monroy加入CNCF理事会。8月,AWS又以铂金会员身份加入CNCF。
至此,Google、微软、AWS、IBM以及国内阿里云、华为等几乎全部的云服务巨头都加入了CNCF,并持续加大对云原生计算技术的支持。
目前,CNCF致力于通过广泛的社区合作以协调各类可交互“堆栈”之间的对接,其最主要的10个项目包括管理容器编排的Kubernetes、监控的Prometheus项目、应用程序流量监控的Open Tracing项目、实现logging的Fluentd项目、用于服务网格的Linkerd项目、用于远程调用的gRPC项目、用于服务发现的CoreDNS项目、用于容器运行的Containerd和Rkt项目以及用于容器原生网络的CNI项目。
其中,受到行业最广泛支持的就是Kubernetes项目,451 Research调查报告显示,Kubernetes已经成为云市场最受欢迎的容器调度工具,接受调查的全球IT从业者中,有43%曾使用该工具,同时32%将其列为调度工具的首选。
推动云原生最佳实践
Kubernetes的一鸣惊人迅速走上正轨并非偶然。
起源于谷歌,Kubernetes综合了谷歌系统中十余年来在Borg和Omega设计与实践中的经验。Kubernetes的初始public版本自2014年6月提交开始,凭借其强大的能力迅速波动了云服务市场,随之而来的是全球各大云服务提供商对Kubernetes技术生态的贡献和能力支持,其开源技术社区代码贡献数量飞速提升。
如今,Kubernetes已经实现了为容器化的应用提供资源调度、部署运行、服务发现、扩容缩容等整一套功能。不仅为云原生的服务快速部署、快速横向扩展、故障自动修复、自动化运维等诉求的实现提供了有效方案,Kubernetes通过与敏捷化基础设施的有效结合,能够进一步优化硬件资源的使用。
事实上,目前,容器编排技术有三大最具竞争力的阵营,即Kubernetes、Mesos、DockerSwarm。但Kubernetes以其技术的成熟性和极佳的扩展性占有最大的市场份额。
与之相比,DockerSwarm被Docker公司所把控,而Docker公司具备了完整的公有云以及私有云Docker Data Center解决方案,其开放性有所保留,留给其他玩家的竞争难度可想而知。
Mesos社区相对来说更加开放,同时Mesos和Kubernetes都提供了除Docker之外的容器管理能力,例如Kubernetes不仅支持Docker,还同时支持Rocket容器技术。这使得二者提供给用户更多选择,很大程度上更容易得到企业的青睐。但在技术社区的开放、活跃与多元化方面,Kubernetes还是略胜一筹。
选择Kubernetes的理由有很多,使用Kubernetes也并非没有挑战。最根本的动力在于:IT从来都是一个由新技术驱动的行业。容器已经被全球众多企业所采用,从单机走向集群已成为必然,Kubernetes这一被业界广泛认可并看好的容器集群管理技术,在可预见的未来,将加速云原生成为企业数字化转型升级的重要推手。
【科技云报道原创】