您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > 第5章 Hadoop 2.0 主流开源云架构(四)
of39电子工业出版社《云计算(第三版)》配套课件云计算(第三版)CLOUDCOMPUTINGThirdEdition主编:刘鹏教授第5章Hadoop2.0主流开源云架构(四)本套PPT下载地址:=20云计算的红宝书书籍购买地址:=1469775685&p=-1微信扫描二维码关注云计算头条电子工业出版社《云计算(第三版)》配套课件(包邮且有刘鹏教授亲笔签名)教授、博导、学科带头人,清华大学博士。现任中国云计算专家咨询委员会秘书长、中国信息协会大数据分会副会长、工业与信息化部云计算研究中心专家。主持完成科研项目25项,发表论文80余篇,出版专业书籍15本。获部级科技进步二等奖4项、三等奖4项。主编了国内第一本云计算教材《云计算》和第一本云计算编程书籍《实战Hadoop》。创办了知名的中国云计算(chinacloud.cn)和中国大数据(thebigdata.cn)网站。曾率队夺得2002PennySort国际计算机排序比赛冠军,两次夺得全国高校科技比赛最高奖,并三次夺得清华大学科技比赛最高奖。荣获“全军十大学习成才标兵”(排名第一)、南京“十大杰出青年”、江苏省“333高层次人才培养工程”中青年科学技术带头人、清华大学“学术新秀”等称号。刘鹏目录5.1引例5.2Hadoop2.0简述5.3Hadoop2.0部署5.4Hadoop2.0体系架构5.5Hadoop2.0访问接口5.6Hadoop2.0编程接口5.4Hadoop2.0体系架构5.4.1Hadoop2.0公共组件Common5.4.2分布式文件系统HDFS5.4.3分布式操作系统Yarn5.4.4Hadoop2.0安全机制简介of39《云计算》第三版配套PPT课件65.4Hadoop2.0体系架构定位管理计算机资源提供用户接口一方面管理整个集群的计算资源(CPU、内存等)另一方面提供用户程序访问系统资源的API。分布式操作系统的基本功能:Yarnof39《云计算》第三版配套PPT课件75.4Hadoop2.0体系架构体系架构Yarn的主要思想是将MRv1版JobTracker的两大功能——资源管理和任务调度,拆分成两个独立的进程:资源管理模块全局资源管理进程ResourceManager任务管理模块任务管理进程ApplicationMasterYarn依旧是master/slave结构主进程ResourceManager是整个集群资源仲裁中心从进程NodeManager管理本机资源ResourceManager和从属节点的进程NodeManager组成了Hadoop2.0的分布式数据计算框架of39《云计算》第三版配套PPT课件8ClientClientRespirceManagerNodeManagerContainerAppMstrNodeManagerContainerAppMstrNodeManagerContainerContainerMapReduceStatusJobSubmissionNodeStatusResourceRequest5.4Hadoop2.0体系架构体系架构of39《云计算》第三版配套PPT课件9Yarn在执行时包含以下独立实体:①Client:客户端,负责向集群提交作业。②ResourceManager:集群主进程,仲裁中心,负责集群资源管理和任务调度。③Scheduler:资源仲裁模块。④ApplicationManager:选定,启动和监管ApplicationMaster。⑤NodeManager:集群从进程,管理监视Containers,执行具体任务。⑥Container:本机资源集合体,如某Container为4个CPU,8GB内存。⑦ApplicationMaster:任务执行和监管中心。5.4Hadoop2.0体系架构体系架构ClientClientContainerContainerContainerContainerContainerContainerApplicationMasterApplicationManagerSchenulerof39《云计算》第三版配套PPT课件115.4Hadoop2.0体系架构体系架构作业提交任务分配任务执行任务完成进度和状态更新ApplicationMaster失败ApplicationManager会重新选择一个Container再次执行此任务对应的ApplicationMaster计算节点失败ApplicationMaster首先向Scheduler申请资源,接着根据申请到的资源重新分配失败节点上的任务任务失败orof39《云计算》第三版配套PPT课件125.4Hadoop2.0体系架构体系架构从Yarn架构和Yarn任务执行过程能看出Yarn具有巨大优势:Yarn的设计大大减轻了ResourceManager的资源消耗,并且ApplicationMaster可分布于集群中任意一台机器,设计上更加优美。SchedulerApplicationMaster纯粹的资源仲裁中心ApplicationManager只监管ApplicationMaster负责任务整体执行of39《云计算》第三版配套PPT课件13WebAppServerProxyResourceMangerJobHistoryServerNodeManagerNodeManagerNodeManager5.4Hadoop2.0体系架构体系架构Yarn典型拓扑除了ResourceManager和NodeManager两个实体外,Yarn还包括WebAppProxyServer和JobHistoryServer两个实体。of39《云计算》第三版配套PPT课件145.4Hadoop2.0体系架构体系架构JobHistoryServer管理已完成的Yarn任务WebAppProxyServer任务执行时的Web页面代理历史任务的日志和执行时的各种统计信息统一由JobTracker管理Yarn将管理历史任务的功能抽象成一独立实体JobHistoryServer通过使用代理,不仅进一步降低了ResourceManager的压力,还能降低Yarn受到的Web攻击负责监管具体MapReduce任务执行全过程,将从Container那里收集过的任务执行信息汇总并显示到一个Web界面上of39《云计算》第三版配套PPT课件155.4Hadoop2.0体系架构编程模板ApplicationMaster是一个可变更的部分,只要实现不同的ApplicationMaster,就可以实现不同的编程模式MapReduce模板MapReduce类型的ApplicationMasterdistributedshell模板distributedshell类型的ApplicationMaster示例模板MapReduce模板Yarn的示例编程为“distributedshell”,该程序可以将给定的shell命令分布到机器执行Map把任务分解成为多个任务,Reduce把分解后多任务处理的结果汇总起来,得到最终结果of39《云计算》第三版配套PPT课件16分段0分段1分段2分段3分段M-1Map()Map()Map()Map()Map()Reduce()Reduce()Reduce()Reduce()结果0结果1结果2结果R-1输入M个map任务R个Reduce任务输出分区5.4Hadoop2.0体系架构编程模板of39《云计算》第三版配套PPT课件175.4Hadoop2.0体系架构编程模板映射阶段MapReduce框架将用户输入的数据分割为M个片断,对应M个Map任务。化简阶段每一个Reduce操作的输入是一个K2,list(V2)片断,Reduce操作调用用户定义的Reduce函数,生成用户需要的键值对K3,V3进行输出。一个MapReduce操作分为两个阶段:映射阶段和化简阶段。of39《云计算》第三版配套PPT课件185.4Hadoop2.0体系架构调度策略容量调度算法(CapacityScheduler)公平调度算法(FairScheduler)核心问题YarnMapReduce任务的调度策略ResourceManager的Scheduler模块支持插拔,通过配置文件,用户可以个性化指定其调度策略of39《云计算》第三版配套PPT课件195.4Hadoop2.0体系架构调度策略CapacityScheduler是一种多用户多任务调度策略,它以队列为单位划分任务,以Container为单位分配资源,它也是Hadoop2.0默认的调度策略,为多个用户共享集群资源提供安全可靠的保障。通过共建集群的方式,不但可以提高资源利用率,还能在必要时刻使用更多的集群资源,同时,组织机构间共建集群也大大降低了运维成本,容量调度策略通过队列来划分资源,队列间关系类似于一棵多叉树,队列间一层层继承,根队列称为root队列,Yarn初次启动时默认启动队列为root.default队列。容量调度算法of39《云计算》第三版配套PPT课件205.4Hadoop2.0体系架构调度策略多级队列容量确定性安全性弹性多用户易操作性容量调度策略以队列来划分集群资源,不同机构可以在集群里新建不同队列规定某队列占用集群资源的上下限,能够确保即使其他队列用到其最高峰时,也能预留充足资源留给此队列每个队列都有相应的访问控制列表ACL文件通过设置队列额外资源使用量,能够让此队列使用超出规定的资源量通过设置不同队列拥有资源的比例,避免某用户或某进程独占集群资源,实现多用户多任务调度主要包括实时配置和实时更改队列状态of39《云计算》第三版配套PPT课件215.4Hadoop2.0体系架构调度策略实时配置:管理员能够以安全的方式,在不停止集群的情况下,实时更新队列配置实时更改队列状态:基于资源调度:Yarn支持资源密集型作业,作业在分配Container时其Container所包含的资源量是一定的,但Yarn允许此Container在执行时占用更多的资源,目前只支持内存。运行态停止态不暂停集群管理用户权限作业提交Yarnof39《云计算》第三版配套PPT课件225.4Hadoop2.0体系架构调度策略管理接口Web接口Shell命令接口yarn-site.xml指定使用容量调度策略。capacity-scheduler.xml配置全局多级队列和队列的ACL文件。mapred-site.xml配置客户端提交MapReduce任务时使用的队列。Hadoop-policy.xml配置全局ACL文件。$HADOOP_YARN_HOME/bin/yarnrmadmin–refreshQueues,管理员可以通过此命令在不停止集群的情况下,使多级队列的配置立即生效。of39《云计算》第三版配套PPT课件235.4Hadoop2.0体系架构调度策略公平调度策略FairScheduler是一种允许多个Yarn任务公平使用集群资源的可插拔式调度策略FairScheduler会将资源分配给集群中所有的任务FairScheduler则会将正在执行任务释放的部分资源分配给等待队列里的任务集群资源满足时受限时从宏观上看,集群资源公平地为每一个任务所拥有,它不仅可以让短作业在合理的时间内完成,也避免了长作业长期得不到执行的尴尬局面。of39《云计算》第三版配套PPT课件245.4Hadoop2.0体系架构调度策略默认队列队列间权重配置队列内多调度策略队列下限支持多用户访问控制列表ACL公平调度策略也通过队列来组织和管理任务,并且也支持多级队列,其队列之间为多叉树结构设置某队列资源权重,权重越大,获得资源的比例越大队列内部的调度策略是可配置的,默认为FairSharePolicy策略为每个队列设置资源下限值,大大提高集群资源利用率通过多级队列可以将不
本文标题:第5章 Hadoop 2.0 主流开源云架构(四)
链接地址:https://www.777doc.com/doc-3379889 .html