Hadoop HA 集羣配置文件

> 1、hadoop-env.sh配置

export JAVA_HOME=(jdk安裝地址)

> 2、hdfs-site.xml配置文件

<此新名稱服務的邏輯名稱>
<property>
<name> dfs.nameservices </ name>
<value> mycluster </ value>
</property>
<名稱服務中每個NameNode的唯一標識符>
<property>
<name> dfs.ha.namenodes.mycluster </ name>
<value>master,slave1</ value>
</ property>
<namenode的rpc服務器的監聽地址>
<property>
<name> dfs.namenode.rpc-address.mycluster.master </ name>
<value> master:50070 </ value>
</ property>
<property>
<name> dfs.namenode.rpc-address.mycluster.slave1 </ name>
<value> slave1:50070 </ value>
</ property>
<每個NameNode監聽的標準HTTP地址>
<property>
<name> dfs.namenode.http-address.mycluster.master </ name>
<value> master:9000 </ value>
</ property>
<property>
<name> dfs.namenode.http-address.mycluster.slave1 </ name>
<value> slave1:9000 </ value>
</ property>
<配置JournalNodes 集羣的URI>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://master:8485;slave1:8485;slave2:8485/mycluster</value>
</property>
<配置故障轉移代理類>
<property>
<name>dfs.client.failover.proxy.provider.mycluster</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<sshfence -SSH到Active NameNode並終止進程>
<property>
<name> dfs.ha.fencing.methods </ name>
<value> sshfence </ value>
</ property>
<property>
<name> dfs.ha.fencing.ssh.private-key-files </ name>
<value> /root/.ssh/id_rsa </ value>
</ property>
<shell-運行一個任意的shell命令來隔離Active NameNode>
<property>
<name> dfs.ha.fencing.methods </ name>
<value> shell(/bin/true)</ value>
</ property>
<journalnode日誌存放路徑>
<property>
<name> dfs.journalnode.edits.dir </ name>
<value>/usr/local/src/hadoop/data/journalnode/jn</ value>
</property>
<自動故障轉移>
<property>
<name> dfs.ha.automatic-failover.enabled </ name>
<value> true </ value>
</ property>

> 3、core-site.xml配置文件

<指定hdfs的nameservice>
<property>
<name>fs.defaultFS</name>
<value>hdfs://mycluster</value>
</property>
<指定hadoop臨時目錄>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/tmp/hadoop/ha</value>
</property>
<zookeeper的地址>
<property>
<name>ha.zookeeper.quorum</name>
<value>master:2181,slave1:2181,slave2:2181</value>
</property>

> 4、mapred-site.xml配置

<property>
<name>mapreduce.farmework.name</name>
<value>yarn</calue>
</property>

> 5、yarn-site.xml配置

<打開高可用>
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<啓用自動故障轉移 >
<property>
<name>yarn.resourcemanager.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<!-- 指定RM的cluster id -->
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yarn-rm-cluster</value>
</property>
<!-- 指定RM的名字 -->
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<!-- 分別指定RM的地址 -->
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>master</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>server1</value>
</property>
<!-- 指定zk集羣地址 -->
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>master:2181,server1:2181,server2:2181</value>
</property>
<配置YARN的http端口>
<property>
<name>yarn.resourcemanager.webapp.address.rm1</name>
<value>master:8088</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address.rm2</name>
<value>slave1:8088</value>
</property>

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>

> 6、slaves配置(DataNode)
master
slave1
slave2

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章