1.coer-site.xml
<configuration>
<!--【这里的值指的是默认的HDFS路径。这里只有一个HDFS集群,在这里指定!该值来自于hdfs-site.xml中的配置】-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://cluster1</value>
</property>
<!--【这里的路径默认是NameNode、DataNode、JournalNode等存放数据的公共目录。用户也可以自己单独指定这三类节点的目录。这里的yarn_data/tmp目录与文件都是自己创建的】 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/tom/yarn/yarn_data/tmp</value>
</property>
<!--【这里是ZooKeeper集群的地址和端口。注意,数量一定是奇数,且不少于三个节点】-->
<property>
<name>ha.zookeeper.quorum</name>
<value>hadoop1:2181,hadoop2:2181,hadoop3:2181,hadoop4:2181,hadoop5:2181</value>
</property>
</configuration>
2.hdfs-site.xml(重点核心文件)
<configuration>
<!--【指定DataNode存储block的副本数量。默认值是3个,我们现在有4个DataNode,该值不大于4即可。】-->
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<!--【给hdfs集群起名字】 -->
<property>
<name>dfs.nameservices</name>
<value>cluster1</value>
</property>
<!--【指定NameService是cluster1时的namenode有哪些,这里的值也是逻辑名称,名字随便起,相互不重复即可】-->
<property>
<name>dfs.ha.namenodes.cluster1</name>
<value>hadoop1,hadoop2</value>
</property>
<!--【指定hadoop101的RPC地址】 -->
<property>
<name>dfs.namenode.rpc-address.cluster1.hadoop1</name>
<value>hadoop1:9000</value>
</property>
<!--【指定hadoop101的http地址】-->
<property>
<name>dfs.namenode.http-address.cluster1.hadoop1</name>
<value>hadoop1:50070</value>
</property>
<property>
<name>dfs.namenode.rpc-address.cluster1.hadoop2</name>
<value>hadoop2:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.cluster1.hadoop2</name>
<value>hadoop2:50070</value>
</property>
<property>
<name>dfs.namenode.servicerpc-address.cluster1.hadoop1</name>
<value>hadoop1:53310</value>
</property>
<property>
<name>dfs.namenode.servicerpc-address.cluster1.hadoop2</name>
<value>hadoop2:53310</value>
</property>
<!--【指定cluster1是否启动自动故障恢复,即当NameNode出故障时,是否自动切换到另一台NameNode】-->
<property>
<name>dfs.ha.automatic-failover.enabled.cluster1</name>
<value>true</value>
</property>
<!--指定JournalNode -->
<!--【指定cluster1的两个NameNode共享edits文件目录时,使用的JournalNode集群信息】 -->
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://hadoop1:8485;hadoop2:8485;hadoop3:8485;hadoop4:8485;hadoop5:8485/cluster1</value>
</property>
<!--【指定cluster1出故障时,哪个实现类负责执行故障切换】-->
<property>
<name>dfs.client.failover.proxy.provider.cluster1</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<!--【指定JournalNode集群在对NameNode的目录进行共享时,自己存储数据的磁盘路径。tmp路径是自己创建,journal是启动journalnode自动生成】 -->
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/home/tom/yarn/yarn_data/tmp/journal</value>
</property>
<!--【一旦需要NameNode切换,使用ssh方式进行操作】-->
<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence</value>
</property>
<!--【如果使用ssh进行故障切换,使用ssh通信时用的密钥存储的位置】-->
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/home/tom/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.connect-timeout</name>
<value>10000</value>
</property>
<property>
<name>dfs.namenode.handler.count</name>
<value>100</value>
</property>
</configuration>
3.mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
4.yarn-site.xml
<configuration>
<!--【自定义ResourceManager的地址,还是单点】 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop1</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce.shuffle</value>
</property>
</configuration>
原文转自:https://blog.csdn.net/l1028386804/article/details/51372663
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://marco.blog.csdn.net/article/details/81298803
内容来源于网络,如有侵权,请联系作者删除!