Hadoop2伪分布式模型的搭建

前言

Hadoop是什么?Hadoop是一种分析和处理大数据的软件平台,是Apache的一个用Java语言所实现的开源软件的框架,在大量计算机组成的集群当中实现了对于海量的数据进行的分布式计算。

Hadoop可运行在三种模型下:

  • 单机模型:测试使用
  • 伪分布式模型:运行于单机
  • 分布式模型:集群模型

下面我就简单的来介绍一下伪分布式模型的搭建。

操作步骤

安装JDK

[root@centos7 ~]# yum install java-1.7.0-openjdk java-1.7.0-openjdk-devel -y

配置JAVA环境变量

[root@centos7 ~]# vim /etc/profile.d/java.sh

1
export JAVA_HOME=/usr

[root@centos7 ~]# . /etc/profile.d/java.sh

获取Hadoop二进制包并解压 下载地址

[root@centos7 ~]# mkdir /bdapps/
[root@centos7 ~]# tar xf hadoop-2.6.4.tar.gz -C /bdapps/
[root@centos7 ~]# cd /bdapps/;ln -sv hadoop-2.6.4 hadoop

配置Hadoop环境变量

[root@centos7 ~]# vim /etc/profile.d/hadoop.sh

1
2
3
4
5
6
export HADOOP_PREFIX=/bdapps/hadoop
export PATH=$PATH:${HADOOP_PREFIX}/bin:${HADOOP_PREFIX}/sbin
export HADOOP_YARN_HOME=${HADOOP_PREFIX}
export HADOOP_HDFS_HOME=${HADOOP_PREFIX}
export HADOOP_MAPRED_HOME=${HADOOP_PREFIX}
export HADOOP_common_HOME=${HADOOP_PREFIX}

[root@centos7 ~]# . /etc/profile.d/hadoop.sh

创建运行hadoop相关程序的用户和组

[root@centos7 ~]# groupadd hadoop
[root@centos7 ~]# useradd -g hadoop hadoop

创建相关的数据文件目录

[root@centos7 ~]# mkdir -pv /data/hadoop/hdfs/{nn,snn,dn}
[root@centos7 ~]# chown -R hadoop.hadoop /data/hadoop/hdfs/
[root@centos7 ~]# mkdir /bdapps/hadoop/logs
[root@centos7 ~]# chown -R hadoop.hadoop /bdapps/hadoop/logs

修改Hadoop的配置文件。所有的配置文件都在下面的路径内

[root@centos7 ~]# cd /bdapps/hadoop/etc/hadoop/

core-site.xml:核心配置

1
2
3
4
5
6
7
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:8020</value>
<final>true</final>
</property>
</configuration>

hdfs-site.xml:HDFS配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///data/hadoop/hdfs/nn</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///data/hadoop/hdfs/dn</value>
</property>
<property>
<name>fs.checkponit.dir</name>
<value>file:///data/hadoop/hdfs/snn</value>
</property>
<property>
<name>fs.checkpoint.edits.dir</name>
<value>file:///data/hadoop/hdfs/snn</value>
</property>
</configuration>

mapred-site.xml:Mapreduce配置

[root@centos7 hadoop]# cp mapred-site.xml.template mapred-site.xml

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

yarn-site.xml:YARN配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<configuration>
<property>
<name>yarn.resourcemanager.address</name>
<value>localhost:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>localhost:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>localhost:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>localhost:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>0.0.0.0:8088</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.mapreduce_shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.class</name>
<value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>
</property>
</configuration>

全部配置完成之后,开始格式化HDFS

[root@centos7 ~]# su - hadoop
[hadoop@centos7 ~]$ hdfs namenode -format

如果在倒数几行中出现了以下信息,表明格式化成功

1
Storage directory /bdapps/hadoop/hdfs/nn has been successfully formatted.

启动名称节点

[hadoop@centos7 ~]$ hadoop-daemon.sh start namenode

启动从节点

[hadoop@centos7 ~]$ hadoop-daemon.sh start secondarynamenode

启动数据节点

[hadoop@centos7 ~]$ hadoop-daemon.sh start datanode

启动资源管理

[hadoop@centos7 ~]$ yarn-daemon.sh start resourcemanager

启动节点管理

[hadoop@centos7 ~]$ yarn-daemon.sh start resourcemanager

利用jps可查看JAVA程序是否启动成功

1
2
3
4
5
6
7
[hadoop@centos7 ~]$ jps
16117 Jps
13265 NodeManager
12332 SecondaryNameNode
12395 DataNode
13468 ResourceManager
12217 NameNode

启动成功之后即可访问HDFS与YARN的WEB界面。

HDFS的WEB界面:http://172.16.2.1:50070/

Hadoop-hdfs

YARN的WEB界面:http://172.16.2.1:8088/

Hadoop-yarn


这样,简单的Hadoop2的伪分布式模型就搭建好了,更加深入的知识将在以后的文章中写出。
分享到 评论