目录
一、规划Hadoop高可用集群
1、创建目录
2、安装Hadoop
3、修改系统环境变量
4、验证系统环境变量是否修改成功
二、修改配置文件
1、配置Hadoop运行时环境
2、配置Hadoop
3、配置HDFS
4、配置MapReduce
5、配置YRAN
6、配置Hadoop从节点所运行的虚拟机
7、 分发Hadoop安装目录
8、分发系统环境变量文件
三、启动Hadoop高可用集群
1、 启动JournalNode
2、 格式化HDFS文件系统
3、 同步NameNode和DataNode
4、 格式化ZKFC
5、 启动HDFS
6、 启动YARN
7、 查看NameNode状态信息
8、 查看ResourceManager状态信息
一、规划Hadoop高可用集群
1、创建目录
分别在虚拟机Hadoop1、Hadoop2和Hadoop3的/export/servers目录中创建目录hadoop-HA,用于存放部署Hadoop高可用集群的Hadoop安装目录。
cd /export/servers
mkdir hadoop-HA
Hadoop1:
Hadoop2:
Hadoop3:
2、安装Hadoop
以解压方式安装Hadoop,将虚拟机Hadoop1中/export/software目录存放的Hadoop安装包,安装到/export/servers/hadoop-HA目录。
cd /export/software
tar -zxvf hadoop-2.7.6.tar.gz -C /export/servers/hadoop-HA/
cd /export/servers/hadoop-HA/
ll查看是否安装成功
3、修改系统环境变量
将HADOOP_HOME变量的值修改为Hadoop高可用集群的Hadoop安装目录。
进入环境变量文件profile
vi /etc/profile
修改export HADOOP_HOME=/export/servers/hadoop-HA/hadoop-2.7.6
命令初始化系统环境变量使修改的系统环境变量生效
source /etc/profile
4、验证系统环境变量是否修改成功
hadoop version查看Hadoop信息
二、修改配置文件
1、配置Hadoop运行时环境
进入虚拟机Hadoop1的hadoop目录,然后打开配置文件hadoop-env.sh进行编辑。
cd /export/servers/hadoop-HA/hadoop-3.1.3/etc/hadoop/
vi hadoop-env.sh
在hadoop-env.sh文件中添加下面内容:
2、配置Hadoop
打开配置文件core-site.xml进行编辑,添加下面内容:
3、配置HDFS
打开配置文件hdfs-site.xml进行编辑,添加下面内容:
4、配置MapReduce
打开配置文件mapred-site.xml进行编辑,添加下面内容:
5、配置YRAN
打开配置文件yarn-site.xml进行编辑,添加下面内容:
6、配置Hadoop从节点所运行的虚拟机
打开配置文件workers进行编辑,添加下面内容:
7、 分发Hadoop安装目录
使用scp命令将虚拟机Hadoop1的/export/servers/hadoop-HA/hadoop-3.1.3目录分发至虚拟机Hadoop2和Hadoop3的/export/servers/hadoop-HA目录。
分发给Hadoop2:
scp -r /export/servers/hadoop-HA/hadoop-2.7.6 root@hadoop2:/export/servers/hadoop-HA
分发给Hadoop3:
scp -r /export/servers/hadoop-HA/hadoop-2.7.6 root@hadoop3:/export/servers/hadoop-HA
8、分发系统环境变量文件
使用scp命令将虚拟机Hadoop1的系统环境变量文件profile分发至虚拟机Hadoop2和Hadoop3的/etc目录。
scp /etc/profile root@hadoop2:/etc
scp /etc/profile root@hadoop3:/etc
三、启动Hadoop高可用集群
Hadoop1,Hadoop2,Hadoop3启动ZooKeeper服务
Hadoop1
Hadoop2
Hadoop3
1、 启动JournalNode
分别在虚拟机Hadoop1、Hadoop2和Hadoop3启动JournalNode。
命令:hadoop-daemon.sh start journalnode
Hadoop1
Hadoop2
Hadoop3
2、 格式化HDFS文件系统
启动NameNode进程:hdfs --daemon start namenode
启动DataNode进程:hdfs --daemon start datanode
(我用不了—daemon命令,只能用下面的方法代替了)
3、 同步NameNode和DataNode
将虚拟机Hadoop1存储FSImage文件的目录分发至虚拟机Hadoop2存储FSImage文件的目录。
同步NameNode:
scp -r /export/data/hadoop/namenode/ root@hadoop2:/export/data/hadoop/
同步DataNode:
scp -r /export/data/hadoop/datanode/ root@hadoop2:/export/data/hadoop/
4、 格式化ZKFC
对Hadoop1、Hadoop2、Hadoop3都进行zkfc格式化操作。
先开启zookeeper服务:zkServer.sh start
格式化:hdfs zkfc -formatZK
Hadoop1
Hadoop2
5、 启动HDFS
start-dfs.sh
6、 启动YARN
start-yarn.sh
7、 查看NameNode状态信息
在本地计算机中浏览器的地址栏输入“hadoop1:9870”和“hadoop2:9870”,查看HDFS中两个NameNode的状态信息。
8、 查看ResourceManager状态信息
在本地计算机中浏览器的地址栏输入“hadoop1:8188/cluster/cluster”和
“hadoop2:8188/cluster/cluster”,查看YARN中两个ResourceManager的状态信息。