一、安装JDK
由于 Hadoop 的运行依赖于 JDK,所以这里以 JDK 1.8 为例
1、创建目录
#创建存放数据的目录
mkdir -p /export/data/
#创建存放安装程序的目录
mkdir -p /export/servers
#创建存放安装包的目录
mkdir -p /export/software/
#三台虚拟机都要创建 不然后面分发不了安装目录
2、上传JDK,这里以Xshell和Xftp为例
切换到存放安装包的目录,然后点击xftp——>上传jdk安装包
cd /export/software/
3、查看jdk是否上传成功
4、安装JDK
#将JDK安装到 /export/servers/ 目录里
tar -zxvf jdk-8u351-linux-x64.tar.gz -C /export/servers/
4.1 修改jdk文件名
mv /export/servers/jdk1.8.0_351 /export/servers/jdk
5、配置JDK系统环境变量
vi /etc/profile
#配置JDK系统环境变量
export JAVA_HOME= /export/servers/jdk
export PATH=$PATH:$JAVA_HOME/bin
#存盘退出
:wq
#初始化环境变量
source /etc/profile
6、验证JDK是否安装成功
这边是安装成功了的
7、分发JDK安装目录
#将jdk安装目录分发至虚拟机hadoop2中存放安装程序的目录
scp -r /export/servers/jdk root@hadoop2:/export/servers/
#将jdk安装目录分发至虚拟机hadoop3中存放安装程序的目录
scp -r /export/servers/jdk root@hadoop3:/export/servers/
8、分发系统环境变量
#将系统环境变量文件分发至虚拟机Hadoop02的/etc目录
scp /etc/profile root@hadoop2:/etc
#将系统环境变量文件分发至虚拟机Hadoop03的/etc目录
scp /etc/profile root@hadoop3:/etc
执行命令初始化系统环境变量
source /etc/profile
二、安装Hadoop和部署Hadoop
1、上传安装包
和上传jdk一样的
2、安装Hadoop
tar -zxvf /export/software/hadoop-2.7.7.tar.gz -C /export/servers
2.1 把hadoop 2.7.7 修改成hadoop
mv /export/servers/hadoop-2.7.7 /export/servers/hadoop
3、配置Hadoop系统环境变量
vi /etc/profile
#配置 Hadoop环境变量
export HADOOP_HOME= /export/servers/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
#初始化环境变量
source /etc/profile
4、验证是否成功
hadoop version
5 修改hadoop配置文件
#配置hadoop运行时环境先切换目录
cd /export/servers/hadoop/etc/hadoop/
执行 vi hadoop-env.sh命令,在hadoop-env.sh文件底部添加如果内容:
######################################################
注意 如果没能成功打开目录那你是以上的目录名写错了可以直接点开目录查看
export JAVA_HOME=/export/servers/jdk
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
#配置Hadoop
#执行 vi core-site.xml命令,在core-site.xml文件的<configuration>标签中添加如下内容:
################################################
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/export/data/hadoop</value>
</property>
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
#配置HDFS
#执行 vi hdfs-site.xml命令,在hdfs-site.xml文件的<configuration>标签中添加如下内容:###############################################
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:9000</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/export/data/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/export/data/hadoop/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop2:9868</value>
</property>
#配置MapReduce
#执行 vi mapred-site.xml命令,在mapred-site.xml文件的<configuration>标签中添加如下内容:
###############################################
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop1:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.Webapp.address</name> <value>hadoop1:19888</value>
</property>
#配置YARN
#执行 vi yarn-site.xml命令,在yarn-site.xml文件的<configuration>标签中添加如下内容:
###############################################
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop1</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoop1:8086</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoop1:8087</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoop1:8088</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoop1:8089</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.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
#配置Hadoop从节点运行的服务器
#执行 vi workers命令,在workers文件的默认内容修改为如下内容:
###############################################
hadoop2
hadoop3
6、分发Hadoop安装目录
#将Hadoop安装目录分发至虚拟机hadoop2中存放安装程序的目录
scp -r /export/servers/hadoop root@hadoop2:/export/servers/
#将Hadoop安装目录分发至虚拟机hadoop3中存放安装程序的目录
scp -r /export/servers/hadoop root@hadoop3:/export/servers/
7、分发系统环境变量
#将系统环境变量文件分发至虚拟机Hadoop02的/etc目录
scp /etc/profile root@hadoop2:/etc
#将系统环境变量文件分发至虚拟机Hadoop02的/etc目录
scp /etc/profile root@hadoop3:/etc
8、 对HDFS文件系统格式化
#执行如下命令,对HDFS文件系统格式化,若格式化完成后出现“successfully formatted.”
提示信息则格式化成功,
#注意:格式化HDFS文件系统的操作只在初次启动Hadoop集群之前进行,如果再次启动Hadoop集群,则不需要重新格式化
########################################################
==> hdfs namenode -format
9、启动Hadoop
在虚拟机Hadoop01中分别执行start-dfs.sh和start-yarn.sh命令,在虚拟机Hadoop01、Hadoop02、Hadoop03上启动HDFS和YARN的相关服务,如果要关闭Hadoop,则可以在虚拟机Hadoop01上分别执行stop-dfs.sh 和 stop-yarn.sh 命令
10、使用jps查看Hasoop运行状态
jps
三台都显示这样就已经部署成功啦
三、通过 Web UI 查看Hadoop的运行状态
一、关闭防火墙
#关闭防火墙
systemctl stop firewalld
#禁止防火墙开启
systemctl disable firewalld
二、为个人计算机添加hosts文件中添加IP映射
cd /etc
vi /etc/hosts
添加IP加主机名
192.168.157.131 hadoop1
192.168.157.132 hadoop2
192.168.157.133 hadoop3
三、通过Web UI 查看运行状态
分别在本地计算机的浏览器中输入http://<主机名>或者<主机ip>:<端口号>和http://<主机名>或者<主机ip>:<端口号>查看HDFS和YARN的运行状态