大数据技术原理与操作应用 第6章 Hadoop2新特性_第1页
大数据技术原理与操作应用 第6章 Hadoop2新特性_第2页
大数据技术原理与操作应用 第6章 Hadoop2新特性_第3页
大数据技术原理与操作应用 第6章 Hadoop2新特性_第4页
大数据技术原理与操作应用 第6章 Hadoop2新特性_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章Hadoop2.0新特性

·Hadoop2.0的改进与提升·YARN体系结构·YARN工作流程·HDFSHA的搭建方法12✎学习目标熟悉掌握掌握掌握熟悉YARN的体系结构12掌握Hadoop2.0的改进与提升4掌握YARN的工作流程3掌握HDFSHA的搭建方法本章通过对Hadoop2.0的改进与提升、YARN体系结构、YARN工作流程、HDFSHA搭建方法进行详细讲解。章节概要相比于Hadoop1.0,Hadoop2.0由HDFS、MapRduce和YARN三个分支构成。其中HDFS增加了两个重大特性,HA和Federation。Hadoop2.0将JobTracker中的资源管理和作业控制分开,分别由Resource-Manager(负责所有应用程序的资源分配)和ApplicationMaster(负责管理一个应用程序)实现,即引入了资源管理框架YARN。

6.1Hadoop2.0的改进与提升Hadoop2.0新特性——HAHA即为高可用性HighAvailability,高可用性最关键的策略是消除单点故障。其主要用于解决NameNode单点故障问题,该特性通过热备的方式为主NameNode提供一个备用者,一旦主NameNode出现故障,可以迅速切换至备NameNode,从而实现不间断对外提供服务。

6.1Hadoop的文件系统Hadoop2.0新特性——HA在一个典型的HDFSHA场景中,一个NameNode处于Active状态,另一个NameNode处于Standby状态。ActiveNameNode对外提供服务。例如:处理来自客户端的RPC请求,StandbyNameNode则不对外提供服务,仅同步ActiveNameNode的状态,以便能够在它失败时快速进行切换。

6.1Hadoop的文件系统Hadoop2.0新特性——FederationFederation即为“联邦”,该特性可理解为一个HDFS集群中允许存在多个相互独立的NameNode同时对外提供服务,这些使NameNode可以通过增加机器来进行水平扩展。每个NameNode分别进行各自命名空间和块管理。

6.1Hadoop的文件系统Hadoop2.0新特性——FederationFederation特性的设计主要可以解决以下问题HDFS集群扩展性性能更高效良好的隔离性

6.2YARN体系结构YARN体系结构ApacheHadoopYARN是Hadoop2.0中的资源管理系统,它依旧采用了主从架构。YARN主要是由ResourceManager、NodeManager、ApplicationMaster和Container

等几个组件构成。ResourceManager为master节点,NodeManager为slaver节点,ResourceManager主要负责对NodeManager上的资源进行统一的管理与调度。

6.2YARN体系结构YARN体系结构当用户Client提交一个应用程序时,Client向ResourceManager提交的每个应用程序都必须存在一个AppMaster,它负责向ResourceManager申请资源,并要求NodeManger启动可以占用一定资源的任务。由于不同的AppMaster被分布到不同的节点上,因此,它们之间不会相互影响。

6.2YARN体系结构YARN体系结构——ContainerContainer是YARN框架中的资源,它可以理解为组成系统的一个资源单元。例如:内存分片、CPU核心数、网络带宽和硬盘空间等。每个slaver节点由多个512MB或1GB大小的内存容器组成。当应用管理器(ApplicationManager)向资源管理器(ResourceManager)申请资源时,资源管理器返回的资源使用Container表示,且YARN为每个任务分配一个Container。

6.2YARN体系结构YARN体系结构——ResourceManagerResourceManager是一个全局的资源管理器,负责整个系统的资源管理与分配。它主要由两个组件资源调度器(Scheduler)和应用管理器(ApplicationManager)组成。1)调度器调度器是根据集群中的容量、队列和资源等限制,将资源分配给各个正在运行的应用。调度器根据每个应用的资源需求和集群各个节点的资源容器进行调度。2)应用管理器应用管理器负责整个系统中所有应用程序,包括应用程序提交、调度器协调资源启动(ApplicationMaster)、监控应用运行情况并重新启动等。

6.2YARN体系结构YARN体系结构——NodeManagerNodeManager是每个节点上的资源和任务管理器,它运行在每个集群的节点上,其主要负责与ResourceManager配合进行整个集群的资源分配工作,并监控运行节点的健康状态。它的工作主要有以下几个方面:接收ResourceManager请求与ResourceManager交换信息管理Container生命周期管理节点日志执行额外服务

6.2YARN体系结构YARN体系结构——ApplicationMasterApplicationMaster是应用主体,它与用户提交的每个应用程序是一一对应的,Application-Master的主要作用是向ResourceManager申请资源并与NodeManager协同工作来运行应用的各个任务,然后跟踪它们状态及监控各个任务的执行,遇到失败的任务还负责重启它。它的工作主要负责以下几个方面:①与ResourceManager调度器协商获取资源。②与NodeManager合作,在合适的容器中运行对应的组件,并监控这些任务执行。③如果容器Container出现故障,ApplicationMaster会重新向调度器申请其他资源。④计算应用程序所需要的资源量,并转化为调度器可识别的协议信息包。⑤在应用主体出现故障后,应用管理器会负责重启它。

6.3YARN工作流程YARN工作流程①用户Client向YARN中提交应用程序,并为其分配一个新的应用ID,该应用包括ApplicationMaster程序、启动ApplicationMaster的命令、用户程序等。②ResourceManager为该应用程序分配第一个Container。③ApplicationMaster首先向ResourceManager注册,这样用户可以直接通过ResourceManager查看应用程序的运行状态。④ApplicationMaster通过RPC协议不断计算所需资源并向ResourceManager申请和领取资源。⑤一旦ApplicationMaster申请到资源后,应用主体与对应的NodeManager进行通信,要求它启动任务。⑥NodeManager为任务设置好运行环境后,将任务启动命令写到一个脚本中,并通过运行该脚本启动任务。⑦各个任务通过某个RPC协议向ApplicationMaster汇报自己的状态和进度,以让ApplicationMaster随时掌握各个任务的运行状态。⑧应用程序运行完成后,ApplicationMaster向ResourceManager注销并关闭自己。

6.3YARN工作流程YARN工作流程

6.4HDFSHA的搭建方法准备工作——节点规划使用4台虚拟机搭建HA集群,节点master1和slave1作为NameNode,节点master2、slave1、slave2作为DataNode,存储共享的JournalNode在所有节点都要启动。节点规划图如下:

6.4HDFSHA的搭建方法准备工作——IP地址规划

6.4HDFSHA的搭建方法准备工作——修改主机名修改所有节点的“/etc/hostname”文件,修改三个虚拟机的主机名,执行命令“vi/etc/hostname”,将原文件中的“localhost.localdomain”分别改为master1、master2、slave1和slave2,修改完成后重启虚拟机。后续工作还包括创建普通用户,关闭防火墙,时钟同步等。

6.4HDFSHA的搭建方法安装Zookeeper——下载将下载后的安装包拷贝到每个节点的“/home/apache/soft”文件夹下,然后使用命令“tar-zxvfZooKeeper-3.4.14.tar.gz”解压压缩包。如图6.6所示,已经成功解压出文件夹“ZooKeeper-3.4.14”。

6.4HDFSHA的搭建方法安装Zookeeper——配置修改zookeeper配置文件名称为zoo.cfg。并修改配置文件,配置的内容如下:tickTime=2000initLimit=10syncLimit=5#修改的dataDir文件路径,配置临时文件路径内容即可,配置的文件路径需要提前创建好dataDir=/home/apache/soft/zookeeper-3.4.14/tmp#theportatwhichtheclientswillconnectclientPort=2181#配置server几台机器就配置几台即可,注意server的数字,在后续需要用到server.1=master2:2888:3888server.2=slave1:2888:3888server.3=slave2:2888:3888server.0=master1:2888:3888

6.4HDFSHA的搭建方法安装Zookeeper——安装Rsync工具使用命令“yuminstall-yrsync”。该命令是使用yum下载并安装Rsync工具包。进行配置分发操作。

6.4HDFSHA的搭建方法安装Zookeeper——配置环境变量修改/etc/profile文件配置环境变量,配置内容如下:exportJAVA_HOME=/home/apache/soft/jdk1.8.0_211exportHADOOP_HOME=/home/apache/soft/hadoop-2.7.7exportZOOKEEPER_HOME=/home/apache/soft/zookeeper-3.4.14exportPATH=﹩PATH:﹩JAVA_HOME/bin:﹩JAVA_HOME/jre/bin:﹩HADOOP_HOME/bin:﹩HADOOP_HOME/sbin:﹩ZOOKEEPER_HOME/binexportCLASSPATH=﹩CLASSPATH:.:﹩JAVA_HOME/lib:﹩JAVA_HOME/jre/lib

6.4HDFSHA的搭建方法安装Zookeeper——启动ZooKeeper的相关命令主要有以下几个:①启动ZooKeeper命令:“zkServer.shstart”;②查看ZooKeeper命令:“zkServer.shstatus”;③停止ZooKeeper命令:“zkServer.shstop”。为每台节点执行“zkServer.shstart”命令,启动ZooKeeper服务。当每个节点已经启动后,使用命令“zkServer.shstatus”查看每个节点的状态。

6.4HDFSHA的搭建方法配置高可用集群——创建文件夹在配置安装Hadoop之前,需要提前创建好文件夹,用来存储数据、日志文件、数据存储文件。对于数据存储文件夹,创建文件夹命令如下:[root@master1hadoop-2.7.7]#mkdir-p/home/apache/soft/hadoop-2.7.7/media/data1/hdfs/data[root@master1hadoop-2.7.7]#mkdir-p/home/apache/soft/hadoop-2.7.7/media/data2/hdfs/data[root@master1hadoop-2.7.7]#mkdir-p/home/apache/soft/hadoop-2.7.7/media/data3/hdfs/data

6.4HDFSHA的搭建方法配置高可用集群——配置环境变量这里需要配置Java和Hadoop的环境变量,配置方法可以参考ZooKeeper环境变量配置方法,这里只需要修改“/etc/profile”文件,在文件下添加的增加内容为:JAVA_HOME、HADOOP_HOME,并在变量PATH中添加变量。exportJAVA_HOME=/home/apache/soft/jdk1.8.0_211exportHADOOP_HOME=/home/apache/soft/hadoop-2.7.7exportZOOKEEPER_HOME=/home/apache/soft/ZooKeeper-3.4.14exportPATH=﹩PATH:﹩JAVA_HOME/bin:﹩JAVA_HOME/jre/bin:﹩HADOOP_HOME/bin:﹩HADOOP_HOME/sbin:﹩ZOOKEEPER_HOME/binexportCLASSPATH=﹩CLASSPATH:.:﹩JAVA_HOME/lib:﹩JAVA_HOME/jre/lib

6.4HDFSHA的搭建方法配置高可用集群——修改配置文件修改目录“/home/apache/soft/hadoop-2.7.7/etc/hadoop”下的“hadoop-env.sh”和“yarnenv.sh”两个文件,这两个脚本分别是Hadoop的环境变量与YARN的环境变量配置脚本。

6.4HDFSHA的搭建方法配置高可用集群——修改配置文件修改配置文件“core-site.xml”,该配置文件主要是设置集群的全局配置文件,用于定义系统级别的参数,如HDFSURL、Hadoop的临时目录等。修改配置文件“hdfs-site.xml”,该配置文件是对HDFS的配置文件,通过该配置文件可以修改命名空间NameSpace、指定该集群下有几个NameNode、NameNode的RPC通信地址与HTTP通信地址、DataNode的存储文件位置、配置JournalNode的数据共享地址、存储副本数、高可用性方案、ZooKeeper配置等。修改配置文件“mapred-site.xml”,该配置文件的主要作用是定义MapReduce参数,包括两部分:JobHistoryServer和应用程序参数,如Reduce任务的默认个数、任务所能使用的内存大小等。

6.4HDFSHA的搭建方法配置高可用集群——修改配置文件修改配置文件“yarn-site.xml”,该配置文件主要用于集群资源管理系统参数的配置,例如:配置“ResourceManager、NodeManager”的通信端口、Web监控端口等。修改Hadoop

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论