云计算是一种基于互联网的计算方式,通过这种计算方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。云计算依赖资源共享以达成规模经济,类似基础设置(如电力网)。
云计算最基本的概念就是云加端,我们有一个云端,在云端上有大量的计算、存储、网络等各种资源,我们就可以通过互联网把这种资源分发给全球各地的用户,所以互联网是云计算的基础
当你需要一些资源的时候,你就可以直接去云计算厂商网站上选购,根据你自己的需求选购你所需的资源,你选购资源的多少决定了所需的费用
快速弹性伸缩是云计算相比于传统IT系统最大的优势,通过云计算可以快速、自动地为应用程序提供额外的计算、存储和网络资源,以满足瞬时的、非常大的负载需求,随后又可以自动缩减资源,以节省成本
举个例子:比如微博经常会有一些热点话题,这个热点话题一旦出现之后,微博的业务量会在极短的时间内快速飙升,那这样的话,对于微博后台服务器的压力是非常大的,如果我们只有传统的那种IT设施,对于这种需求是搞不定的,用户的流量大到一定程度把系统冲掉了,但是在玩微博的时候,微博并不会因为热点话题的出现导致系统垮掉,就是因为微博采用了云计算这种快速灵活的特性,当我们的业务访问量快速飙升的时候,在微博的后台,他的服务资源也可以随着业务量的飙升而快速的扩展,这样就保证了我们每一个用户的用户体验,12306也类似
云计算将多个客户的计算、存储和网络资源集中管理和分配,以最大化资源的利用率和效率。
对于每一个用户来说,云计算的资源是无限的,或者说云计算厂商提供了一个无线资源的资源池给用户用(好比对于每一个用户来说,国家电网的电是无限的)
云计算通过广泛的网络接入(如互联网、私有网络、虚拟专用网络等)使用户能够从任何地方、任何设备上访问和使用云服务。
资源的使用量和使用时长可计量,根据使用的资源来决定费用,好比国家电网,用多少电有统计,用多少电花多少钱
云计算的分类有两个维护:
服务模型分类:
部署模型分类:
例如华为云、腾讯云、阿里云,通过Internet为外部客户提供的云,并根据用户的使用情况来进行收费
由企业或机构独享使用的云,仅供自己内部人员或分支机构使用,一般部署在企业或机构的数据中心
对于同一份数据,同一套应用,同时采用了私有云技术构建自己的IT服务平台,同时又采购了公有云服务商提供的IT服务,一般是需要具备可控的前提下,具备一定的弹性或可靠性,典型的应用场景又:潮汐应用、混合云灾备
比如将面向用户的服务放在公有云上,这些服务可以获得弹性伸缩的特性,可以避免业务量突然暴增导致的服务无法访问,把自己的核心业务数据放在本地,可以确保数据安全
用户可以通过网络使用计算机(物理机或虚拟机)、存储空间、网络连接等完善的计算机基础设置服务
IaaS云一般用于企业的资源分配部门。说白了就是提供一台虚拟机,这台虚拟机是空白的,使用者可以根据自己的需求在这个系统上安装自己所需要的软件
将软件研发的平台作为服务提交给用户,意在加快SaaS应用的开发速度
PaaS云一般用于软件开发部门,主要提供的是一些运行环境或变成环境,开发者做对应的开发或业务上线时无需再手动搭建对应环境,提升开发及业务上线效率
通过Internet提供软件的模式,用户无需购买软件,而是向提供商租用基于web的软件来管理企业经营活动
SaaS云一般用于商业场合,比如腾讯的在线文档,可以直接在线编辑,多人共享等
云计算的概念中,它最简单的定义就是云+端,云和端中间是靠互联网连接
云计算由三个要素组成:
数据中心是云计算后端基础设置的承载体,就好比”用电“后端的电厂,云计算依托数据中心提供各种云计算的服务,从IT视角来看,数据中心是数据计算、网络、存储的中心
云计算的逻辑架构
APP |
运行在云主机上的软件(业务) |
VM |
虚拟机、云主机 |
CloudManager |
云管软件,云资源的管理与调度 |
Hypervisor |
虚拟化层软件,虚拟机运行依赖于Hypervisor |
OS |
操作系统,运行在硬件上的系统 |
硬件 |
数据中心的一些硬件,服务器、存储设备、网络设备等 |
DC |
Data center,数据中心 |
传统IT架构通过数据中心用的底层设备:存储、网络、服务器,包括一些管理和安全的服务,在这些传统的设备之上部署操作系统,在操作系统之上部署所需的应用,不同的服务器上面部署这不同的业务和应用
如下图,这就是传统数据中心的IT业务架构,也叫烟囱式架构,在这种架构上,一套硬件设备上可能只能跑一套业务系统,整个业务是比较僵化的,不能够灵活地根据业务需求来进行调整
在“云化数据中心”内是将资源池化,将底层的计算资源、网络资源、存储资源纳管进一个资源池,云管平台可以将整个的资源池进行一个统一的管理
硬件和云管平台之间中间还有一层,叫虚拟化Virtualization,也就是云计算逻辑架构中的Hyperviso这一层,通过Hyperviso层可以实现将底层的硬件设备抽象化和虚拟化,把计算、网络、存储抽象为计算虚拟化资源、网络虚拟化资源和存储虚拟化资源,通过这些资源就可以灵活有效地给客户提供他们所需的资源,所有的虚拟化资源也是在云管理平台的管理之下,所以云管平台即管理着硬件资源,也管理着虚拟化资源,用户可以接入云管平台来获取所需的计算、存储、网络资源
云管理平台有诸多功能,如:
虚拟机管理:云管平台来管理云资源池中所有的虚拟机的,租户来管理自己的虚拟机, 虚拟网络服务:云平台的虚拟网络,让用户的虚拟机在不同的情况下都可以正常通信
计量系统:通过计量系统可以计量用户使用了多少资源、多长时间,从而收取不同的费用
编排系统:给用户提供一个界面,用户把自己的需求输入进去,云管理平台可以根据用户的需求编排出来能够实现用户需求虚拟机的业务系统
一个数据中心的资源是非常多的,为了更方便的管理这些资源,认为定义了以下概念:
有了这些概念就可以比较有逻辑的根据用户的需求来划分云计算资源池中的所有资源
如下图,云平台管理员是一个超级管理员,他可以管理整个云平台中的所有资源,这个时候有一个客户来向云平台管理员来申请资源,这个客户可能是一个独立的公司,或者这个公司内某一个独立的部门,这个客户需要一定数量的资源,这个部门或者这个公司他又要把它拿到的资源再分配给他的员工
这个部门或者这个公司所代表的角色就是租户,平台管理员根据租户需求把资源按需地划给他们,这个部门或者这个公司我们称之为租户管理员
租户可以向平台管理员申请资源配额,平台管理员来决定是否把资源授权给对应租户。
租户管理员拿到资源之后,他就相当于有了一个较小的资源池,在租户自己所管理的资源池内,租户管理员就可以进一步的将资源分配给最终用户,比如公司或部门内部的某一位具体的员工
最终用户根据自己的实际需求来向租户管理员申请所需资源,租户管理员根据实际情况来审批最终用户的资源请求,然后把资源下发给他
员工根据自己的工作需求来向租户管理员申请他需要多大的虚拟机等等