Hadoop2环境搭建(单机伪分布)

1.下载与安装

我们首先从hadoop的release页面下载需要的版本,我选择的是2.7.1版本,两种文件,source是源代码(想查看源代码可以下载),binary是我们用来搭建环境的安装文件。

将下载的文件解压并设置环境变量,我使用的存放位置是/usr/bigdata/hadoop-2.7.1。
接下来是设置环境变量,首先你需要安装java并设置环境变量,关于java的安装不再赘述,下面是java和hadoop的环境变量设置结果。使用vim操作 /etc/profile 文件,并在文件最后追加如下内容即可(注意修改为你自己的文件路径)。

1
2
3
4
5
6
7
8
# set java environment
export JAVA_HOME=/usr/java/jdk1.8.0_65
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin

# set hadoop path
export HADOOP_HOME=/usr/bigdata/hadoop-2.7.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

接下来就是修改hadoop的两个配置文件
①. /usr/bigdata/hadoop-2.7.1/etc/hadoop/hadoop-env.sh
查找文件讲java路径添加进去,如下:

1
2
# The java implementation to use.
export JAVA_HOME=/usr/java/jdk1.8.0_65

②. /usr/bigdata/hadoop-2.7.1/etc/hadoop/core-site.xml
在空的configuration节点中添加内容,结果如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>hdfs://localhost:9001</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

③. /usr/bigdata/hadoop-2.7.1/etc/hadoop/mapred-site.xml
你可能看到的是mapred-site.xml.template文件,将其.template后缀删除即可,同样在空的configuration节点中添加内容,结果如下:

1
2
3
4
5
6
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

④. /usr/bigdata/hadoop-2.7.1/etc/hadoop/yarn-site.xml
同样在空的configuration节点中添加内容,结果如下:

1
2
3
4
5
6
7
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

此时文件配置完成接下来就是启动查看我们设置是否成功了!

2.启动与查看结果
在启动之前你需要确保以下几点均OK:
①.java环境变量已配置并可用
②hadoop环境变量已配置并可用(命令行输入hadoop即可知道)
③防火墙已关闭(在windows中查看hadoop的web页面防火墙可能会阻止)
④格式化hdfs,使用命令:hadoop namenode -format

接下来就可以使用启动命令了,如果在hadoop的环境变量设置中加入了sbin目录,那现在就可以在任意路径下使用start-all.sh(start-all.sh脚本现在已经废弃,推荐使用start-dfs.sh和start-yarn.sh分别启动HDFS和YARN)启动,如果没有设置这需要到hadoop的安装目录sbin下执行该shell。

①启动结果如下:

1
2
3
4
5
6
7
8
9
10
11
[root@localhost ~]# start-all.sh
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
Starting namenodes on [localhost]
localhost: starting namenode, logging to /usr/bigdata/hadoop-2.7.1/logs/hadoop-root-namenode-localhost.localdomain.out
localhost: starting datanode, logging to /usr/bigdata/hadoop-2.7.1/logs/hadoop-root-datanode-localhost.localdomain.out
Starting secondary namenodes [0.0.0.0]
0.0.0.0: starting secondarynamenode, logging to /usr/bigdata/hadoop-2.7.1/logs/hadoop-root-secondarynamenode-localhost.localdomain.out
starting yarn daemons
starting resourcemanager, logging to /usr/bigdata/hadoop-2.7.1/logs/yarn-root-resourcemanager-localhost.localdomain.out
localhost: starting nodemanager, logging to /usr/bigdata/hadoop-2.7.1/logs/yarn-root-nodemanager-localhost.localdomain.out
[root@localhost ~]#

正常情况下你将看到上面的结果,如果出现错误建议根据错误提示处理。

②查看是否启动成功,输入jps命令,结果如下:

1
2
3
4
5
6
7
8
[root@localhost ~]# jps
8352 NodeManager
7794 NameNode
8085 SecondaryNameNode
8245 ResourceManager
7899 DataNode
8670 Jps
[root@localhost ~]#

上面的结果显示hadoop的三个java进程(NameNode、SecondaryNameNode、DataNode)以及yarn的两个进程(NodeManager、ResourceManager)均在运行,启动成功。

③.使用浏览器查看hadoop的运行状态
首先查看linux的ip地址并确保可以ping通(我的IP地址是:192.168.84.129)
查看hadoop NameNode运行状况:http://192.168.84.129:50070
查看yarn ResourceManager状况:http://192.168.84.129:8088

如果均可以打开则表示运行正常。

0%