> 文档中心 > 【云原生系列第一章】---什么是云原生技术?

【云原生系列第一章】---什么是云原生技术?

目录

一、我们先来知道什么是云?

二、我们再来了解什么是云计算?

三、最后再来了解云原生技术

1、云原生的技术范畴有以下几个部分

2、云原生的技术核心与落地架构


一、我们先来知道什么是云?

云呢,就是位于网络之上的一个可以动态伸缩的资源池。

那么在这个资源池里面,可以计算资源,也可以说这里面全是虚拟机,也可以是存储设备。

因为这个资源池是可以动态伸缩的,也就是说当这个资源池对外服务能力不够的时候,我们就可以增加物理机器,就可以相应的增强他的计算力,存储空间就会变大,资源池就变大了

如果我们不需要过多资源的时候,我们可以撤掉资源池的一些机器,这样就会将资源池自动缩小,我们通常将这个形态我们叫做云

二、我们再来了解什么是云计算?

有了云之后,我们使用计算机的方式就会和以往的形式有不一样的地方,比如我们有很多计算的任务,我们要做图片、视频的转码,如果我们采用传统的方式,我们就需要去购买一些机器,等转码任务完成后,机器就会闲置或很少的使用,这也浪费了它的使用资源。

但是有了云之后,我们就可以在云上面租用这样的机器,来短时间的使用去完成转码的任务,任务完成后我们再将租用的机器归还给云。

主要形式就是变买为租、按量付费,对于使用的主体来说,这种形式更加方便实惠,根据需要去挑选租用提高使用效率的同时节约了资金成本。

随着越来越多的企业组织采取了变买为租、按量付费这样的方式,将应用部署到云上面,也正是这样的方式将跑在本地的项目迁移到了云端,所以我们将计算放在云端的方式叫做云计算,也就是我们常说的三种类型IaaS、PaaS、SaaS。

因为科技的发展和实际的需要,云计算的服务商也越来越多,比如亚马逊、谷歌、微软、阿里云、华为云、腾讯云等等

我们将云分布的位置不同又可以称为私有云(位于私有网络上)、公有云(位于共有网络上)、混合云(公有云+私有云混合使用)形态。

三、最后再来了解云原生技术?

“云原生是在云计算时代指导企业组织基于云架构设计和开发应用,并将应用向云端迁移的一套全新的技术理念”

结合我们在之前提到的使用云端对于企业组织更加友好,并随着越来越多的企业将项目上传到云端,云的需求也随着增加,为了满足这些需求,必然需要一些新的技术来帮助企业组织在云上面构建这些可以动态伸缩的高可用的应用,而这些因云而产生的技术我们就把它称作云原生技术。

1、云原生的技术范畴有以下几个部分:

  • 第一部分:云应用定义与开发流程。这包括应用定义与镜像制作、配置 CI/CD、消息和 Streaming 以及数据库等;
  • 第二部分:云应用的编排与管理流程。这也是 Kubernetes 比较关注的一部分,包括了应用编排与调度、服务发现治理、远程调用、API 网关以及 Service Mesh;
  • 第三部分:监控与可观测性。这部分所强调的是云上应用如何进行监控、日志收集、Tracing 以及在云上如何实现破坏性测试,也就是混沌工程的概念;
  • 第四部分:云原生的底层技术,比如容器运行时、云原生存储技术、云原生网络技术等;
  • 第五部分:云原生工具集,在前面的这些核心技术点之上,还有很多配套的生态或者周边的工具需要使用,比如流程自动化与配置管理、容器镜像仓库、云原生安全技术以及云端密码管理等;
  • 第六部分Serverless(这也是我们下一篇开始要进行实际举例开始讲解的内容),它是一种 PaaS 的特殊形态,它定义了一种更为“极端抽象”的应用编写方式,包含了 FaaS 和 BaaS 这样的概念。而无论是 FaaS 还是 BaaS,其最为典型的特点就是按实际使用计费,因此 Serverless 计费也是重要的知识和概念。

2、云原生的技术核心与落地架构:

目前Kubernetes、Docker、微服务服务网格、不可变基础设施、声明式Api这些都是云原生的核心技术。

结合这些技术方面先了解下目前比较符合云原生架构的落地体系是:

  • 采用K8S+Docker进行容器化部署
  • 基于微服务架构开发前后端完全分离的应用,提高灵活性和可维护性
  • 借助敏捷迭代方法,支持功能持续迭代
  • 完善的DevOps工具支持上线发布自动化
  • 利用云平台设施实现弹性伸缩、动态调整,最优化资源利用率

这样的架构构建应用简便快捷,部署应用轻松自如,运行应用无惧流量峰谷,力压传统Web应用架构和以往的IT建设模式,也是互联网发展至今的集大成体系。