第一章
云计算在2006年大范围传播,施密特提出。
分布式论文:Google File System分布式存储系统、MapReducefen分布式处理技术、BigTable分布式数据库。云计算比喻为发电厂集中供电的模式。
云计算是一种模型,可以方便地通过网络访问一个可配置的计算资源的公共集。这些资源可以被快速提供并发布,同时最小化管理成本以及服务供应商的干预。
效用计算将IT资源包装成可以度量的服务提供给用户使用,也就是将CPU、内存、网络带宽、存储容量都看作传统的效用量来进行包装。
云计算优势:按需供应的无限计算资源;无须事先花钱就能使用的IT架构;基于短期的按需付费的资源使用;单机难以提供的事务处理环境。
云计算的公共特征:弹性伸缩、快速部署、资源抽象、按用量收费、宽带访问
云计算分类:
根据云的部署模式和云的使用范围分类:(1)公共云:云按服务方式提供给大众;(2)私有云:商业企业和其他社团组织不对外开放,为本企业或社团组织提供云服务的数据中心;(3)社区云:由一个社区而不是一家企业所拥有的云平台;(4)混合云:把公共云和私有云结合,用户可以通过一种可控的方式部分拥有,部分与他人分享;(5)行业云:针对某个行业进行特殊定制。
针对云计算的服务层次和服务类型进行分类:(1)基础设施即服务IaaS(位于最底端)(2)平台即服务PaaS(位于中间)(DeVCloud、Saleforce公司)(3)软件即服务SaaS(位于最顶端)
与云计算有关技术:并行计算、SOA(面向服务的体系结构,是一种组织和利用可能处于不同所有权范围控制下的分散功能的范式)、虚拟化
云计算既是一种商业模式、计算范式、实现方式。
开源软件是一种版权持有人为任何人和任何目的提供学习、修改和分发权利,并公布源代码的计算机软件。
自由软件是一种用户可以自由运行、复制、分发、学习、修改并改进的软件。
免费软件是一种开发者拥有版权,保留控制发行、修改和销售权利的免费计算机软件,通常不发布源码,以防用户修改源码。
第二章
- 分布式计算是一门计算机科学,主要研究分布式系统。.分布式计算就是在两个或多个软件互相共享信息,这些软件既可以在同一台计算机上运行,也可以在通过网络连接起来的多台计算机上运行。
- 分布式计算优点:稀有资源可以共享;通过分布式计算可以在多台计算机上平衡计算负载;可以把程序放在最适合运行他的计算机上。前两点是核心思想。
- 分布式概念是在网络这个大前提下诞生的,传统的计算是集中式的计算,使用计算能力强大的服务器处理 大量的计算任务,但维护和建造成本太高。
- ACID原则:原子性A(事务里的所有操作要么全部完成,要么都不做)、一致性C(数据库处于一致的状态,事务的运行不会改变数据库原本的一致性约束)、独立性I(并发的事务之间不会相互影响)、持久性D(一旦事务提交后,所做的修改将会永久保存在数据库)
- 一个分布式系统最多只能同时满足一致性、可用性、分区容错性这三项中的两个。为什么?
- BASE是指基本可用、软状态、最终一致性。
- 一致性散列过程?
- 分布式系统的特性:容错性(避免故障方法:消息重发、冗余)、高可扩展性、开放性、并发处理能力、透明性。
- Hadoop是由Apache基金会开发的分布式存储与计算框架。HDFS的各个组成部分:NameNode(整个集群的管理者,不存储数据本身)、Secondary NameNode(是NameNode的备份节点)、DataNode(实际数据存储节点)、MapReduce模型(既是Hadoop的模块,也是一个计算模型)。
- Apache Hadoop的特性:高可靠性、高效性、高可扩展性、高容错性、低成本。
- 分布式资源管理系统:资源统一管理与调度平台,代表为Mesos和YARN。YARN是由Resource Manager和Node Manager组成。
- Globus定义网格为:一种能够整合的合作使用的由多家组织所拥有和管理的高端计算机、网络、数据库、实验设备的基础设施。
- 网格结构中的软硬件栈:网格组织层、核心中间件层、用户级中间件层、应用接入层。
- P2P系统(对等网络系统)简介:不同于主流的客户端/服务器结构,对等网络结构不存在中心节点或中心服务器,每一个该网络的参与者既是系统中资源、服务和内容的信息提供者,又是消费者,具有信息通信功能。
- 透明计算的核心思想:把所有数据、软件以及用户信息存储在服务器上,而数据的计算在终端执行。
- 区块链的核心特征:块链结构、多独立拷贝存储、拜占庭容错。
第三章
- 云计算中心建设中考虑的问题:持续性问题、能耗问题、安全性问题、冷却问题、出入带宽问题、管理问题。
- 云的四种工作负载模式:时开时停模式、用户迅速增长模式、瞬时暴涨模式、周期性增减模式。
- 面向服务的架构:SOA
- 云基础架构组成:虚拟化层、Web服务层、服务总线层、客户机界面层。
- REST架构的主要特点:组件交互的伸缩性、界面的普遍性、组件发布的独立性、客户机/服务器模型、无状态连接。(可以使用HTTP、URL、XML)
- 云体是云计算的物质基础,是云计算所用到的资源集合。云体是构成云计算的软硬件环境,如网络、服务器、存储器、交换机等,通过网络连接在一起。云栈又叫云平台,是在云上面建造的运行环境。
第四章
虚拟化技术分为:服务器虚拟化、网络虚拟化、桌面虚拟化、软件定义的存储。
虚拟机中运行的操作系统被称为客户操作系统、运行虚拟机监控器的操作系统叫主机操作系统。
x86架构给操作系统和应用程序提供四个特权级别来访问硬件,Ring 0是最高。
虚拟机监控器VMM技术:全虚拟化、半虚拟化、硬件辅助虚拟化。
二进制翻译技术简称BT,是一种直接翻译可执行二进制程序的技术,能够把一种处理器上的二进制程序翻译到另外一种处理器上执行。
全虚拟化是不需要硬件辅助或操作系统辅助来虚拟化敏感指令和特权指令的唯一方案。
容器与虚拟机的对比:
容器和虚拟机都是常见的计算机系统资源管理器,但它们之间有一些重要的区别。
首先,容器是一种轻量级的虚拟化技术,它们是在容器中运行的应用程序,而不是在宿主机操作系统中运行。容器可以管理内存、CPU、I/O和其他资源,从而提高应用程序的性能和可伸缩性。
其次,虚拟机是一种完整的操作系统,它们在宿主机上运行,并模拟多个计算机硬件平台。虚拟机具有较高的性能和资源利用率,但它们需要占用较多的宿主机资源。
容器和虚拟机的主要区别在于它们的设计目标和用途。容器主要用于应用程序开发和部署,而虚拟机主要用于服务器和桌面计算机的操作系统运行。
容器内核知识:namespace资源隔离、Cgroups资源控制、写时复制技术。
第五章
- 分布式存储系统特性:高性能、可扩展、低成本、易用性。
- 分布式存储技术:数据一致性、数据的均匀分布、容错与数据迁移、负载均衡、事务与并发控制、易用、压缩与解压缩算法。
- 根据数据类型分为:非结构化数据、结构化数据、半结构化数据。
- 分布式文件系统存储三种类型的数据:Blob对象、定长块、大文件。
- GFS采用单Master Server多Chunk Server来实现系统间的交互。
- 分布式协议:两阶段提交协议、Paxos协议。
第六章
- 覆盖网络是一种在原有网络基础上构建的网络连接抽象及管理的技术,通常的实现方法是在原有网络基础上构建隧道。
- 通用路由封装协议GRE是一种对不同网络层协议数据包进行封装通过IP路由的隧道协议。虽然GRE提供了无状态的专用连接,但并不是一个安全协议,因为他不使用IPsec协议封装加密有效负载等加密技术。
- 虚拟局域网VLAN是一种对局域网LAN进行抽象隔离的隧道协议,VLAN标识符或标签由以太网帧中的12位组成。
- 虚拟可扩展局域网VXLAN是一种封装协议,添加24位段ID。
- IPsec是用于网络或网络通信的分组处理层的一组安全协议的框架,通常和VPN等隧道技术结合进行报文的隐式保护。
- 软件定义网络SDN本质上是通过虚拟化及其API暴漏硬件的可操控成分,来实现硬件的按需管理,体现网络管理可编程的思想和核心特性。
- 软件定义网络的核心思想是,打破原有网络硬件系统对网络系统抽象分层的束缚。从系统构建的视角,将网络系统自底向上抽象为三个平面,即数据平面、控制平面、应用平面。
- 克服缺陷:数据平面与控制平面分离、构建全局的控制平面抽象。
- 南向API由于需要与底层硬件设备交互,需要标准化的定义,OpenFlow最受欢迎,通常作为通用的南向控制API被使用。
- NFV侧重服务、SDN侧重管理。
- ML2提供驱动:类型驱动、机制驱动。
- 基于组的策略GBP是OpenStack的API框架,提供了一种Intent驱动模型,旨在以独立与底层基础架构的方式描述应用程序需求。
第七章
- 云计算安全的两个核心问题:用户数据安全与隐私保护需求。
- 云安全服务可以分为云基础设施服务、云安全基础服务、云安全应用服务。
- 云计算安全需求的重点:可信访问控制、密文检索处理、数据存在与可使用性证明、数据隐私保护、虚拟安全技术、云资访问控制、可信云计算。
- 按攻击层次分为Hypervisor、GOS和应用程序,其中前两个为主要对象。
- 安全威胁:数据泄露和丢失(防护:加密、访问控制、隔离机制)、控制流截获及后门、rootkits(通过代码完整性、控制流完整性和影子备份)、拒绝服务(对资源进行监控或者对吞吐量限制)、虚拟机镜像威胁(利用完整性验证方案,在系统启动之前对镜像文件进行完整性检测。
- 云存储系统中数据的安全性分为存储安全性和传输安全性,每部分包括机密性、完整性、可用性。