将app下的“hadoop-2.4.1”改名为“hadoop”
重新将“hadoop-2.4.1.tar.gz”解压到app下
进入“/app/hadoop-2.4.1”下
新建“data”,“journaldata”
进入“/etc/hadoop”下
修改“hadoop-env.sh”文件中的“JAVA_HOME”路径如下
配置“core-site.xml”文件,在<configuration></configuration>
中插入如下代码
<property>
<name>fs.defaultFS</name>
<value>hdfs://ns1/</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/app/hadoop-2.4.1/data</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>zjgm01:2181,zjgm02:2181,zjgm03:2181</value>
</property>
配置“hdfs-site.xml”文件,在<configuration></configuration>
中插入如下代码
<property>
<name>dfs.nameservices</name>
<value>ns1</value>
</property>
<property>
<name>dfs.ha.namenodes.ns1</name>
<value>nn1,nn2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.ns1.nn1</name>
<value>zjgm01:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.ns1.nn1</name>
<value>zjgm01:50070</value>
</property>
<property>
<name>dfs.namenode.rpc-address.ns1.nn2</name>
<value>zjgm02:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.ns1.nn2</name>
<value>zjgm02:50070</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://zjgm01:8485;zjgm02:8485;zjgm03:8485/ns1</value>
</property>
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/home/hadoop/app/hadoop-2.4.1/journaldata</value>
</property>
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.client.failover.proxy.provider.ns1</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<property>
<name>dfs.ha.fencing.methods</name>
<value>
sshfence
shell(/bin/true)
</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/home/hadoop/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.connect-timeout</name>
<value>30000</value>
</property>
将“mapred-site.xml.template”改名为“mapred-site.xml”
配置“mapred-site.xml”文件,在<configuration></configuration>
中插入如下代码
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
配置“yarn-site.xml”文件,在<configuration></configuration>
中插入如下代码
<property>
<name>yarn.resourcemanager.hostname</name>
<value>zjgm03</value>
</property>
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>zjgm01:2181,zjgm02:2181,zjgm03:2181</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
进入app下,将“hadoop-2.4.1”复制到“zjgm02”,“zjgm03”
命令代码分别为
“scp -r hadoop-2.4.1/ zjgm02:/home/hadoop/app/”
“scp -r hadoop-2.4.1/ zjgm03:/home/hadoop/app/”
重新进入“hadoop-2.4.1/etc/hadoop”下,修改“slaves”中的“localhost”为“zjgm03”
分别启动三台虚拟机的“zookeeper”
分别启动三台虚拟机的“journalnode”
“jps”命令下可看到三台虚拟机都是如下结果
格式化HDFS
进入“/home/hadoop/app/hadoop-2.4.1”路径下
将“/home/hadoop/app/hadoop-2.4.1”下的“data”复制到“zjgm02”的app下
格式化ZKFC
启动HDFS–“start-dfs.sh”
“zjgm01”,“zjgm02”结果如下
“zjgm03”结果如下
网页结果显示如下
启动YARN–“start-yarn.sh”
“zjgm03”结果如下