对于许多开发者来说,对于云原生(Cloud Native)这个词可能耳熟能详。甚至许多开发者现在就在用着云原生。
但是,你们清楚云原生的前世今生吗?
程序员只懂写代码,那么你也就只会写代码;可如果你还懂代码背后运行的平台,那么你的技术才是真正的“有血有肉”。
一、什么是云原生?
不同的企业对于云原生有不同的解释,当前在业界具有广泛影响力的云原生计算基金会(Cloud Native Computing Foundation, CNCF)认为,云原生是一类技术的统称,通过云原生技术,我们可以构建出更易于弹性扩展的应用程序。
这些应用可以被运行在不同的环境当中,比如说私有云、公有云、混合云、还有多云的场景。
二、云原生包含了哪些技术?
它包含了当前业界的一些热门的技术,比如容器、微服务、服务网格、Serverless、DevOps,API管理等。
通过云原生技术构建出来的应用程序,称之为云原生应用,底层基础架构的耦合比较轻,因此易于迁移,它可以充分地利用云所提供的能力,因此云原生应用的开发、部署、管理相对于传统的应用程序更加高效和便捷。
三、关于云原生计算基金会(CloudNative Computing Foundation, CNCF)
云原生计算基金会(Cloud Native ComputingFoundation, CNCF)成立于2015年12月11日,由谷歌与Linux基金会联合创办,成立这个非盈利组织的初衷为推广孵化和标准化云原生相关的技术:
1.推动云原生计算可持续发展;
2.帮助云原生技术开发人员快速地构建出色的产品。
CNCF成立最初只有十多家创始成员,包含谷歌、IBM、Red Hat、VMware……经过几年的发展,目前CNCF已经有超过300个会员,涵盖国内外的知名IT厂商,包括微软、亚马逊、苹果、阿里巴巴、华为等,发展地十分迅速。
四、云原生技术的作用与意义
对于应用开发团队而言,原来云原生技术可以提升应用开发的效率,提升应用交付的质量。比如通过容器,技术开发团队可以更容易地获取开发所需要的环境与资源,开发出来的应用可以被运维团队更容易地部署和管理。通过DevOps的最佳实践,应用交付的速度和质量可以被有效的提升。
对于业务方来说,云原生的好处是所提交的需求,可以更快地被响应和实现。因为云原生技术可以有效地缩短应用交付的周期,让需求更快地变成代码,代码更快地变成线上的应用,最终为用户服务,实现价值。云原生应用可以更好地弹性扩展,满足不同业务的需求。例如容器应用提供的应用自愈能力,可以帮助减少应用的停机时间提升用户的体验。
对于企业来说,云原生技术可以通过有效提升应用开发、交付效率,简化研发工作,让开发者聚焦研发创新、业务创新,有效地提升团队的创新能力,从而提升企业在市场的竞争能力。
五、云原生适合大企业还是小企业?
对于大企业来说,数字化转型战略和上云计划,通过云原生可以充分地利用云的优势,让企业在云上的投资获得最大的收益。因此,阿里云也曾称:云原生,是企业数字化转型的最短路径。
对于中小企业来说,通过SAAS化的云原生技术和产品,可以获取以往只有大企业才拥有的计算资源,小企业由于人员、财力等资源相对紧张,更应该在业务之初就建于云原生之上,利用前沿云原生技术倡导自动化和智能化,可以高效提升产品开发的交付效率,把有限的精力放在核心业务的创新上,让企业更快速的运转、盈利。