当前位置 主页 > 服务器问题 > Linux/apache问题 >
yarn-site.xml
<?xml version="1.0"?> <configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.resourcemanager.hostname</name> <value>s141</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
4. 部署细节
1)在jn节点分别启动jn进程(s142,s143,s144)
hadoop-daemon.sh start journalnode
2)启动jn之后,在两个NN之间进行disk元数据同步
a)如果是全新集群,先format文件系统,只需要在一个nn上执行。
[s141|s146]
hadoop namenode -format
b)如果将非HA集群转换成HA集群,复制原NN的metadata到另一个NN上.
1.步骤一
在s141机器上,将hadoop数据复制到s146对应的目录下
scp -r /home/hdfs/hadoop/dfs hdfs@s146:/home/hdfs/hadoop/
2.步骤二
在新的nn(未格式化的nn,我这里是s146)上运行以下命令,实现待命状态引导。注意:需要s141namenode为启动状态(可以执行:hadoop-daemon.sh start namenode )。
hdfs namenode -bootstrapStandby
如果没有启动s141名称节点,就会失败,如图:
启动s141名称节点后,在s141上执行命令
hadoop-daemon.sh start namenode
然后在执行待命引导命令,注意:提示是否格式化,选择N,如图:
3. 步骤三
在其中一个NN上执行以下命令,完成edit日志到jn节点的传输。
hdfs namenode -initializeSharedEdits
如果执行过程中报:java.nio.channels.OverlappingFileLockException 错误:
说明namenode在启动中,需要停掉namenode节点(hadoop-daemon.sh stop namenode)
执行完后查看s142,s143,s144是否有edit数据,这里查看生产了mycluster目录,里面有编辑日志数据,如下:
4.步骤四
启动所有节点.
在s141上启动名称节点和所有数据节点:
hadoop-daemon.sh start namenode hadoop-daemons.sh start datanode
在s146上启动名称节点
hadoop-daemon.sh start namenode
此时在浏览器中访问http://192.168.30.141:50070/和http://192.168.30.146:50070/你会发现两个namenode都为standby
这时需要手动使用命令将其中一个切换为激活态,这里将s141(nn1)设置为active
hdfs haadmin -transitionToActive nn1
此时s141就为active