分享

一文详解云计算,全程纯干货

 张问骅 2023-02-20 发布于甘肃

一、什么是云计算

图片

为什么会出现云计算?

1、以前电脑刚发明的时候,个头还很大,而且也没有网络,每台电脑(PC)都是单机运行。后来网络发展起来了,多台电脑就依靠着网络进行通讯,协同工作。而云计算经常提到的一些“资源”术语,带到我们个人PC来比划的话,CPU、内存就是我们的“计算资源”;硬盘就是我们的“存储资源”;宽带联网就是我们的“网络资源”。

2、后来单台电脑的性能越来越强了,人们就把NB的PC称为“服务器”。企业只要把大量服务器集中起来,放在机房里,然后让用户通过网络,去访问和使用机房里的计算机资源,我们就把它称为“数据中心”。

互联网发展初期,都是一台物理服务器装一个操作系统,这样就会引出两个问题:

(1)时间不灵活:每次企业想要采购一批新电脑时,供应商都要花费大量时间准备。就算资源到位了,用户还需要花费大量时间装操作系统;

(2)空间不灵活:用户可能只需要2G内存、100G的硬盘,但企业提供的最低配都是4G内存的。这时候如果让用户花费更多钱去买PC,反而与其需求相悖。但每个用户的需求都不一样,企业也不可能都去迎合。所以就造成了PC资源分配不均,进而导致资源浪费。

3、为了解决上述问题,人们提出了虚拟化。虚拟化是云计算的基础。简单来说,虚拟化就是在一台物理服务器上,运行多台“虚拟服务器”。这种虚拟服务器,也叫虚拟机(VM,Virtual Machine)从表面来看,这些虚拟机都是独立的服务器,但实际上,它们共享物理服务器的CPU、内存、硬件、网卡等资源。

时间灵活性:通过虚拟化平台(Hypervisor如VMware、KVM、Virtual Box等)虚拟出多台电脑,十分钟左右即可完成

空间灵活性:把服务器的物理CPU、内存、硬盘都虚拟出一小块来,再由运维工程师根据用户实际的需求进行合理分配(人工调度)。

4、云计算的本把各类独立的资源(计算资源、网络资源、存储资源)集中起来,通过平台进行统一的管理及分配,可以说只要你付费申请,云计算就可以根据你的需求进行自动调配,自动把所需资源提供给你。(就像我们使用水电煤气一样,我们从来不会想着去建水厂,也不关心水厂在哪里,只要扭开水龙头,水就来了)。

图片

用户满意度提升:当用户将应用部署到云端后,即无需关注硬件和软件问题,它们会由云服务提供商(公有云)的专业团队去解决(企业的私有云需要自行组建团队运维)

云计算具备的功能:

(一)云端资源在用户层面是无限的,只需按需租用,即可满足弹性需求;

什么是弹性?

云计算的特点就是资源能够被灵活调用。当用户使用资源时,云平台就可以根据用户的需求,动态增加和删减资源,不用中断用户的使用,更无需重新申请。这就是“弹性”。

为什么云端资源是无限的?

例如云盘,如果说全国每个用户都分配2T空间的话,那百度再有钱它都支撑不住。那百度怎么处理的呢?

假设百度云分配2T空间给你,如果你不使用,那这2T空间还不是真正属于你的。但随着你上传的文件越来越多,百度云才会将这2T空间逐步分配给你,直到你用满了2T,这个过程是动态扩容的,是有“弹性”的。

当云盘后台监控到全平台的总体存储空间到达阈值的时候,企业就会通过采购流程采购更多服务器,扩充存储资源,在这个过程中用户是无感知的。只会觉得,只要有钱买云盘空间,买VIP,那我的空间就会取之不尽用之不竭。

图片

(二)请求在终端,而计算在云端。

一个完整的云计算环境由云端、网络和终端三部分组成。云端就是指云计算资源,负责完成软件的计算;终端是指我们用来完成请求的设备;网络负责把云端和终端连接起来,完成信息传输(将终端的请求传输至云端,由云端把执行结果反馈到终端)。

二、云计算模型

图片

云计算的模型主要有三种。分别为IaaS(基础设施即服务Infrastructure-as-a-Servic)、PaaS(平台即服务Platform-as-a-Service)、SaaS(软件即服务Software-as-a-Service),深蓝色是用户决定的,蓝色是云计算服务商决定的。SaaS 模式下用户没有任何自主权,只能使用云计算服务器提供的应用程序;PaaS 模式下可以自己安装应用程序,但是不能定制操作系统;IaaS 模式下则是云服务商提供(虚拟的)硬件,从操作系统开始都可以自己选择和定制。

IaaS(基础设施即服务Infrastructure-as-a-Servic)

底层的硬件资源(如存储、服务器、交换机、负载均衡等)用户只要租用了laaS服务,就可以自行决定应该安装什么操作系统,应该安装什么类型的数据库,应该要多大存储空间等等,这样就可以直接省略掉机房的搭建与维护。

例子:

(1)企业A要建一个办公楼,还要自己买地,打地基,盖楼等等,这种就类似我们云计算前的IT基础设施建设,全部都要亲力亲为。

图片

(2)企业B不想买地,于是选择一个园区,租用一栋或多栋办公楼,自己来做内部的改造和装修。

云计算:企业B就相当于用户,园区相当于云计算laaS供应商

图片

OpenStack---laaS层云管理平台

图片

OpenStack将计算、存储、网络资源打包起来,并通过API接口(应用程序接口)的方式提供给用户调用。以前一个服务器上线,可能需要协调网络组调网络、平台组装系统、安全组搞安全,整个流程下来理想情况10小时搞定(主要是协调时间久),传统的服务并不满足云计算的要求,因为云的要求是,申请一个服务器,那我马上可以就可以使用了。

图片

现在租用了云计算的laaS服务后,我只需要在云的前端(web页面)申请(要什么操作系统,要多大的存储空间,只需要傻瓜式点点点即可),把请求下发到OpenStack,那就可以通过自动化脚本自动产生配置,自动把服务器,OS,网络,安全都搞定。用户根本就不必关心服务器要怎么采购,交换机应该怎么配,负载均衡怎么做,操作系统应该怎么装。用户只需要购买IaaS服务即可在平台实现需求。

PaaS(平台即服务Platform-as-a-Service)

PaaS是平台即服务,顾名思义就是云端把用户需要的软件平台(操作系统、数据库、中间件、运行库等等)都搭建好,用户只需要租用PaaS服务,就可以在平台上下载及安装自己所需的软件即可。就好比租用商场店面,物业(PaaS供应商)只是提供店面给你,至于租用后你怎么装修都是你自己的事了。

疑问:如果用户需要在100台主机上安装自己的应用系统软件的话,是否都是人工安装?

不需要人工安装,PaaS平台提供自动化工具(Ansible、容器等。用自动化脚本在实际环境中部署安装可能会产生不一样的问题,但是容器可以把应用封装起来,以实现应用的标准化,后面会介绍到)。用户只需要结合自动化工具把自己的配置信息以及应用软件融入到自动化安装过程中即可,这样就可以实现应用层面的“弹性”。

如果要细分的话,在PaaS层也分两种情况:

1、半PaaS服务:供应商只安装操作系统,其他软件及应用都要租户自行安装。

2、全PaaS服务:供应商帮你安装好操作系统及你应用系统所依赖的“通用软件”

注意:PaaS并不是所有依赖软件都支持,只支持通用的,例如Oracle、MySQL这些,如果名气较小的数据库可能就没法了。正是因为PaaS层所支持的通用软件有限,所以有特殊需求的用户基本上都是选择“半PaaS服务”。

PaaS层在云计算三个模型中是承上启下的作用,向上提供业务调度中心服务,可以通过API把资源开放给SaaS用户。向下可以通过laaS提供的API接口调用硬件资源。

K8S---PaaS层云管理平台,主要用于管理容器。与laas层的OpenStack是相互独立的云平台管理技术,管理的对象不一样(各管各的),它们之间并不存在依存关系或上下级关系。

图片

SaaS(软件即服务Software-as-a-Service)

SaaS是软件即服务,在这个层面,云端已经把操作系统、数据库、中间件、软件应用等等都给你部署好了。连应用软件都不用装,用户登录之后直接就可以使用了,用户层面只需要管理自己使用软件所产生的数据即可。相当于去网吧玩游戏,网吧老板(SaaS服务商)都帮你把Windows、游戏、浏览器、播放器都给你装好了,你只需要租用一台电脑,你就可以愉快地玩耍了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多