云计算总结

Charlie

判断题,20分:基本上都是对的
填空题:概念,架构
设计与计算
问答题

概览架构PPT一页一页看,55分左右


1. 概念

考试重点在云计算概念,技术细节没那么重要

云计算特点:部署模型,服务模型


1.1. 定义

云计算是一种商业计算模型。它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。

云计算是通过网络按需提供可动态伸缩的廉价计算服务。

核心:按需使用、按量计费;基础设施、平台、软件等所有IT资源均作为服务;

1.2. 本质

本质:架构到资源的全面弹性

1.3. 演化

  1. 主机系统与集中计算
  2. 效用计算:考虑后买主机成本高,将IT资源包装成可以度量的服务提供给用户
    • 只规定了计费使用的模式,没有IT资源管理方式的考虑
  3. 客户机/服务器模式
  4. 集群计算
  5. 服务计算:把所有的应用程序都作为服务提供,而不是购买软件
    • 不同服务相对独立,松散耦合,随意组合
    • 重点是服务发现
  6. 个人计算机与桌面计算
  7. 分布式计算
  8. 网格计算
  9. 软件即服务
  10. 云计算:效用计算+服务计算
    1. 增强版的效用计算:不仅考虑计费,还考虑IT管理
    2. 更广泛的服务计算:不仅提供软件,还包括基础设施和平台。

1.4. 云计算发展的推动

  1. 网络带宽提升
  2. 技术成熟度
  3. 移动互联网的发展
  4. 数据中心的演变
  5. 经济因素:降低成本、节约资源、可持续发展
  6. 大数据:存储和计算大数据的需求

1.5. 云计算特征和分类

1.5.1. 概念模型

  1. 各类用户:企业/政府/学术机构/个人
  2. 各种终端
  3. 按量付费的商业模式
  4. 简化的服务接口
  5. 公有云和私有云

1.5.2. 特征

  1. 物理特征:超大规模
  2. 技术特征:虚拟化
  3. 商业特征:按需服务
  4. 使用特征:
    1. 通用
    2. 高可伸缩性
    3. 极其廉价
  5. 目标特征:高可靠性

1.5.3. 部署模型

  1. 公有云:由第三方提供者拥有的可公共访问的云环境
  2. 社区云:类似公有云,但访问被限定为特定的云用户社区
  3. 私有云:由一家组织单独拥有,利用云计算技术来访问组织内部的IT资源
  4. 混合云:由两种或多种不同云部署模型组成的云环境

image.png

1.6. 云服务模型

  1. 软件作为服务 SaaS (Software as a Service)
    • 通过标准的Web浏览器或软件客户端访问云上的应用
    • 如:Salesforce online CRM
  2. 平台作为服务 PaaS (Platform as a Service)
    • 提供用户应用程序的开发和运行环境,包括应用编程接口和运行平台等,支持应用从创建到运行整个生命周期需要的各种软硬件资源和工具。
    • 如:Google App Engine, Microsoft Windows Azure, 数据库、文件系统和应用运行环境
  3. 基础设施作为服务 IaaS (Infrastructure as a Service)
    • 指通过虚拟机方式对外提供计算、存储和网络能力
    • 如:Amazon EC2/S3

image.png

1.7. 云计算三元认知论

  1. 商业模式
  2. 计算范式:
    1. 云体逻辑结构:具体落地的云平台逻辑结构——物理结构就是云数据中心计算+存储+通信
    2. 云栈逻辑结构:面向服务的云平台逻辑结构——物理结构就是管理系统的结构基础设施即服务,平台即服务,软件即服务
  3. 实现方式:数据中心+云平台管理系统

2. 架构

  1. 云计算架构:如何设计整体的结构,计算架构
  2. 云计算架构的二维视角
  3. 逻辑架构:
    • 云体,云数据中心
    • 云栈,重点讲了openstack,分层如何从技术角度构建
  4. SOA
    • SOA是什么
    • 和云的关系

2.1. 计算架构及演化

架构(Architecture)是指系统或应用程序的设计和组织方式
计算架构是指描述计算机系统功能、组织和实现的一组规则和方法

  1. 中央集权架构:所有计算资源、业务逻辑集中在一台主机
  2. 客户机/服务器架构(C/S架构):客户机承担少量计算和全部I/O任务,服务器承担主要计算任务
  3. 中间层架构:把业务逻辑和数据服务放在两台服务器上,本质还是C/S架构
  4. 浏览器/服务器架构(B/S架构):客户端只显示和运行基于浏览器的脚本程序,Web服务器层屏蔽各中间件的差异,提供通用的用户访问界面
  5. C/S和B/S混合架构
  6. **面向服务的架构(SOA)**:将应用程序的不同功能单元(即服务)通过这些服务之间定义良好的接口和契约联系起来

2.2. SOA

  • SOA是什么:面向服务的体系结构SOA是一个组件模型,将应用程序的不同功能单元(即服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它独立于实现服务的硬件平台、操作系统和编程语言,使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。

  • SOA和云的关系

    1. 服务重用性和灵活性:SOA让IT系统变得更有弹性,以便更灵活、更快地响应不断改变的需求,解决“重用软件功能”的问题
    2. 云计算采用的是面向服务的计算架构

2.3. 云计算架构的二维视角

最易于理解的二维视角:基础架构 + 应用程序; 两者分别视为:后端 (云组件) + 前端(给用户的服务)

进一步的分层架构:

image.png

  1. 虚拟化层
    • 将硬件转换为统一的IT资源【可灵活拆分、统一计量、统一管理、软件定义的】
    • 可以在不同的抽象层实现:应用层、操作系统层、体系结构层、硬件层
  2. Web服务层
    • 将云资源提供给客户的一种最方便的方式,解决大部分客户无法直接使用虚拟机的问题
    • 支持面广,对客户端要求低,浏览器就可以访问,所有服务通过REST API提供
  3. 服务总线层
    • 中间件层,封装计算服务、数据存储、消息传递
    • 分离用户与虚拟化层、连接用户与Web服务层
  4. 客户机用户界面
    • Web门户,把各种服务混搭集成在一个界面

2.4. 云计算的逻辑架构

云体:云计算的物质基础,目前可以认为云体就是数据中心。包括了网络、服务器、交换机、电力等。
云栈:云平台,是在云上构建的运行环境。可以管理应用程序。如openstack。

3. 分布式计算

会有一点点涉及,不需要争对复习也能回答出来

虽然不考,但概念和云计算连接很紧密

4. 分布式存储

同上

考试几乎不涉及

5. 虚拟化技术

大概知道构建云的时候起到什么作用。

虚拟化技术和云计算的关系

云计算里面涉及哪些具体的虚拟化技术?云计算中需要对哪些资源进行虚拟化?

对计算资源做虚拟化时用到哪些具体的虚拟化产品?VMWare,XEN,docker,KVM
VMWare和docker的区别,分别属于哪种类型?

不需要知道实现,要知道类型

虚拟化的角度和层级,是否依赖宿主操作系统
在实现虚拟化的时候是基于软件的完全虚拟化,还是半虚拟化,还是硬件辅助的虚拟化(知道概念)
裸机虚拟化,寄宿虚拟化
CPU,内存,I/O虚拟化
容器属于什么层级的虚拟化?

云计算中的虚拟机迁移:迁移方案,对比


5.1. 云计算和虚拟化的关系?

  1. 虚拟化是云计算的核心技术,但不是其专有技术。
  2. 云计算种虚拟化的核心思想利用软件或固件管理程序构成虚拟化层,把物理资源映射为虚拟资源。在虚拟资源上可以安装和部署多个虚拟机实现多用户共享物理资源

5.2. 云计算里面涉及哪些具体的虚拟化技术?

  • 硬件虚拟化:
    1. CPU虚拟化
    2. 内存虚拟化
    3. I/O虚拟化
  • 操作系统虚拟化
  • 网络虚拟化:基于主机,基于网络,基于存储设备
  • 存储虚拟化:核心网,接入网,虚拟机网络

5.3. 至少说出四个虚拟化产品

VMWare,XEN,docker,KVM,lxc

5.4. 虚拟化层级

  1. ISA级虚拟化
  2. 硬件级虚拟计划
  3. 操作系统级虚拟化
  4. 运行时库虚拟化
  5. 应用程序级虚拟化

5.5. 虚拟化类型

硬件仿真(裸机虚拟化):Hypervisor直接对硬件切分和抽象,再安装客户操作系统
寄居虚拟化:需要主机操作系统,再运行VMM(Virtual Machine Monitor,虚拟机监视器) ,再安装操作系统

全虚拟化:Hypervisor或VMM负责控制硬件和“传话”
类虚拟化(硬件辅助虚拟化):不再以普通操作系统的方式访问虚拟硬件资源,需要修改操作系统

5.6. VMWare和docker的区别,分别属于哪种类型?

  • 区别:虚拟机和容器的区别
    image.png

  • 类型:都属于寄居虚拟化。

5.7. 云计算中的虚拟机迁移

不仅仅是内存的迁移,还有网络,存储设备的迁移

  1. 内存迁移
    • image.png
  2. 网络迁移
    • 虚拟机所有网络设备,包括协议状态(如TCP连接状态)以及IP地址都要随之一起迁移;通过发送并修改相关配置实现
  3. 存储设备迁移
    • 以共享的方式共享数据和文件系统,而非真正迁移
    • 目前大多数集群使用NAS(Network Attached Storage,网络连接存储)作为存储设备共享数据

6. 容器

考试没什么内容

属于操作系统的虚拟化,和硬件级的虚拟化有什么区别


6.1. 容器是什么级别的虚拟化?

属于虚拟化层级中的操作系统虚拟化

6.2. 容器和虚拟机的区别?

  • 虚拟机:抽象并虚拟化计算机物理资源
    1. 模拟计算机的整个物理基础设施,如磁盘、驱动器和服务器设备
    2. 操作系统级别的资源隔离
  • 容器:更轻量化的虚拟化技术
    1. 模拟操作系统,而非硬件
    2. 进程级别的资源隔离

7. 网络

唯一可以出计算题的部分,4种网络,需要计算和设计

会告诉实现的逻辑,不用背。

计算每一种类型的网络架构下,需要多少交换机,可以容纳多少台主机
要画出来再计算


  • 改进型树结构:FatTree,VL2
  • 递归层次结构:DCell,FiConn,BCube
  • 光交换网络:Helios, OSA
  • 无线数据中心网络:WDCN
  • 软件定义网络:Openflow

image.png

7.1. FatTree

  1. K叉树,K个Pod(集装器),每个Pod有K个交换机,其中K/2个接入交换机,K/2个汇聚交换机。
  2. Pod中每个交换机有K个接口,K/2个接主机,K/2个接汇聚K/2个接接入,K/2个接核心
  3. 个核心交换机,每个交换机K个端口接K个汇聚交换机。
  4. 一个Pod内的所有交换机相互连接:完全二分图。
  5. 一个Pod内的每个汇聚交换机与一部分核心交换机连接,但是一个Pod和每一个核心交换机都有连接。
    image.png

但是,FatTree的扩展性受限于核心交换机端口数量,目前比较常用的是48端口10G核心交换机,在3层树结构中能够支持27648台主机。

7.2. VL2

若干服务器连接到机架(接入)交换机
每台接入交换机与两台汇聚交换机连接
每台汇聚交换机与所有核心交换机连接

image.png

7.3. DECell

构建高层次网络时,需要的低层网络的个数等于每个低层网络中的服务器个数加1。

image.png

7.4. FiConn

  • 服务器使用两个网卡端口:主用端口连接低层网络,备用端口连接高层网络
  • 递归结构定义
    1. 第0层为基本构建单元,n个服务器连接一个具有n个端口的交换机
    2. 每个低层FiConn中备用端口空闲的一半服务器与其他相同层次的FiConn网络中备用端口空闲的服务器连接
    3. k层服务器、k层端口、k层链路

image.png

7.5. BCube

主要使用交换机构建层次化网络
第0层:n服务器连接1交换机
第1层:n个0层连接n个交换机
……
第k层:n个k-1层连接nk交换机

交换机n个端口,服务器k+1个端口

image.png

8. 云数据中心

  1. 绿色节能技术,有哪些措施?
    1. 配电系统
    2. 空调系统
    3. 集装箱数据中心
    4. 管理系统节能策略和算法
    5. 新能源应用
  2. 容灾备份:使用哪些技术
    • 两个方法:数据容灾备份,应用容灾备份
    • 核心思想:复制数据
    • 镜像、快照
    • 其他:基于IP的san技术,数据库的复制技术

9. OpenStack

理解组件之间如何协作,不仅仅是理论上,实际部署的时候怎么通过网络协作,作为基础架构的服务

出题例如,绘制OpenStack上部署服务的概念图


OpenStack是一个管理云计算中计算、存储和网络,甚至是应用的通用平台,其提供Web界面、命令行工具和应用程序接口(API)等使用接口。

9.1. 节点类型

  1. 云控制器
    1. Keystone: 提供身份认证和服务目录
    2. Nova: openstack中提供计算资源服务的项目,负责虚拟机和其他计算资源的生命周期管理
  2. 存储节点
    1. swift对象存储
    2. cinder块存储
  3. 计算节点
    1. nova-compute负责启动和终止虚拟机,通过消息总线监听虚拟机的相关请求
    2. nova-compute通过api server控制hypervisor
  4. 网络节点
    1. nerutron组件

四种节点通过网络连接在一起

image.png

9.2. 不同类型的节点通过什么网络连接?

  • 四种节点如何通过物理网络连接在一起?
    1. 管理网络:Openstack服务之间的通信,包括消息队列、数据库和API
    2. 租户数据网络:为租户创建的虚拟网络提供物理路径
    3. 存储网络:虚拟机和存储节点之间的物理连接
    4. 对外的网络:互联网连接+对外的API网络
  • 使用隔离的物理网络处理不同类型的网络流量:同一个节点在不同网络中使用不同接口

image.png

10. 云计算安全

这部分不做要求

  • 标题: 云计算总结
  • 作者: Charlie
  • 创建于 : 2024-06-14 10:06:00
  • 更新于 : 2024-07-05 12:55:04
  • 链接: https://chillcharlie357.github.io/posts/7b9adefe/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论