当前位置 博文首页 > 吃顿好的:Hadoop 2.7.2版本完全分布式搭建
主机 | IP | 角色 |
---|---|---|
hadoop01 | 10.1.24.1 | namenode,datanode,nodeManager |
hadoop02 | 10.1.24.2 | namenode2,datanode,nodeManager |
hadoop03 | 10.1.24.3 | resourceManager,datanode,nodeManager,历史服务器 |
这里安装的是1.8.0_211
版本。
这里三台都要配置,自己到自己的免密也要配置。
mkdir /home/hadoop
cd /home/hadoop
wget http://archive.apache.org/dist/hadoop/common/hadoop-2.7.2/hadoop-2.7.2.tar.gz
tar -zxvf hadoop-2.7.2.tar.gz
cd hadoop-2.7.2
vim /etc/profile
# 在最后面增加如下两行代码
export HADOOP_HOME=/home/hadoop/hadoop-2.7.2
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
# 保存退出
source /etc/profile
每个节点都需要修改
vim etc/hadopp/hadoop-env.sh
然后修改export JAVA_HOME=${JAVA_HOME}
为export JAVA_HOME=/home/java/jdk1.8.0_211
vim etc/hadopp/yarn-env.sh
然后将# export JAVA_HOME=/home/y/libexec/jdk1.6.0
为export JAVA_HOME=/home/java/jdk1.8.0_211
vim etc/hadoop/mapred-env.sh
然后将# export JAVA_HOME=/home/y/libexec/jdk1.6.0
为export JAVA_HOME=/home/java/jdk1.8.0_211
<configuration>
<!-- 指定HDFS中NameNode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop01:9000</value>
</property>
<!-- 指定Hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.7.2/data/tmp</value>
</property>
</configuration>
<configuration>
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!-- 指定Hadoop second namenode节点主机配置 -->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop02:50090</value>
</property>
</configuration>
<configuration>
<!-- Site specific YARN configuration properties -->
<!-- Reducer 获取数据的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 指定YRAN的ResourceManager的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop03</value>
</property>
<!-- 日志聚集功能使用 -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>hadoop03</value>
</property>
<!-- 日志保留时间设置7天 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
</configuration>
cp mapred-site.xml.template mapred-site.xml
<configuration>
<!-- 指定MR运行在YARN上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- 历史服务器端地址 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop03:10020</value>
</property>
<!-- 历史服务器web端地址 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop03:19888</value>
</property>
</configuration>
hadoop01
hadoop02
hadoop03
# 启动namenode
hadoop-daemon.sh start namenode
# 启动datanode
hadoop-daemon.sh start datanode
# 启动secondarynamenode
hadoop-daemon.sh start secondarynamenode
# 启动历史服务器
mr-jobhistory-daemon.sh start historyserver
启动hdfs
服务:start-dfs.sh
启动yarn
服务(需要在resourceManager节点启动,这里就是hadoop03节点)
:start-yarn.sh
启动历史服务器(在hadoop03节点):mr-jobhistory-daemon.sh start historyserver