One Column Text Page,One Column Text Page,One Column Text Page,One Column Text Page,One Column Text Page,电子工业出版社,云计算,(,第二版,),配套课件,解放军理工大学 刘鹏 教授主编,华东交通大学 刘鹏 制作,第,3,章,Amazon,云计算,AWS,电子工业出版社云计算(第二版)配套课件解放军理工大学,云计算(第二版),购买网址:,当当网,京东商城,姊妹力作,实战,Hadoop,购买网址:,当当网,京东商城,云计算(第二版)购买网址:姊妹力作实战Hadoop购,提 纲,Amazon,平台基础存储架构:,Dynamo,弹性计算云,EC2,简单存储服务,S3,简单队列服务,SQS,简单数据库服务,Simple DB,关系数据库服务,RDS,内容推送服务,CloudFront,其他,Amazon,云计算服务,AWS,应用实例,小结,提 纲 Amazon平台基础存储架构:Dynamo,Amazon,提供的云计算服务,弹性计算云,EC2,简单存储服务,S3,简单数据库服务,Simple DB,简单队列服务,SQS,弹性,MapReduce,服务,内容推送服务,CloudFront,电子商务服务,DevPay,灵活支付服务,FPS,Amazon提供的云计算服务弹性计算云EC2,Dynamo,在,Amazon,服务平台的地位,面向服务的,Amazon,平台架构,Amazon,平台的架构是完全的,分布式、去中心化,需求,Amazon,平台中有很多服务对存储的需求只是读取、写入,(满足简单的键,/,值式存储),Amazon,怎么处理这个需求?,Dynamo在Amazon服务平台的地位 面向服务的Amaz,Dynamo,简单的键,/,值方式存储数据,不支持复杂的查询,存储的是数据值的原始形式(,bit,),不解析数据的具体内容、不识别任何数据结构,这使得它几乎可以处理所有的数据类型,Amazon,平台基础存储架构:,Dynamo,Dynamo Amazon平台基础存储架构:Dynamo,Dynamo,架构的主要技术,问题,采取的相关技术,数据均衡分布,改进的一致性哈希算法,数据备份,数据冲突处理,向量时钟(,vector clock,),临时故障处理,Hinted handoff,(数据回传机制),参数(,W,R,N,)可调的弱,quorum,机制,永久故障后的恢复,Merkle,哈希树,成员资格以及错误检测,基于,gossip,的成员资格协议和错误检测,Dynamo架构的主要技术 问题采取的相关技术数据均衡分布,数据均衡分布的问题,一致性哈希算法,平衡性,单调性,分散性,负载,两步进行,:,求出设备节点的哈希值,并配置到环上的一个点;接着计算数据的哈希值,按顺时针方向将其映射到环上距其最近的节点,;,添加新节点时,按照上述规则,调整相关数据到新的节点上,。删除节点和添加节点过程相反,数据均衡分布的问题 一致性哈希算法,Dynamo,采用的改进算法,虚拟节点,数据分区和等份存储,Dynamo采用的改进算法,数据备份,当数据被均匀存储到环上各节点后,,Dynamo,将冗余存储数据(备份数据),思考,:,Amazon,可以保证相邻的节点分别位于不同地区区域,即使某个数据中心由于自然灾害或断电的原因整体瘫痪,仍可以保证在世界上其他数据中心中保存有数据的备份。这里就有一个非常重要的问题,如何进行节点分布,保证相邻节点位于不同的数据中心?,数据备份思考:Amazon可以保证相邻的节点分别位于不同地,数据冲突问题,Dynamo,系统选择牺牲一致性来换取系统的可靠性和可用性,解决数据冲突:,最终一致性模型(,Eventual Consistency,),向量时钟,向量时钟原理图,数据冲突问题 Dynamo系统选择牺牲一致性来换取系统的可,容错机制,Dynamo,临时故障处理机制,1,)临时故障处理机制,在数据读写中采用了一种称为弱,quorum,(,Sloppy quorum,)的机制,涉及三个参数,W,、,R,、,N,W,代表一次成功的写操作至少需要写入的副本数,R,代表一次成功读操作需由服务器返回给用户的最小副本数,N,每个数据存储的副本数,满足,R+WN,,用户即可自行配置,R,和,W,优势:实现,可用性与容错性之间的平衡,容错机制 Dynamo临时故障处理机制 1)临时故障处理机制,容错机制,2,),永久性故障处理机制,Merkle,哈希树技术,每个虚拟节点保存三颗,Merkle,树,即每个键值区间建立一个,Merkle,树,哈希树的叶子节点是存储每个数据分区内所有数据对应的哈希值,父节点是其所有子节点的哈希值,容错机制 2)永久性故障处理机制,成员资格及错误检测,基于,Gossip,协议的成员资格检测机制,Gossip,(闲聊)协议,错误检测机制,基于,Gossip,协议的成员资格检测机制,基于,Gossip,协议的最优传遍路径,成员资格及错误检测 基于Gossip协议的成员资格检测机制,提 纲,Amazon,平台基础存储架构:,Dynamo,弹性计算云,EC2,简单存储服务,S3,简单队列服务,SQS,简单数据库服务,Simple DB,关系数据库服务,RDS,内容推送服务,CloudFront,其他,Amazon,云计算服务,AWS,应用实例,小结,提 纲 Amazon平台基础存储架构:Dynamo,主要特性,灵活性,:,EC2,允许用户对运行实例类型、数量自行配置,还可以选择实例运行的地理位置,根据用户的需求随时改变实例的使用数量,低成本,:,EC2,使得企业不必为暂时的业务增长而购买额外的服务器等设备。,EC2,的服务都是按小时来收费,而且价格非常合理,安全性,:,EC2,向用户提供了一整套安全措施,包括基于密钥对机制的,SSH,方式访问、可配置的防火墙机制等,同时允许用户对它的应用程序进行监控,易用性,:用户可以根据,Amazon,提供的模块自由构建自己的应用程序,同时,EC2,还会对用户服务请求自动进行负载平衡,容错性,:利用系统提供的诸如弹性,IP,地址之类的机制,在故障发生时,EC2,能最大程度地保证用户服务仍能维持在稳定的水平,弹性计算云,EC2,主要特性 灵活性:EC2允许用户对运行实例类型、数量自行配置,EC2,基本架构及主要概念,EC2,的基本架构,Amazon,机器映像(,AMI,),AMI,(,Amazon Machine Image,)是一个可以将用户的应用程序、配置等一起打包的加密机器映像,AMI,是用户云计算平台运行的基础,用户使用,EC2,服务的第一步就是要创建一个自己的,AMI,Amazon,提供的,AMI,有四种类型,(,1,)公共,AMI,(,2,)私有,AMI,(,3,)付费,AMI,(,4,)共享,AMI,EC2基本架构及主要概念 EC2的基本架构 Amazon机,EC2,基本架构及主要概念,实例类型和其相关配置,实例(,Instance,),用户创建好,AMI,后,实际运行的系统称为一个实例,资 源,Small,Large,Extra Large,High-CPU Medium,High-CPU,Extra Large,平台,32,位,64,位,64,位,32,位,64,位,CPU,1ECU,4ECU,8ECU,5ECU,20ECU,内存,1.7GB,7.5GB,15GB,1.7GB,7GB,存储容量,160GB,850GB,1690GB,350GB,1690GB,实例类型名,m1.small,m1.large,m1.xlarge,c1.medium,c1.xlarge,EC2基本架构及主要概念 实例类型和其相关配置 实例(In,EC2,的关键技术,1,弹性块存储(,EBS,),长期保存或比较重要的数据,需要用弹性块存储(,Elastic Block Store,,,EBS,),,Amazon,限制每个,EBS,最多创建,20,个卷,快照(,Snapshot,),2.,区域,地理区域(,Region Zone,),可用区域(,Availability Zone,),EC2的关键技术 1弹性块存储(EBS)2.区域,EC2,的关键技术,3,EC2,的通信机制,EC2,服务中,系统各模块之间及系统和外界之间的信息交互是通过,IP,地址进行,公共,IP,地址(,Public IP Address,),私有,IP,地址(,Private IP Address,),弹性,IP,地址(,Elastic IP Address,),4,弹性负载平衡(,Elastic Load Balancing,),允许,EC2,实例自动分发应用流量,从而保证工作负载不会超过现有能力,并且在一定程度上支持容错,5,监控服务(,CloudWatch,),Amazon CloudWatch,是一个,Web,服务,提供了,AWS,资源的可视化检测功能,包括,EC2,实例状态、资源利用率、需求状况、,CPU,利用率、磁盘读取、写入和网络流量等指标,EC2的关键技术 3EC2的通信机制4弹性负载平衡(El,EC2,的关键技术,6,自动缩放(,AutoScaling,),自动缩放可以按照用户自定义的条件,自动调整,EC2,的计算能力,7,服务管理控制台(,AWS Management Console,),服务管理控制台是一种基于,Web,的控制环境,可用于启动、管理,EC2,实例和提供各种管理工具和,API,接口,关键技术配合工作图,EC2的关键技术 6自动缩放(AutoScaling)7,EC2,安全及容错机制,EC2,特点之一:允许用户随时更新实例状态,用户可以随时加入或删除实例,实例状态的动态变化方便了用户,但是却给,防火墙的配置,带来了麻烦,EC2,引入了,安全组,(,Security Group,)概念,安全组其实就是一组规则,用户利用这些规则来决定哪些网络流量会被实例接受,其他则全部拒绝,一个用户目前最多可以创建,100,个安全组。当用户的实例被创建时,如果没有指定安全组,则系统自动将该实例分配给一个默认组(,Default Group,),EC2安全及容错机制EC2特点之一:允许用户随时更新实例状,EC2,安全及容错机制,用户访问,EC2,时需要使用,SSH,(,Secure Shell,)密钥对(,Key Pair,)来登录服务,密钥对的名称(,Key Pair Name,)和公钥(,Public Key,)储存在,EC2,中,用户创建新实例时,,EC2,会将它保存的信息复制一份放在实例的元数据(,Metadata,)中,然后用户使用自己保存的私钥(,Private Key,)就可以安全地登录,EC2,并使用相关服务,用户使用密钥对登录服务,EC2安全及容错机制用户访问EC2时需要使用SSH(Sec,EC2,安全及容错机制,弹性,IP,地址,弹性,IP,地址和,用户账号绑定,而不是和某个特定的实例绑定,这给系统的容错带来极大的方便,每个账号默认绑定,5,个弹性,IP,地址。,当系统正在使用的实例出现故障时,用户只需要将,弹性,IP,地址,通过网络地址转换技术转换为新实例所对应的,私有,IP,地址,,这样就将弹性,IP,地址与新的实例关联起来,访问服务时不会感觉到任何差异,EC2安全及容错机制弹性IP地址,谢 谢!,http:/,谢 谢!http:/,