Hadoop 集群搭建(三):Hadoop

Hadoop:我好了你们再上


664px-Hadoop_logo.svg

Hadoop 安装配置


Ps:除非特别指出仅在Master,则在所有节点配置

安装Hadoop

  • cd /mnt/hgfs/Hadoop
  • cp hadoop-2.8.5.tar.gz /usr/local/src/
  • cd /usr/local/src
  • tar zxvf hadoop-2.8.5.tar.gz
  • rm -rf hadoop-2.8.5.tar.gz

配置Hadoop环境变量:

  • vim ~/.bashrc
1
2
3
4
5
# 添加如下信息
# SET HADOOP PATH
export HADOOP_HOME=/usr/local/src/hadoop-2.8.5
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
  • source ~/.bashrc

Hadoop配置文件

  • cd hadoop-2.8.5

创建临时目录和文件目录:

  • mkdir -p /usr/local/src/hadoop-2.8.5/dfs/name
  • mkdir -p /usr/local/src/hadoop-2.8.5/dfs/data
  • mkdir -p /usr/local/src/hadoop-2.8.5/tmp/dfs
  • cd etc/hadoop

仅在Client配置(若无可跳过此步骤):

  • vim core-site.xml
1
2
3
4
5
6
7
8
9
# 添加如下信息

<configuration>
<property>
<!-- 指定Hadoop所使用的文件系统Schema -->
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
  • mv mapred-site.xml.template mapred-site.xml
  • vim mapred-site.xml
1
2
3
4
5
6
7
8
9
# 添加如下信息

<configuration>
<property>
<!-- 指定MapReduce程序运行在Yarn上 -->
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
  • vim yarn-site.xml
1
2
3
4
5
6
7
8
9
# 添加如下信息

<configuration>
<property>
<!-- 指定ResourceManager地址 -->
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
</configuration>

修改Hadoop配置文件:

  • vim hadoop-env.sh
1
2
# 添加如下信息
export JAVA_HOME=/usr/local/src/jdk1.8.0_212
  • vim yarn-env.sh
1
2
# 添加如下信息
export JAVA_HOME=/usr/local/src/jdk1.8.0_212
  • vim slaves
1
2
3
# 添加如下信息
slave1
slave2
  • vim core-site.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 添加如下信息

<configuration>
<property>
<!-- 指定Hadoop所使用的文件系统Schema -->
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<!-- 指定HDFS本地临时存放目录 -->
<name>hadoop.tmp.dir</name>
<value>/usr/local/src/hadoop-2.8.5/tmp</value>
</property>
</configuration>
  • vim hdfs-site.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 添加如下信息

<configuration>
<property>
<!-- 指定SecondaryNamenode端口地址 -->
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value>
</property>
<property>
<!-- 指定HDFS本地Namenode存放目录 -->
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/src/hadoop-2.8.5/dfs.name</value>
</property>
<property>
<!-- 指定HDFS本地Datanode存放目录 -->
<name>dfs.datanode.name.dir</name>
<value>file:/usr/local/src/hadoop-2.8.5/dfs.data</value>
</property>
<property>
<!-- HDFS副本数量(小于等于从节点的数量) -->
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
  • vim mapred-site.xml
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
35
36
37
38
39
40
41
42
43
44
45
46
# 添加如下信息

<configuration>
<property>
<!-- 指定MapReduce程序运行在Yarn上 -->
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- 配置JHS -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
<property>
<name>yarn.app.mapreduce.am.staging-dir</name>
<value>/usr/local/src/hadoop-2.8.5/tmp/hadoop-yarn/staging</value>
</property>
<property>
<name>mapreduce.jobhistory.intermediate-done-dir</name>
<value>${yarn.app.mapreduce.am.staging-dir}/history/done_intermediate</value>
</property>
<property>
<name>mapreduce.jobhistory.done-dir</name>
<value>${yarn.app.mapreduce.am.staging-dir}/history/done</value>
</property>
<property>
<name>mapreduce.jobhistory.cleaner.enable</name>
<value>true</value>
</property>
<property>
<name>mapreduce.jobhistory.cleaner.interval-ms</name>
<value>86400000</value>
</property>
<property>
<name>mapreduce.jobhistory.max-age-ms</name>
<value>604800000</value>
</property>
<property>
<name>mapreduce.jobhistory.move.interval-ms</name>
<value>180000</value>
</property>
</configuration>
  • vim yarn-site.xml
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
35
# 添加如下信息

<configuration>
<property>
<!-- 指定reducer获取数据的方式-->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<!-- 指定reducer获取数据所需的类-->
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<!-- 指定ResourceManager地址 -->
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8035</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
</configuration>

启动集群

仅在Master

初始化NameNode:

  • hadoop namenode -format

启动Hadoop集群:

  • start-dfs.sh
  • start-yarn.sh

WEB监控页面:



Alessa0 wechat
(> <)  中国儿童少年基金会  &  Alessa0.cn  谢谢您的帮助!
--------- 本文结束 感谢您的阅读 ---------

本文标题:Hadoop 集群搭建(三):Hadoop

文章作者:Alessa0

发布时间:2019年04月24日 - 17:04

最后更新:2019年08月05日 - 15:08

原始链接:https://alessa0.cn/posts/6617c8b9/

版权声明: CC BY-NC-ND 4.0 转载请保留原文链接及作者。

0%