阅读 1104

什么是云计算?

文章首发于:github.com/USTB-musion…

写在前面

“云计算”这个词最近几年频繁出现在媒体的报道中,可以说非常地火热,但身边很多小伙伴说对这个词有些虚无缥缈的感觉。相信很多人查阅过云计算的相关资料,然后听说过VMware,KVM,Docker,K8S,OpenStack,虚拟化等等这些名词,这些都是云计算的范畴,但很多初学者对这些概念云里雾里,想把这些技术串起来就更难了。所以在这里写一篇文章介绍一下云计算的一些重要名词以及它们之间的联系,还有云计算是怎么发展起来的?它跟原来的技术有什么区别?它又会引出哪些新的层面的东西?

什么是云计算?

如果你在搜索引擎搜索云计算是什么?可以会有好几十种答案,那是因为没有机构对云计算给出明确的定义。那简单可以怎么理解呢?

云计算是一种按需使用,按量付费的服务模式,提供可用的、便捷的、按需的网络访问,可配置的计算资源池。

举个例子,在云计算出来之前,一家公司要建立系统来支撑自己的业务,那么需要自己建机房,买物理机,搭系统,开发对应的应用,然后还需要设立专人维护。在传统情况下,建立系统的成本是高昂的。而云计算提供一种按需租用的业务模式,用户需要建立系统,只需要向云计算提供商租用他想要的服务即可。

云计算其实是一个很久远的问题,大概在2000年左右,IT开始流行起来,很多企业就已经在做数字化转型,在那个时候,很多大型机构比如说银行,医院,学校就希望把之前那些繁杂,需要人工处理的业务转移到服务器上进行处理。在那时,自行采购硬件和租用IDC(Internet Data Center)机房是主流的IT基础设施构建方式,除了服务器本身,机柜、带宽、交换机、网络配置、软件安装、虚拟化等底层诸多事项总体上需要相当专业的人士来负责,作调整时的反应周期也比较长。

对于云计算,网上有一个比较形象的解释:

概念解析:一日三餐吃货论

饿了要吃饭,在家里自己做饭属于自建私有云,需要建造厨房购买锅碗瓢盆柴米油盐等,吃完饭还需要自己刷锅洗碗等运维工作,费时费力;

外面餐馆提供的就相当于公有云服务,按需胡吃海塞吃完结账抹嘴走人,餐馆后厨如何安排做菜顺序并加快出菜速度就是负载均衡和虚拟化概念; 请厨师到家里上门做饭则属于典型的混合云,在资产安全的情况下有限使用公有云。

云计算的四种部署方式:公有云、私有云、混合云、行业云

公有云: 为多个客户共享一个服务提供商提供的计算资源,客户按照自己的实际需要,通过租赁的方式来获取这些资源,如AWS,阿里云,腾讯云等。

私有云: 为计算资源由一家企业专用并由该企业掌握,私有云一般部署在企业的数据中心,由企业的内部人员管理,实力雄厚的大公司趋向于构建自己的私有云,如腾讯私有云,银行私有云等。

混合云: 为公有云与私有云的混合,混合云的策略是在私有云部分保持那些相对隐私的操作,在公有云部分部署相对开放的运算,混合云可以兼顾两种云的优点,如公有云+私有云、多云互通。

行业云: 也是一种公有云,只不过针对特定行业进行优化,比如针对金融行业特殊优化做出来的金融行业云,针对教育行业特殊优化做出来的教育行业云。

云计算的三种服务方式:IaaS,PaaS,SaaS

云计算分为三种交付模型,分别是Iaas,Paas和Saas,它们的区别如下:

  • IaaS(Infrastructure as a Service),即“基础设施即服务”,一般指云计算所提供的计算、存储、网络等基本底层能力;
  • PaaS(Platform as a Service),即“平台即服务”,通常指基于云底层能力而构建的面向领域或场景的高层服务,如数据库、应用服务等;
  • SaaS(Software as a Service),即“软件即服务”,通常指通过网络提供软件程序服务,如ERP,腾讯文档等;

结合下面这张图看更加直观:

目前主流的云计算提供厂商,如AWS,阿里云,腾讯云,华为云等都是提供以上三种层次的资源,用户想要哪个层次的资源,云计算厂商就提供什么资源。那这么多的云计算服务,云计算厂商又是怎么提供给用户的呢?这时候就诞生了各种软件和平台,负责对资源进行调用和管理。

什么是虚拟化?

虚拟化是实现云计算的关键技术之一,那什么是虚拟化呢?虚拟化就是通过Hypervisor/VVM(Virtual Machine Monitor)隐藏底层计算平台的实际物理特性,为用户提供抽象、统一的虚拟计算环境。主流虚拟化技术有 VMware、Xen、KVM等。

Hypervisor,也叫做VVM,不是某款具体的软件,而是一类软件的统称,主要用来做物理资源的虚拟化。根据Hypervisor/VMM的分类,可以分为两类:

1.裸金属虚拟化(I型虚拟化)

VVM直接运行在硬件(物理机)上。虚拟机运行在VVM之上

2.宿主型虚拟化(II型虚拟化) 硬件(物理机)上安装正常的操作系统(例如Linux或Windows),然后在正常操作系统上安装VVM,生成和管理虚拟机。

还有一种就是混合虚拟化,就是上面两种的混合。

目前KVM是最受欢迎的虚拟化技术。

KVM,全称是Kernel-based Virtual Machine,翻译过来是「基于内核的虚拟机」,是一种内建于Linux中的开源虚拟化技术。

类似于KVM这样的VVM软件,实际上是提供了一种虚拟化能力,来模拟CPU的运行。但是交互不是很好,这时候就需要OpenStack这样的管理平台。

Openstack是一个开源的云计算管理平台,主要用来管理“基础设施资源”,便于用户调度和管理,如计算,存储,网络。

这个是OpenStack的web管理界面,明显比KVM的命令行简单明了许多。至此,KVM,OpenStack这些名词已经都解释清楚了,而且它们都属于Iaas的范畴。那Docker,K8S又是什么呢?

Docker & K8S

说到容器,相信大家第一时间想到的就是Docker,它是一种更加轻量的虚拟化技术。但和虚拟机不同的是,容器是进程级的资源隔离,虚拟机是操作系统级别的资源隔离。

Docker的Logo是🐳背着很多集装箱,口号是Build once,Run anywhere。相对于虚拟机,Docker启动更快。

说完Docker,那K8S是什么东西呢?那是因为Docker虽然非常火热,但是将它运用于具体的业务时,调度和管理是非常困难的,所以K8S应运而生。

K8S,是生产级别的容器编排系统。全称是Kubernetes,因为这个单词中间有8个字母,所以缩写是K8S,来自于希腊语,含义是舵手或领航员。它的主要工作就是容器编排——启动容器,自动化部署、扩展和管理容器应用,还有回收容器。

简单地说,K8S是用来管理Docker的,而这两者都不是底层的基础设施,而是属于应用层方面的,所以属于Paas服务。

大数据 & AI

马化腾: 未来互联网就是利用人工智能在云端处理大数据

大数据具有4V特征:Volume(数据量大)、Value(价值密度低)、Velocity(产生速度快)、Variety(数据类型多)。大数据的收集、传输与存储与处理对系统要求比较高,需要专门的组件支持,比如HBase、HDFS、Spark等。AI(人工智能)也有4大要素:大数据、算法、计算力、边界清晰。海量的大数据是根本,然后通过AI对数据进行加工处理,两者的结合才能发挥巨大的作用,且这两者都是第四次工业革命的重中之重。

总结

相信通过上面的梳理,已经对云计算有一个基本的框架认识。信息时代的未来可能是:云计算、大数据、人工智能、物联网、量子计算、量子通信等等。而云计算是产业互联网的基石,随着云计算的愈渐成熟,云计算就像水电那样的成为一个自然而然的东西,可以深入应用到各个领域。

参考链接

10分钟看懂Docker和K8S

科普 | 什么是云计算

什么是云计算?看完这篇文章你就懂了

文章分类
人工智能