202155 Hadoop HA 集群部署 3HDFS HA 配置启动与验证 教学_第1页
202155 Hadoop HA 集群部署 3HDFS HA 配置启动与验证 教学_第2页
202155 Hadoop HA 集群部署 3HDFS HA 配置启动与验证 教学_第3页
202155 Hadoop HA 集群部署 3HDFS HA 配置启动与验证 教学_第4页
202155 Hadoop HA 集群部署 3HDFS HA 配置启动与验证 教学_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

主讲:方明清0102030405目录规划HadoopHA集群ZooKeeper安装与配置HDFSHA配置、启动与验证YARNHA配置、启动与验证YARNHA测试JobHDFSHA配置、启动与验证3HDFSHA配置、启动与验证序号任务名称任务一修改core-site.xml配置文件(HDFSHA)任务二修改hdfs-site.xml配置文件(HDFSHA)任务三分发HDFSHA配置文件任务四HDFSHA集群的NameNode格式化任务五部署完成之后常规启动HDFSHA集群任务六验证HDFSHA集群任务一修改core-site.xml配置文件登录master节点,使用root用户登录,然后切换为hadoop用户,再进入haddop配置文件目录 [root@master~]#su–hadoop --从root用户切换为hadoop身份 [hadoop@master~]$cd/opt/hadoop-2.8.5/etc/hadoop --进入到hadoop配置文件目录修改core-site.xml配置文件,替换为以下内容 <configuration>

<!--指定NameNode主机连接到nameservices逻辑名(在hdfs-site.xml中有定义)--> <property> <name>fs.defaultFS</name> <value>hdfs://myha</value> </property>

<!--指定tmp文件夹路径--> <property> <name>hadoop.tmp.dir</name> <value>/home/hadoop/data/tmp</value> </property> <!–设置zookeeper地址--> <property> <name>ha.zookeeper.quorum</name> <value>master:2181,slave1:2181,slave2:2181</value> </property> </configuration>任务二修改hdfs-site.xml配置文件(一)编辑hdfs-site.xml配置文件,主要是删除SecondaryNameNode配置信息,配置为双NN模式 <configuration> <property> <name>dfs.replication</name> <value>3</value> </property>

<!–为namenode集群定义一个nameservices逻辑名--> <property> <name>services</name> <value>myha</value> </property>

<!–映射nameservices逻辑名称到namenode逻辑名称--> <property> <name>nodes.myha</name> <value>nn1,nn2</value> </property> </configuration>在单一NameNode节点的集群中,访问HDFS集群的入口是NameNode所在的服务器,但是在有两个或多个NameNode节点的HA集群中,无法配置单一服务器入口,需要定义一个服务逻辑名。任务二修改hdfs-site.xml配置文件(二)编辑hdfs-site.xml配置文件(续上) <configuration>

<!–映射namenode逻辑名称到真实主机名(RPC)nn1

--> <property> <name>node.rpc-address.myha.nn1</name> <value>master:8020</value> </property>

<!–映射namenode逻辑名称到真实主机名(RPC)nn2

--> <property> <name>node.rpc-address.myha.nn2</name> <value>slave1:8020</value> </property>

</configuration>node.rpc-address.[nameserviceID].[namenodeID]分别指定每个NameNode的RPC服务完整监听地址(hostname+端口号),真实的NN主机分别是master和slave1,端口8020是NameNode节点Active状态的端口号,是HDFS的内部通信端口。任务二修改hdfs-site.xml配置文件(三)编辑hdfs-site.xml配置文件(续上) <configuration>

<!–映射namenode逻辑名称到真实主机名(HTTPWEB)nn1

--> <property> <name>node.http-address.myha.nn1</name> <value>master:50070</value> </property>

<!–映射namenode逻辑名称到真实主机名(HTTPWEB)nn2

--> <property> <name>node.http-address.myha.nn2</name> <value>slave1:50070</value> </property>

</configuration>node.http-address.[nameserviceID].[namenodeID]分别指定每个NameNode的HTTP服务地址(hostname+端口号),真实的NN主机分别是master和slave1,端口50070是NameNode节点用于访问和监控Hadoop系统运行状态的WebUI(Web界面)默认端口。任务二修改hdfs-site.xml配置文件(四)编辑hdfs-site.xml配置文件(续上) <configuration>

<!–配置namenode间用于共享编辑日志的journalnode列表--> <property> <name>node.shared.edits.dir</name> <value>qjournal://master:8485;slave1:8485;slave2:8485/myha</value> </property>

<!–配置journalnode用于存放共享编辑日志的目录--> <property> <name>dfs.journalnode.edits.dir</name> <value>/home/hadoop/data/dfs/jn</value> </property> </configuration>两个NameNode为了数据同步,会通过一组称作JournalNodes的独立进程进行相互通信。当active状态的NameNode的命名空间有任何修改时,会告知大部分的JournalNodes进程。standby状态的NameNode有能力读取JNs中的变更信息,并且一直监控editlog的变化,把变化应用于自己的命名空间。standby可以确保在集群出错时,命名空间状态已经完全同步了。任务二修改hdfs-site.xml配置文件(五)编辑hdfs-site.xml配置文件(续上) <configuration>

<!–开启NameNode失败自动切换--> <property> <name>dfs.ha.automatic-failover.enabled</name> <value>true</value> </property>

<!–配置NameNode失败自动切换实现方式--> <property> <name>vider.myha</name> <value>node.ha.ConfiguredFailoverProxyProvider</value> </property>

<!–配置隔离机制方法,多个机制用换行分割,即每个机制占用一行--> <property> <name>dfs.ha.fencing.methods</name> <value> sshfence shell(/bin/true) </value> </property> </configuration>任务三分发HDFSHA配置文件master节点,使用root用户登录,然后切换为hadoop用户 [root@master~]#su–hadoop --从root用户切换为hadoop身份 [hadoop@master~]$分发HDFSHA配置文件 [hadoop@master~]$cd/opt/hadoop-2.8.5/etc/hadoop/ [hadoop@master~]$scpcore-site.xmlhadoop@slave1:/opt/hadoop-2.8.5/etc/hadoop/ [hadoop@master~]$scpcore-site.xmlhadoop@slave2:/opt/hadoop-2.8.5/etc/hadoop/ [hadoop@master~]$scphdfs-site.xmlhadoop@slave1:/opt/hadoop-2.8.5/etc/hadoop/ [hadoop@master~]$scphdfs-site.xmlhadoop@slave2:/opt/hadoop-2.8.5/etc/hadoop/分别登录slave1、slave2节点,切换为hadoop用户,检查分发结果以及环境变量 [hadoop@slave1~]$ls-l/opt/hadoop-2.8.5/etc/hadoop/ --在slave1节点上检查分发结果 [hadoop@slave1~]$export --在slave1节点上检查环境变量 [hadoop@slave2~]$ls-l/opt/hadoop-2.8.5/etc/hadoop/ --在slave2节点上检查分发结果 [hadoop@slave2~]$export --在slave2节点上检查环境变量任务四HDFSHA集群的NameNode格式化(一)所有节点,使用root用户登录,然后切换为hadoop用户 [root@master~]#su–hadoop --从root用户切换为hadoop身份 [hadoop@master~]$所有节点,在进行HDFSHA的NameNode格式化之前,需要将原来HDFS数据临时存放文件删除 [hadoop@master~]$rm–rf/home/hadoop/data/dfs/namenode --删除namenode目录 [hadoop@master~]$rm–rf/home/hadoop/data/dfs/datanode --删除datanode目录

[hadoop@master~]$rm–rf/home/hadoop/data/tmp/ --删除tmp目录文件所有节点,启动Zookeeper(以master节点为例,其他节点步骤完全相同) [hadoop@master~]$zkServer.shstart --启动Zookeeper [hadoop@master~]$zkServer.shstatus --查看启动状态 [hadoop@master~]$jps --查看Zookeeper进程所有节点,启动JourmnalNode(以master节点为例,其他节点步骤完全相同) [hadoop@master~]$hadoop-daemon.shstartjournalnode --启动本机JournalNode [hadoop@master~]$jps --查看JournalNode进程

或者 [hadoop@master~]$hadoop-daemons.shstartjournalnode --启动所有节点的JournalNode [hadoop@master~]$jps --查看JournalNode进程任务四HDFSHA集群的NameNode格式化(二)所有NameNode节点(master和slave1)格式化NameNode

[hadoop@master~]$hdfsnamenode–format --master节点格式化NameNode

[hadoop@master~]$hadoop-daemon.shstartnamenode --master节点启动NameNode

[hadoop@master~]$jps --master查询NameNode进程

通过双NN同步,在slave1上格式化NameNode,步骤如下:

[hadoop@slave1~]$hdfsnamenode–bootstrapStandby --slave1节点格式化NameNode从master节点启动HDFSHA集群 [hadoop@master~]$start-dfs.sh --启动HDFSHA集群 [hadoop@master~]$jps --查看进程,所有节点都执行

[hadoop@master~]$hdfshaadmin–getServiceStatenn1 --查询NameNode1状态

[hadoop@master~]$hdfshaadmin–getServiceStatenn2 --查询NameNode2状态所有ZKFC节点,启动ZookeeperFailoverController(以master节点为例,slave1节点步骤完全相同) [hadoop@master~]$hdfszkfc-formatZK --第一次启动ZKFC,在Zookeeper中创建znode [hadoop@master~]$hadoop-daemon.shstartzkfc --master节点启动ZKFC [hadoop@slave1~]$hadoop-daemon.shstartzkfc --slave1节点启动ZKFC [hadoop@master~]$jps --master节点查看ZKFC进程:DFSZKFailoverController

[hadoop@master~]$hdfshaadmin–getServiceStatenn1 --查询NameNode1状态

[hadoop@master~]$hdfshaadmin–getServiceStatenn2 --查询NameNode2状态任务五部署完成之后常规启动HDFSHA集群所有节点,启动Zookeeper(以master节点为例,其他节点步骤完全相同) [hadoop@master~]$zkServer.shstart --启动Zookeeper [hadoop@master~]$zkServer.shstatus --查看启动状态,一个Leader,其余Follower [hadoop@master~]$jps --查看Zookeeper进程,QuorumPeerMain所有节点,启动JourmnalNode(以master节点为例,其他节点步骤完全相同) [hadoop@master~]$hadoop-daemon.shstartjournalnode --启动本机JournalNode [hadoop@master~]$jps --查看JournalNode进程

或者 [hadoop@master~]$hadoop-daemons.shstartjournalnode --启动所有节点的JournalNode [hadoop@master~]$jps --查看JournalNode进程从master节点启动HDFSHA集群 [hadoop@master~]$start-dfs.sh --启动HDFSHA集群 [hadoop@master~]$jps --查看进程,所有节点都执行所有ZKFC节点,启动ZookeeperFailoverController(以master节点为例,slave1节点步骤完全相同) [hadoop@master~]$hadoop-daemon.shstartzkfc --master节点启动ZKFC [hadoop@slave1~]$hadoop-daemon.shstartzkfc --slave1节点启动ZKFC [hadoop@master~]$jps --master节点查看ZKFC进程:DFSZKFailoverController

[hadoop@master~]$hdfshaadmin–getServiceStatenn1 --查询NameNode1状态

[hadoop@master~]$hdfshaadmin–getServiceStatenn2 --查询NameNode2状态任务六验证HDFSHA集群(一)

温馨提示

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

评论

0/150

提交评论