什么是真正的云原生 -- 应用视角
2020云原生落地之年
2020年之前,各个公司都在落地微服务。随着微服务落地,容器技术得到广泛应用,Kubernetes,Docker swarm,Marathon等开源容器编排引擎广为流传。Kubernetes在竞争中脱颖而出,奠定了云原生的基础,形成了容器编码的标准。过去的2020年,大部分公司都引入了云原生相关技术架构。
什么是云原生?
百度百科:云原生是基于分布部署和统一运管的云端服务,以容器、微服务、DevOps等技术为基础建立的一套云技术产品体系。
关于云原生的解释,各个平台给出的不太一样,今天读到阿里巴巴云原生团队一篇文章: 什么是真正的云原生?,和我的认知非常吻合,这个推荐给大家,并加上自己的理解。
云原生:因云而生的软硬一体化架构,就是云原生。
这里面有多个概念:
首先就是:云。
应用要跑在云端能够动态扩缩容,不能是自己机房的两三台机器。两三台机器及时用了k8s和容器也不能称作云原生。
其次:软硬一体
硬件层面需要全球部署高可用云服务平台,基于云服务的自动扩缩容应用,成为云原生应用。
自动扩缩容:Kubernetes
基于k8s和容器技术,可以让企业很方便构建自动扩缩容的应用,k8s是云原生最重要的基础设施。
云原生时代
我们很幸运,我们正亲历一个迈入云时代的历史性进程。
多年以后,新一代的新新人类,他们会更幸运,他们接触的一切计算环境都是云原生的。他们天生就会认为,云计算资源是无处不在、取之不尽、用之不竭的,他们不会关心云资源在哪里、有多少。就像今天我们使用自来水一样,没有人会费劲心思考虑水从哪里来。
企业如何落地云原生系统
-
尽可能利用云资源
当前云原生数据库、云原生大数据、云原生容器、云原生中间件、云原生安全、云原生容器等等云服务已经非常成熟,可以开箱即用,大大节省中小企业运维成本和门槛。让企业只需要专注应用开发。
-
微服务架构
云原生的特点是动态扩缩容,如果单体架构,项目高可用很难保证,一旦某个业务或者接口产生瓶颈就全平台宕机。另外单数据库一条慢sql会导致宕机。
需要基于微服务设计系统,针对不同业务不同特点动态扩容才有意义。 -
Serverless
这里有一篇介绍serverless的文章:一篇文章看懂Serverless
函数计算更是为云而生, 直接将函数部署到云,进一步高效运用云资源。