hadoop集群搭建步骤大致如下:
1.上传安装包,解压
2.修改配置文件
3.scp同步安装包
4.hadoop环境变量配置
5.启动集群
6.集群web-ui
一、上传安装包,解压(master节点进行)
hadoop版本这里用的是3.3,可根据自己的版本更换。
cd /export/software/
rz 上传
解压操作
tar -zxvf hadoop-3.3.0-Centos7-64-with-snappy.tar.gz -C /export/server/
添加软连接:
cd /export/server/
ln -s hadoop-3.3.0/ hadoop
二、修改配置文件
2.1 hadoop-env.sh
cd /export/server/hadoop/etc/hadoop/
vim hadoop-env.sh
添加: 在54行
#添加自己的java路径
export JAVA_HOME=/export/server/jdk/
#文件最后添加: 在第 439行下
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
2.2 core-site.xml
cd /export/server/hadoop/etc/hadoop/
vim core-site.xml
在文件的configuration的标签中添加以下内容:
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/export/data/hadoop</value>
</property>
<!-- 设置HDFS web UI用户身份 -->
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>
<!-- 整合hive -->
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
2.3 hdfs-site.xml
cd /export/server/hadoop/etc/hadoop/
vim hdfs-site.xml
在文件的configuration的标签中添加以下内容:
<!-- 指定secondarynamenode运行位置 -->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>slave1:50090</value>
</property>
2.4 mapred-site.xml
cd /export/server/hadoop/etc/hadoop/
vim mapred-site.xml
在文件的configuration的标签中添加以下内容:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>yarn.app.mapreduce.am.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
<property>
<name>mapreduce.map.env</name>
<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
2.5 yarn-site.xml
cd /export/server/hadoop/etc/hadoop/
vim yarn-site.xml
在文件的configuration的标签中添加以下内容:
<!-- 指定YARN的主角色(ResourceManager)的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<!-- NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序默认值:"" -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 是否将对容器实施物理内存限制 -->
<property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property>
<!-- 是否将对容器实施虚拟内存限制。 -->
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
<!-- 开启日志聚集 -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<!-- 设置yarn历史服务器地址 -->
<property>
<name>yarn.log.server.url</name>
<value>http://master:19888/jobhistory/logs</value>
</property>
<!-- 保存的时间7天 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
2.6 workers
vim workers
清空内容后, 添加以下内容:
master
slave1
slave2
三、scp同步安装包
cd /export/server
scp -r hadoop-3.3.0/ node2:$PWD
scp -r hadoop-3.3.0/ node3:$PWD
分发后, 需要在slave1和slave2上分别创建软连接:
cd /export/server/
ln -s hadoop-3.3.0/ hadoop
四、配置环境变量
3台机器都需要配置环境变量文件
vim /etc/profile
#HADOOP_HOME
export HADOOP_HOME=/export/server/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
使配置文件生效
source /etc/profile
四、启动集群
要启动Hadoop集群,需要启动HDFS和YARN两个集群。
注意:首次启动HDFS时,必须对其进行格式化操作。本质上是一些清理和准备工作,因为此时的HDFS在物理上还是不存在的。
hadoop namenode -format
启动和关闭集群命令:
启动: start-all.sh
关闭: stop-all.sh
验证:(查看节点是否启动完成。)
五、集群web-ui
一旦Hadoop集群启动并运行,可以通过web-ui进行集群查看,如下所述:
NameNode http://nn_host:port/ 默认9870.
ResourceManager http://rm_host:port/ 默认 8088.
至此,hadoop集群搭建完成。