Hadoop2.8.5详细教程(五)Hadoop全分布式搭建

一、haoop解压、创建软连接
将hadoop-2.8.5.tar.gz上传到hp01服务器/apps下
tar -xf hadoop-2.8.5.tar.gz -C /usr/local
进入/usr/local 后使用 ln -s hadoop-2.8.5 hadoop2 创建一个软连接

二、配置环境变量
在/etc/profile.d下使用vi命令新建hadoop.sh

export  HADOOP_HOME=/usr/local/hadoop2
export  PATH=$PATH:$HADOOP_HOME/bin
export  PATH=$PATH:$HADOOP_HOME/sbin

后两个可不写

export  LD_LIBRARY_PATH=$HADOOP_HOME/lib/native
export  HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

以上可复制到vi编辑器中:

保存,调用 source hadoop.sh
测试版本号 hadoop version

三、配置hadoop环境脚本中的java参数
在hadoop2/etc/hadoop下的

[root@hadoop01 hadoop]#  vim hadoop-env.sh 
[root@hadoop01 hadoop]#  vim mapred-env.sh
[root@hadoop01 hadoop]#  vim yarn-env.sh

全部添加上export JAVA_HOME=${JAVA_HOME}

四、创建Hadoop存储目录,在/目录下新建三个文件

[root@hp01 /]# mkdir -p  hadoop_data/tmp
[root@hp01 /]# mkdir -p  hadoop_data/dfs/name
[root@hp01 /]# mkdir    hadoop_data/dfs/data

五、配置主从结点
删除hadoop2/etc/hadoop/slaves中配置,将hp02、hp03添加到slaves中作为集群的slaves(一行一个)

六、Hadoop文件配置
配置core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hp01:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/hadoop_data/tmp</value>
</property>
</configuration>

配置改hdfs-site.xml

<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hp01:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/hadoop_data/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/hadoop_data/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>

yarn-site.xml:

<configuration>  
		<property>  
			<name>yarn.nodemanager.aux-services</name>
			<value>mapreduce_shuffle</value>
		</property>
		<property>
			<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
			<value>org.apache.hadoop.mapred.ShuffleHandler</value>
		</property>
		<property>
			<name>yarn.resourcemanager.address</name>
			<value>hp01:8032</value>
		</property>
		<property>
			<name>yarn.resourcemanager.scheduler.address</name>
			<value>hp01:8030</value>
		</property>
		<property>
			<name>yarn.resourcemanager.resource-tracker.address</name>
			<value>hp01:8031</value>
		</property>
		<property>
			<name>yarn.resourcemanager.admin.address</name>
			<value>hp01:8033</value>
		</property>
		<property>
			<name>yarn.resourcemanager.webapp.address</name>
			<value>hp01:8088</value>
		</property>
</configuration>

mapred-site-xml:
复制文件:
cp mapred-site.xml.template mapred-site.xml

<configuration>
	<property><name>mapreduce.framework.name</name>
	<value>yarn</value>
</property>
<property>
	<name>mapreduce.jobhistory.address</name>
	<value>hp01:10020</value>
</property>
<property>
	<name>mapreduce.jobhistory.webapp.address</name>
	<value>hp01:19888</value>
</property>
</configuration>

七、分发hp01的配置到hp02、hp03:

将hadoop远程复制到hp02 hp03上

[root@hp01 /]# scp -r /usr/local/hadoop-2.8.5/  hp02:/usr/local
[root@hp01 /]# scp -r /usr/local/hadoop-2.8.5/  hp03:/usr/local

然后分别在hp02、hp03建一个软连接。 ln -s hadoop-2.8.5 hadoop2

将hadoop 环境变量远程复制到hp02 hp03上

[root@hp01 /]# scp -r /etc/profile.d/hadoop.sh  hp02:/etc/profile.d
[root@hp01 /]#scp -r /etc/profile.d/hadoop.sh  hp03:/etc/profile.d

并在hp02、hp03中分别调用source hadoop.sh

将文件夹分发:

[root@hp01 /]# scp -r hadoop_data/  hp02:/
[root@hp01 /]# scp -r hadoop_data/  hp03:/

测试版本号 hadoop version

八、格式化主节点的存储目录
只对hp01的hadoop_data格式化。
第一次启动hadoop是需要格式化hadoop的namenode
命令:

hdfs namenode -format

九、启动hadooop
启动dfs
命令:start-dfs.sh
启动yarn
命令:start-yarn.sh

通过jps命令,可以查看hadoop启动的进程
在hp01结点上,正常应该包含
NameNode
SecondaryNameNode
ResourceManager

在hp02和hp03结点上,正常应该包含
DataNode
NodeManager

NameNode没有启动的解决方案

首先,打开hp01结点上的/usr/local/hadoop2下的logs文件夹中hadoop-namenode.hp01.log文件。
查看有什么Java异常信息。根据异常信息进行错误的解决。

如果异常仅仅显示IOExcepiton:NameNode is not formatted

则需要将hp01、hp02、hp03三个节点的/hadoop_data文件夹删除,然后重启三个节点,分别创建这一组目录,然后重新对hp01进行格式化。

关闭yarn
命令:stop-yarn.sh
关闭dsf
命令:stop-dfs.sh

十、Web页面
在web页面中查看hdfs和yarn
http://192.168.150.21:50070
http://192.168.150.21:8088

Guess you like

Origin blog.csdn.net/GodBlessYouAndMe/article/details/120432125