云计算-第10章 开源云计算系统介绍.docx

云计算的发展及关键技术详解

收藏

资源目录
跳过导航链接。
压缩包内文档预览:(预览前20页/共69页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:167780448    类型:共享资源    大小:7.78MB    格式:ZIP    上传时间:2021-11-24 上传人:文*** IP属地:河北
30
积分
关 键 词:
计算 发展 关键技术 详解
资源描述:
云计算的发展及关键技术详解,计算,发展,关键技术,详解
内容简介:
第10章开源云计算系统介绍【教学内容】1 .开源云计算系统Hadoop2 .开源云计算软件Eucalyptus3 .开源虚拟化云计算平台OpenStack【教学要求】1 .掌握Hadoop的体系架构、技术原理和应用方案2 .掌握Eucalyptus的体系架构、技术原理和应用方案3,掌握OpenStack的体系架构、技术原理和应用方案【重点难点】Hadoop的分布式计算框架MapReduce、OpenStack的核心开源项目(Nova、Swift Glance)主要内容- 10.1开源云计算系统Hadoop- 10.2开源云计算软件Eucalyptus 10.3开源虚拟化云计算平台OpenStack 3Hadoop背景介绍Hadoop是有Apache软件基金会下的一个开源分布式计算平台。Hadoop以分布式文件系统HDFS和MapReduce ( Google MapReduce的开 源实现)为核心,为用户提供了系统底层细节透明的分布式基础架构。HDFS的高容错性、高伸缩性等优点允许 用户将Hadoop部署在低廉的硬件上,形 成分布式系统。MapReduce分布式编程模型允许用户在不 了解分布式系统底层细节的情况下开发 并行应用程序。Hadoop目前除了社区版,还有众多厂商的发行版本,如华为发行版、 Intel 发彳亍版、Cloudera 发彳亍版(CDH )、Horton works 发彳亍版(HDP )、 MapR等,所有这些发行版均是基于Apache Hadoop衍生出来的。cloudera e最成型的发行版本,拥有最多的部署案例;提供强大的部 署、管理和监控工具。莘有任何私有处开黑警地使用了 1。%开麻麋源Apache Hadoop的唯一提供商。AAAPR为了获取更好的性能和易用性而支持本地UNIX文 件系统而不是HDFS (使用非开源的组件)。Hadoop2.X的生态系统Hadoop是一个能够对大量数据进行分布式处理的软件框架,具有 可靠、高效、可伸缩的特点。Hadoop的核心是HDFS和MapReduce ,在Hadoop2.X中还包括YARN。Ambari(安装部署工具)Oozie(作业流调度系统)7(沈墨客自依忠朱)ada)l)xooz(黄驷筮恒卑太)aspqHHiveMapReduce(离线计算)Tez(DAG计算)YARN(分布式计算阚)HDFS(分布式存储系统)Spark(内存计算)(雪根山)olunLZHadoop2.X的生态系统Hive (基于Hadoop的数据仓库)用于Hadoop的一个数据仓库系统,提供类 似于SQL的查询语言。 一种分布的、可伸缩的、大数据存储库, 支持随机、实时读/写访问。Hbase (分布式列存数据库)Pig (基于Hadoop的数据流系统)分析大数据集的一个平台,由一种表达数据 分析程序的高级语言和对这些程序进行评估 的基础设施一起组成。为高效传输批量数据而设计的一种工具,用于Apache Hadoop和结构化数据存储库如关系型数据库之间的数据传输。Sqoop (数据同步工具)Hadoop2.X的生态系统13Flume (日志收集工具)一种分布式的、可靠的、可用的服务,用于 高效搜集、汇总、移动大量日志数据。 一种集中服务,用于维护配置信息、命名、提供分布式同步以及提供分组服务。Zookeeper (分布式协作服务)Mahout (数据挖掘算法库) 一种基于Hadoop的机器学习和数据挖掘的 分布式计算框架算法集,实现了多种 M叩Red u ce模式的数据挖掘算法。 一个开源数据分析集群计算框架。与 Hadoop一样用于构建大规模、低延时的 数据分析应用。SparkStorm属于流处理平台,多用于实时计算并更新数据库;也可以用于 连续计算对数据流做连续查询;还可以用于分布式RPC, 以并行的方式运行大型的运算。Shark BPHive on Spark ,一个专门为Spark打造的大规模数据仓库 系统,兼容Apache Hiveo无需修改现有的数据或者查询, 就可以用100倍的速度执行Hive QLOPhoenix一个构建在Apache HBase之上的SQL中间层,完全使用Java编 写,提供了一个客户端可嵌入的JDBC驱动。Phoenix查询引擎会 将SQL查询转换为一个或多个HBase scan ,并编排执行以生成标 准的JDBC结果集。Tez一个基于Hadoop YARN之上的DAG计算框架。把Map/Reduce 过程拆分为若干个子过程,同时可以把多个Map/Reduce任务组 合成一个较大的DAG任务,减少Map/Reduce之间的文件存储。Ambari 一个供应、管理和监视Apache Hadoop集群的开源框架, 提供了一个直观的操作工具和一个健壮的Hadoop API,可 以隐藏复杂的Hadoop操作,使集群操作大大简化。YARN Yet Another Resource Negotiator,另一种资源协调者,是一 种新的Hadoop资源管理器,是一个通用资源管理系统,可为上 层应用提供统一的资源管理和调度。Hadoop分布式计算框架MapReduceMapReduce是Google开发的Java、Pythonx C+ +编程模型, 它是一种简化的分布式编程模型和高效的任务调度模型,用于大规模数据集(大于1TB )的并行计算。M叩Reduce借鉴了Lisp等函数编程语言的思想,将要执行的问 题分解成Map (映射)和&8 (归约)的方式:先通过M叩程序将数据切割成不相关的区块,分配(调度)给 大量计算机处理,达到分布式运算的效果;再通过Reduce程序将结果汇总输出。MapReduce中的Map和Reduce操作的抽象描述 map: (kl; vl) 3 f(k2; v2)输入:键值对(kl; vl)表示的数据处理:文档数据记录(如文本文件中的行,或数据表格中的行)将以键值对形式传入map函数;map函数将处理这些键值对,并以另一种键值对形式输出处理的一组键值对中间结果(k2; v2)输出:键值对(k2; v2)表示的一组中间数据MapReduce中的Map和Reduce操作的抽象描述 reduce: (k2; v2)今(k3; v3)输入:由map输出的一组键值对(k2; v2)将被进行合并处理将同样主 键下的不同数值合并到一个列表v2中,故reduce的输入为(k2; v2)处理:对传入的中间结果列表数据进行某种整理或进一步的处理,并 产生最终的某种形式的结果输出(k3; v3)。输出:最终输出结果(k3; v3)Map和Reduce为程序员提供了一个清晰的操作接口抽象描述。MapReduce程序的具体执行过程 17 Hadoop 应用在大数据背景下,Apache Hadoop已经逐渐成为一种标签性。随 着业界对这一开源分布式技术不断加深了解,Hadoop被广泛应用于 在线旅游、移动数据、电子商务、能源发现、能源节省、基础设施管 理、图像处理、欺诈检测、IT安全、医疗保健等不同领域。Walmart * ebM v/sa仑I?黯然BaiS Sli全球最大超市业者Wal-Mart Walmart率 Wal-Mart分析顾客商品搜索行为,找出超越竞争对手的商机Wal-Mart决定采用Hadoop来分析顾客搜寻商品的行为以及用户透 过搜索引擎寻找到Wal-Mart网站的关键词,利用这些关键词的分析结果 发掘顾客需求,以规划下一季商品的促销策略。止匕外,Wal-Mart还尝试 分析顾客在Facebook、Twitter等社交网站上对商品的讨论,期望能比 竞争对手提前一步发现顾客需求。例如,Wal-Mart能比父亲更快知道女儿 怀孕的消息,并且主动寄送相关商品的 促销邮件。全球最大拍卖网站eBayeb Y* eBay用Hadoop拆解非结构性巨量数据,降低数据仓储负载作为全球最大的拍卖网站,eBay具有庞大的用户数据,且这些数 据囊括了结构化的数据和非结构化的数据,如照片、影片、电子邮件 、用户的网站浏览Log记录等。为了解决同时要分析大量结构化数据和非结构化的难题,eBay通 过Hadoop进行数据预先处理,将大块结构的非结构化数据拆解成小型 数据,再放入数据仓储系统的数据模型中分析,来加快分析速度,也 减轻对数据仓储系统的分析负载。全球最大信用卡公司VisaVISA* Visa快速发现可疑交易,1个月分析时间缩短成13分钟虽然每笔交易的数据记录只有短短200 位,但每天VisaNet要处理全球上亿笔交 易,2年累积的资料多达36TB ,原本分析5 亿个用户账号之间的关联,得等1个月。 Visa在2009年时导入了 Hadoop ,让分析 时间从1个月缩短到13分钟,更快速地找 出了可疑交易,也能更快对银行提出预警 ,甚至能及时阻止诈骗交易。全球最大的中文搜索引擎百度Bai海百度百度的Hadoop集群为整个公司的数据团队、大搜索团队、社区产品团 队、广告团队,以及LBS团体提供统一的计算和存储服务,主要应用包括数据挖掘与分析、日志分析平台、数据仓库系统、推荐引擎系统、用户行为分析系统等。同时,百度在Hadoop的 基础上还开发了自己的日志 分析平台、数据仓库系统, 以及统一的C+ +编程接口, 并对Hadoop进行深度改造, 开发了 Hadoop C+扩展 HCE系统。全球领先的互联网公司阿里巴巴 产,阿里巴巴的Hadoop集群拥有150个用户组、4500个集群用户,为淘宝 、天猫、一淘、聚划算、CBU、支付宝提供底层的基础计算和存储服务,主 要应用包括数据平台系统、搜索支撑、广告系统、数据魔方、量子统计、淘 数据、推荐引擎系统、搜索排行榜等。为了便于开发,阿里巴巴还开发了 Web IDE继承开发环境,使用的相关系统包括Hive、Pig、Mahout.Hbase 等。天网 调度 系统Oracle备库 MySQL备库I日志系统I爬虫数据数据平台I搜索广告 BI数流 向数据魔方量子统计淘数据推搜索排行主要内容 10.1开源云计算系统Hadoop 10.2开源云计算软件Eucalyptus 10.3开源虚拟化云计算平台OpenStack # Eucalyptus 简介Eucalyptus :枝树加州大学圣巴巴拉分校建立的开源项目将程序连接到有用系统的弹性效能计算体系结构 Elastic Utility Computing Architecture for Linking Your Programs to Useful Systems功能:Eucalyptus全局掌控各种基于物理设施的虚拟设备, 实现对整个集群的计算能力的动态配置 Eucalyptus 简负5 A开发目的为研究者提供模块化的试验平台A设计原则Eucalyptus必须能够在不受其设计者操控的软硬件环境中进 行部署和执行。Eucalyptus必须是模块化的,以便不同的研究者进行升级、 改造和替换,同时能够实现最大程度的可扩展性。A设计目标可扩展性、非侵入性/Eucalyptus 的 AWS 兼容性Eucalyptus是Amazon EC2的一个开源实现,它与EC2的商业服务 接口兼容。Eucalyptus的AWS兼容性主要体现以下几个方面:广泛AWS服务支持应用迁移高度API兼容应用设计,工具和生态系统 27 Eucalyptus体系结构Eucalyptus采用了分层的体系结构,包含五个主要组件:云控制器( CLC )、持续性数据存储(Walrus )、集群控制器(CC )、存储控制器( SC)和节点控制器(NC)O它们能相互协作共同提供所需的云服务。CLOUDCLOUDCONTROLLER(CLC)WALRU5CLUSTER (AVAILABILITY ZONE)CLUSTERCONTROLLER(CC)STORAGECONTROLLER(SC)VMWAREBROKER(OPTIONAL)NODESNODECONTROLLER(NC)VM ) VM NODECONTROLLER(NC)NODECONTROLLER(NC)VM VM Cloud Controller在Eucalyptus云内,是主要的控制器组件,负责管理整个系 统。它是所有用户和管理员进入Eucalyptus云的主要入口。WalrusWalrus是一个与Amazon S3类似的存储服务。这个控制 器组件管理对Eucalyptus内的存储服务的访问。Cluster Controller负责从所属的节点控制器收集节点的状态信息,并管理公共 和私有实例网络的配置。Storage ControllerNode Controller实现Amazon的S3接口。与Walrus联合工作,用于存储和 访问虚拟机映像、内核映像、RAM磁盘映像和用户数据。控制主机操作系统及相应的Hypervisor ( Xen或KVM )。 # Eucalyptus 酉己置一个Eucalyptus云安装可以聚合和管理来自一个或多个集群的资源。一个集群是连接到相同LAN的一组机器。在一个集群中,可以有一个或多 个NC实例,每个实例管理虚拟实例的实例化和终止。在一个单一集群的安装中,将至的以及快速配置的目的。少包含两个机器:一个机器运行 CC、SC和CLC ,另一个机器运行 NCO这种配置主要适合于试验的在多集群安装中,可以将各个组件(CC、SC、NC和CLC ) 放置在单独的机器上。多集群的结果是可用性的提高、负载 和资源的跨集群分布。 31Eucalyptus对企业数据中心和没有特殊硬件要求的需求,可以进行混合云 和私有玄部署。Eucalyptus可以安全的虚拟化服务器、网络和储存,从而降低成本,提高 维护便利性,并提供用户自助服务。Eucalyptus的模块化设计为广泛的用户、不同的用户界面、虚拟化技术带来了好处,并且为服务供应商提供了一个基于消费定价模式的运营平台。Eucalyptus的核心架构,将继续保持开放源代码。它将利用全球开发社区 的智慧。主要内容 10.1开源云计算系统Hadoop 10.2开源云计算软件Eucalyptus 10.3开源虚拟化云计算平台OpenStack # OpenStack背景介绍口 openstackCLOUD SOFTWAREOpenStack是一个由Rackspace公司和美国国家航空航天局(NASA )共同开发的云计算平台项目,可以为共有云和私有云服务提供云计算基 础架构平台。OpenStack使用的开发语言是Python ,采用Apache许可证 发布该项目源代码。OpenStack支持多种不同的Hypervisor。为NASA的计算处 理服务而开发OpenStackRackspace 开发 的存储服务组件35 OpenStack背景介绍OpenStack的作用是整合各种底层硬件硬件资源,为系统管理员提供 Web界面的控制面板以方便资源管理,为开发者的应用程序提供统一管理 接口,为终端用户提供无缝的透明的云计算服务。OpenStack在云计算软硬件架构的主要作用域一个操作系统类似。Your Applications,竺J,OPENSTACK|aOVD 0PWT1NG SHTEMOpenSuck Dashboard.ComputeNetworkingStorageOpenStack Shared ServicesStandard HardwareOpenStack 架构砂OpenStack作为laaS层的云操作系统,主要管理计算、网络和存储 三大类资源。37计算资源管理可以规划并管理大量 虚拟机,从而允许企 业或服务提供商按需 提供计算资源。可以为云服务或云应用 提供所需的对象及块存 储资源。提供了插件式、可扩展 、API驱动型的网络及IP管理。OpenStack核心功能OpenStack核心功能 41计算服务Nova对象存储服务Swift镜像服务Glance身份认证服务Keystone网络服务Neutron块存储服务Cinder控制面板Horizon计量服务Ceilometer编排服务HeatHadoop集群服务Sahara裸金属服务Ironic数据库服务TroveOpenStack有三个核心开源项目:计算服务(Nova )、存储服务( Swift)、镜像服务(Glance )用户管理员通过API调用openStack计算服务(Nova )管理虚拟机通过Glance创建和管理镜像快照43通过Swift存储快照镜像管理组件(Nova )管理镜像对象存储组件(Swift)用标准的硬件进行PB级的安全、可靠的存储计算服务NovaNova是OpenStack云中的计算组织控制器Nova处理OpenStack云中实例(instances )生命周期的所有活动 o这样使得Nova成为一个负责管理计算资源、网络、认证、所需可扩展性的平台。但是,Nova并不具有虚拟化能力,相反它使用Libvirt API来与被 支持的Hypervisors交互。Nova通过一个与Amazon Web Services ( AWS ) EC2 API兼容的Web Services API来对外提供服务。Nova组件介绍1 . API Server ( Nova-Api )API Server对外提供一个与云基础设施交互的接口,也是外部可用于 管理基础设施的唯一组件。2 . Message Queue ( Rabbit MQ Server :OpenStack节点之间通过消息队列使用AMQP ( Advanced Message Queue Protocol )完成通信。3 . Compute Worker ( Nova-Compute :Compute Worker管理实例生命周期,通过Message Queue接收实例生 命周期管理的请求,并承担操作工作。4 . Network Controller ( Nova-Network :Network Controller处理主机的网络配置,包括IP地址分配、为项目配 置VLAN、实现安全组、配置计算节点网络。5 . Volume Workers:Nova-Volume :Volume Workers用来管理基于LVM ( Logical Volume Manager )的实例 卷。Volume Workers有卷的相关功能,例如新建卷、删除卷、为实例 附加卷、为实例分离卷。6 . Scheduler:Nova-Scheduler :调度器Scheduler把Nova-API调用映射为OpenStack组件。调度器作为 一个Nova-Schedule守护进程运行,通过恰当的调度算法从可用资源池 获得一个计算服务。随机算法可用域算法简单算法47Nova工作流程Nova-API对外统一提供标准化接口,各子模块,如计算资源,存储 资源和网络资源子模块通过相应的API接口服务对外提供服务。WSGI(nova-api)Nova运行架构以创建虚拟机为例,分析Nova的不同关键子模块之间的调用关系。调用Compute-Api创建 虚拟机VM接口。Nova-Compute 调| 用 Network-API 分配网 络IP。Compute-API 通过 RPC 的 方式将创建虚拟机的基础 信息封装成消息发送至消 息中间件指定消息队列 “Scheduler” 0根据请求的虚拟资源,即 havor的信息,选择一台物理主机部署,如物理主机A ,Nova-Network接收到消息后 ,从fixedIP表里拿出一个可 用IP ,并根据私网资源池, 结合DHCP ,实现IP分配和 IP地址绑定。物理机A上Nova-Compute守 护进程订阅消息队列 “Compute物理机A”,接到 消息后,根据虚拟机基本信 息开始创建虚拟机。Nova-Compute通过调用Vohime-API实现存储划分, 最后调用底层虚拟化Hypervisor技术,部署虚拟机。49Nova物理部署方案从功能上看,Nova平台中有两类节点:控制节点和计算节点,其角 色由安装的服务决定,控制节点包括网络控制Network、调度管理 Scheduler. Api服务、存储卷管理Nova-Volume等,计算节点主要提供 Nova-Compute服务。节点之间使用AMQP作为通讯总线。由于使用了消息总线,因此服务之间是位置透明的,可以将所有服务 可以部署在同一台主机上,即All-in-One ( 一般用于测试),也可以根据 业务需要,将其分开部署在不同的主机上。用在生产环境Nova平台配置一般有三种类型:最简配置标准配置高级配置最简配置需要至少两个节点,除了Nova-Compute外所有服务都部署在一台 主机里,这台主机进行各种控制管理,即控制节点。OpenStack双点架构51标准配置控制节点的服务可以分开在多个节点,标准的生产环境推荐使用至少4台主机来进一步细化职责。控制器、网络、卷和计算职责分别由一台主 机担任。人高级配置很多情况下(比如为了高可用性),需要把各种管理服务分别部署在 不同主机(比如分别提供数据库集群服务、消息队列、镜像管理、网络控 制等),形成更复杂的架构。 入OpenStack高级架构53对象存储服务SwiftSwift是OpenStack开源云计算项目的子项目之一,是一个可扩展的对 象存储系统。分扩展性冗余性 持久性Swift构筑在比较便宜的标准硬件存储基础设施之上,通过在软件层 面引入一致性散列技术和数据冗余性,牺牲一定程度的数据一致性来达 到高可用性和可伸缩性,支持多租户模式、容器和对象读写操作,适合 解决互联网的应用场景下非结构化数据存储问题。1 .极高的数据持久性Swift特性数据的可靠性,是指数据存储到系统中后,到某一天数据 丢失的可能性。2 .完全对称的系统架构对称意味着Swift中各书点可以完全对等,能极大地降 彳氐系统维护成本。3.无限的可扩展性一是数据存储容量无限可扩展,是Swift性能(如QPS、 吞吐量等)可线性提升。4 .无单点故障整个Swift集群中,也没有一个角色是单点的,并且在架构 和设计上保证无单点业务是有效的。5.简单、可依赖简单体现在实现易懂、架构优美、代码整洁;可依赖是指 Swift经测试、分析之后,可以放心大胆地将Swift用十最核 心的存储业务上。 #Swift主要组件Swift系统架构Swift采用完全对称、面 向资源的分布式系统架构设 计,所有组件都可扩展,避 免因单点失效而扩散并影响 整个系统运转;通信方式采 用非阻塞式I/O模式,提高了 系统吞吐和响应能力。认证服务(Authentication Server ) 账户服务(Account Server )验证访问用户的身份信息提供账户元数据和统计信息获得一个对象访问令牌(Token )维护所含容器列表的服务验证访问令牌的有效性每个账户的信息被存储在一个缓存下来直至过期时间SQLite数据库中o C代理服务(Proxy Server ) 对外提供对象服务API 查找服务地址 转发用户请求至相应的账户、容器 或者对象服务 进行横向扩展来均衡负载)O G缓存服务(Cache Server )缓存的内容包括对象服务令牌、账户和 容器的存在信息缓存服务可采用Memcached集群, Swift会使用一致性散列算法来分配缓 存地址Swift主要组件 61对象月艮务(Object Server )更新服务(Updater )提供对象元数据和内容服务任务将会被序列化到在本地文件系每个对象的内容会以文件的形式 存储在文件系统中统中进行排队更新服务会在系统恢复正常后扫描容器月艮务(Container Server ) 提供容器元数据和统计信息 维护所含对象列表的服务 每个容器的信息也存储在一个复制服务(Replicator )采用推式(Push )更新远程副本确保被标记删除的对象从文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:云计算的发展及关键技术详解
链接地址:https://www.renrendoc.com/paper/167780448.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!