云计算技术第七章思维导图
2022-10-11 23:51:15 58 举报
AI智能生成
阿斯顿飞过
作者其他创作
大纲/内容
云计算技术框架
Saas
HTML
标准的Web页面技术,由HTML4向HTML5,H5在视频等方面推动 Web页面的发展。移动端H5婚礼邀请
JavaScript
一种用于Web页面的动态语言,借助JavaScript能够极大地丰富 Web页面的功能,最流行的JS框架有jQuery和Prototype。
CSS
主要用于控制 Web 页面的外观,使页面的内容与其表现形式分离。
Flash
F业界最常用的富网络应用(Rich Internet Applications,RIA)技术, 能够提供HTML等技术所无法提供的基于Web的富应用,让用户获得很好的用户体验。
Silverlight
来自业界巨擘Microsoft的RIA技术,虽然其现在市场占有率稍逊于 Flash,但由于它可以使用C# 来进行编程,因此对开发者非常友好。
Paas
REST
通过表述性状态转移(Representational State Transfer,REST)技术, 能够非常方便和优雅地将中间件层所支撑的部分服务提供给调用者。
多租户
就是能让一个单独的应用实例可以为多个组织服务,而且能保持良好的 隔离性和安全性,通过这种技术,能有效地降低应用的购置和维护成本。
并行处理
为了处理海量的数据,需要利用庞大的x86 集群进行规模巨大的并行 处理,Google的MapReduce是这方面的代表之作。
应用服务器
在原有的应用服务器的基础上为云计算进行了大量的优化,比如用 于GAE的Jetty应用服务器。
分布式缓存
通过分布式缓存技术,不仅能有效地降低对后台服务器的压力,而 且还能加快相应的反应速度,最著名的分布式缓存例子莫过于Memcached 。
Iaas
虚拟化
可以理解为基础设施层的“多租户”,通过虚拟化技术,在一个物理服 务器上生成多个虚拟机,并在这些虚拟机之间实现全面的隔离,能降购置与运维成本
分布式缓存
为了承载海量的数据,同时也要保证这些数据的可管理性,需要一 整套分布式的存储系统(如Google的GFS等)。
关系型数据库
基本是在原有的关系型数据库的基础上做了扩展和管理等方面的 优化,使其在云中更适应。
NoSQL
为了满足一些关系数据库所无法满足的目标,比如支撑海量的数据等, 一些公司特地设计一批不是基于关系模型的数据库
虚拟化技术
虚拟化技术定义
虽然目前还没有对虚拟化统一的、标准的定义,但大多数定 义都包含以下几个方面的描述
虚拟化技术优点
资源共享
资源共享:通过利用虚拟化技术,可以将企业的一些硬件资源包括服务器、网络全部整合 起来,可以高效地利用这些资源,提高这些资源的利用率,减少资源的浪费。
负载动态优化
负载动态优化:一方面体现在采用了虚拟化技术后可以随着业务系统的工作负载动态变化 来调整资源的供给。
自动化管理
自动化管理:可以通过虚拟化技术屏蔽硬件底层的差异,不管是系统管理员还是上层 的服务,都可以用统一的方式使用下层的资源,让管理和使用更加方便、高效。
安全性高
安全性高:由于虚拟系统的硬件平台无关性,虚拟化技术可应对系统突发的安全威胁
各类虚拟化框架
寄居虚拟化框架
优点
硬件兼容性好
虚拟化成以应用的方式运行在操作系统之上,对物理硬件要求低
缺点
虚拟化成无法直接操作,硬件性能损耗大
虚拟机性能差
金属虚拟化框架
优点
无需依赖特定操作系统,虚拟化城直接作用于硬件可靠性高
虚拟层直接进行硬件管理,虚拟机性能好
缺点
硬件兼容性差
硬件兼容性差
混合虚拟化框架
优点
Os和与虚拟化成整合共同作用于硬件
可以兼容linux特性,同步linux补丁
缺点
需底层硬件支持虚拟化扩展功能,虚拟机性能好
虚拟化技术分类
应用模式角度
一对多
多对一
对对多
硬件资源调用模式角度:
全虚拟化
半虚拟化
硬件辅助虚拟化
实现层次角度:
硬件虚拟化
操作系统虚拟化
应用程序虚拟化
应用领域角度
服务器虚拟化
存储虚拟化
应用虚拟化
平台虚拟化
桌面虚拟化
网络虚拟化
基于--的虚拟化
基于硬件的虚拟化
基于操作系统的虚拟化
基于应用程序的虚拟化
...虚拟化
桌面虚拟化
服务器虚拟化
存储虚拟化
应用虚拟化
平台虚拟化
网络虚拟化
Docker技术
.Linux容器虚拟技术
简介
Linux容器(Linux Container,LXC)虚拟技术是一种轻量级的虚拟化 手段,它利用内核虚拟化技术提供轻量级的虚拟化,来隔离进程和资源。
优势
与宿主机使用同一个内核,性能损耗小
不需要指令级模拟
容器可以在CPU核心的本地运行指令,不需要任何专门的解释机制
避免了准虚拟化和系统调用替换中的复杂性
轻量级隔离,在隔离的同时还提供共享机制,以实现容器与宿主机的 资源(例如文件系统)共享
Docker的内涵
简介
Docker 是 dotCloud 开源的一个基于 LXC的高级容器引擎,它的 初衷是将各种应用程序和它所依赖的运行环境打包成标准的容器(或镜 像)
特性
快速部署
自动构建
组件复用
丰富的 API
Docker的应用场景
Web应用的自动化打包和发布
自动化测试和持续集成、发布
在服务型环境中部署和调整数据库或其他的后台应用
从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己 的PaaS环境
Docker的优势
更快速的交付和部署
更高效的虚拟化
更轻松的迁移和扩展
更简单的管理
Docker的组成
Docker 镜像
Docker容器
Docker仓库
Unikernel技术
Unikernel技术优势
更好的安全性
更小的体积
更短的启动时间
Unikernel的不足之处
为上层应用的定制化程度较高,因此难 以达到像传统操作系统一样用于通用的应用目的。
相比容器而言,Unikernel的弱点就是难调试和难扩展
由于 Unikernel 虚拟机中完全没有与应用无关的调试工具和系统服务, 因此调试一个运行中的Unikernel虚拟机要比调试一个运行中的容器困难 得多
开发人员可以在一个运行中的容器中方便地增加新模块, 验证新的代码变动和配置变动,
容器(Container)与Unikernel技术比较
Unikernel
Unikernel技术采用了和容器类似的理念,只打包与特定应用相关的程序, 因此性能大大提高,可以与容器媲美。
多租户技术
简介
多租户技术是云计算中一种软件架构技术,旨在解决如何在多用户 的环境(比如云计算环境)下共用相同的系统或程序组件,又确保各用户 间数据的隔离。多租户是指一个单独的软件实例可以为多个组织服务。
租户
定义
租户(Tenant)是指使用系统或计算机 运算资源的用户,还包含在系统中可识别为指定用户的一切数 据(如在系统中创建的账户与统计信息,以及在系统中设置的 各式数据和用户所设置的用户化应用程序环境等)
多租户和多用户的区别
多用户的关键点在于不同的用户 拥有不同的访问权限,但是多个用户共享同一个实例;而在多 租户中,多个组织使用的实例各不相同
多租户技术特点
降低环境建置的成本
降低供应商的维护成本
共享相同软件环境
多租户架构的应用软件客制难度高
海量数据存储技术
诞生原因
分布式文件系统,学术一点的 定义是:分布式文件系统是一种允许文件通过网络在多台主机上分享的文 件系统,可让多机器上的多用户分享文件和存储空间
Google的GFS
组成
一个GFS集群由一个主服务器(Master)和大量的块服务器(Chunkserver)构成,并 被许多用户(Client)访问
操作方式
用户与主服务器的交换只限于对元数据的操作,所有数据方面的通信都直 接和块服务器联系,这大大提高了系统的效率,防止主服务器负载过重。
Hadoop的HDFS
HDFS架构
HDFS的优点
处理超大文件
流式的访问数据
运行于廉价的商用机器集群上
HDFS的缺点
不适合低延迟数据访问
无法高效存储大量小文件
不支持多用户写入及任意修改文件
Google的BigTable
基本内涵
BigTable是一个为管理大规模结构化数据而设计的分布式存储系统,可以扩展到PB 级数据和上千台服务器。
特点
适合大规模海量数据,PB级数据
易于扩展,支持动态伸缩
适用于廉价设备
不适用于传统关系型数据库
数据模型
行
列簇
时间戳
Tablet
BigTable构件
BigTable 是建立在 GFS、SSTable、Chubby等其他几个 Google 基础构件上的, 如表 所示。
BigTable实现
组件
链接到用户程序中的库
一个Master服务器和多 个Tablet服务器
Tablet的位置信息
Tablet的分配
Tablet的服务
Hadoop的HBase
HBase概述
特点
容量大
无模式
面向列
稀疏
数据多版本
数据类型单一
HBase数据模型
HBase 中的数据都是字符串,没有类型。用户在表格中存储数据,每一行都有一个 可排序的主键和任意多的列。
HBase 把同一个列簇里面的数据存储在同一个目录下,并且 HBase的写操作是锁 行的,每一行都是一个原子元素,都可以加锁。
组成部件
Row Key(行键)
Column Family(列簇)
Timestamp(时间戳)
Cell(单元格)
HBase物理模型
Table中所有行都按照Row Key的字节序排列
Table 在行的方向上分割为多个 Region
Region按大小分割,每个表开始只有一个Region, 随着数据增多,Region不断增大,当增大到一个阈值的 时候,Region就会等分为两个新的Region,之后会有 越来越多的Region
Region 是 HBase 中分布式存储和负载均衡的最小单元,不同Region分布到不同 Region Server上
Region 虽然是分布式存储的最小单元,但并不是存储的最小单元。Region 由一个 或者多个 Store 组成,每个 Store 保存一个 Columns Family;
HBase架构及基本组件
Client
Zookeeper
HMaster
HRegionServer
HRegion
HLog
并行编程模式
概念
云计算提供了分布式的计算模式,客观上要求必须有分布式的编程 模式。
MapReduce
MapReduce 采用“分而治之”的思想,把对大规模数据集的操作 分发给一个主节点管理下的各个分节点共同完成,
在分布式计算中,MapReduce框架负责处理并行编程 中分布式存储、工作调度、负载均衡、容错均衡、容错处理以及网络通信 等复杂问题,
.MapReduce
在Hadoop中,每个MapReduce任务都被初始化为一个Job,每个 Job又可以分为两个阶段
收藏
0 条评论
下一页