Hadoop高可用集群安装(云存储)
实验目的要求
- 理解并掌握在完全分布模式的整合平台中Hadoop的高可用完全分布模式的安装与验证
- 完成Hadoop的高可用完全分布模式的安装
- Hadoop的相关服务进程能够正常启动
- HDFS能够正常使用
- MapReduce示例程序能够正常运行
使用仪器
- 五台独立的虚拟机
- 主机之间能够进行有效的网络连接
- 每台主机内存1G,磁盘20G
- 所有主机上已安装CentOS7.4_64操作系统
- 所有主机已完成网络属性配置
- 所有主机已安装JDK
- 已完成Zookeeper集群的安装和部署
实验步骤
第一步:Hadoop基本安装配置
*该项的所有操作步骤需要使用专门用于集群的用户admin进行。
*此项只在只在一台主机操作,然后在下一步骤进行同步安装与配置
解压软件包“Hadoop-2.7.3.tar.gz”并设置环境变量
$mkdir ~/hadoop //用于存放hadoop 相关文件的目录
$cd ~/hadoop //进入该目录
$tar -xzf ~/setups/Hadoop-2.7.3.tar.gz //解压软件包
环境变量设置
$vi ~/.bash_profile //配置hadoop相关的环境变量
在配置文件末尾添加以下内容
#hadoop environment
HADOOP_HOME=/home/admin/hadoop/hadoop-2.7.3
PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export HADOOP_HOME PATH
保存退出
$source ~/.bash_profile #使新配置的环境变量立即生效
$echo $HADOOP_HOME
$echo $PATH #查看环境变量是否设置成功,环境变量的值是否正确
$hadoop version
第二步:Hadoop高可用完全分布模式配置
*该项的所有操作步骤使用专门用于集群的用户admin进行
$cd ~/hadoop #进入hadoop相关文件的目录
$mkdir tmp name data journal
$cd ~/hadoop/hadoop-2.7.3/etc/hadoop #进入hadoop的配置文件所在目录
找到配置项JAVA_HOME所在行,将其改为以下内容
export
JAVA_HOME=/home/admin/java/jdk1.8.0_131
vi core-site.xml
找到标签<configuration>所在位置,在其中添加内容
vi hdfs-site.xml
找到标签<configuration>所在位置,在其中添加内容
cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
找到标签<configuration>所在位置,在其中添加内容
vi yarn-env.sh
找到配置项JAVA_HOME所在行,将其改为一下内容:
export
JAVA_HOME=/home/admin/java/jdk1.8.0_131
vi yarn-site.xml
找到标签<configuration>所在位置,在其中添加内容
vi slaves
删除文件中原有的所有内容,然后添加集群中所有数据节点的主机名,每行一个主机的主机名,配置格式如下:
Cluster-03
Cluster-04
Cluster-05
第三步:同步安装和配置
*该项的所有操作步骤使用专门用于集群的用户admin进行
将hadoop 目录和 .bash_profile文件发给集群中所有的其他主机,发送目标用户为集群专用用户admin,发送目标路径为/home/admin,即集群专用用户admin的家目录。然后每台执行source ~/.bash_profile 使环境变量生效
$scp -r ~/hadoop ~/.bash_profile admin@Cluster-02:/home/admin #每台主机都要发送 Cluster02-05
$source ~/.bash_profile
在每台虚拟机上,使用命令查看新添加和修改的环境变量是否设置成功,以及环境变量的值是否正确
$echo $HADOOP_HOME
$echo $PATH
$hadoop version
第四步:Hadoop高可用完全分布模式格式化和启动(格式化内容不可多次执行,注意格式化步骤)
*该项的所有操作步骤使用专门用于集群的用户admin进行
Hadoop-daemon.sh start journalnode 在所有同步通信节点的主机执行,启动同步通信服务,然后使用命令jps查看Java进程信息,若有名为JournalNode的进程,则表示同步通信节点启动
成功
hadoop namenode -format 在主节点使用此命令,对HDFS进行格式化,若格式化过程中没有报错则表示格式化成功
格式化完成后将hadoop 目录和name目录发给集群中所有的备用主节点的主机,发送目标用户为集群专用用户admin,即当前与登录用户同名的用户,发送目标路径为/home/admin、hadoop,即集群专用用户admin的家目录下的Hadoop相关文件的目录
$scp -r ~/hadoop ~/.bash_profile admin@Cluster-02:/home/admin
zkServer.sh status
zkServer.sh start
Hdfs zkfc -formatZk
Hadoop-daemon.sh stop journalnode
Start-all.sh
yarn-daemon.sh start resourcemanager
在主节点使用命令jps查看Java进程信息,若有名为NameNode ResourceManager DFSZKFailoverController的三个进程,则表示Hadoop集群的主节点启动成功
第五步:Hadoop完全分布模式验证
*该项的所有操作步骤使用专门用于集群
的用户admin进行
Hadoop fs -mkdir -p /user/admin
Hadoop fs -ls -R /
cd ~/hadoop/hadoop-2.7.3/share/hadoop/mapreduce
hadoop jar hadoop-mapreduce-examples-2.7.3.jar pi 2 1000 计算PI的示例程序
分析结论
通过本次实验,我理解并掌握了:在完全分布模式的整合平台中Hadoop的高可用完全分布模式的安装,在实验过程中没有问题,很顺利的做出了实验。
本次实验需要五步:
1、Hadoop基本安装配置
2、Hadoop高可用完全分布模式配置
3、同步安装和配置
4、Hadoop高可用完全分布模式格式化和启动
5、Hadoop高可用完全分布模式验证
通过实验,我有一些总结:因为有5台虚拟机,所以做实验时要仔细认真,看清楚是哪台虚拟机在哪个用户下进行配置(有所对应),要按步骤一步一步进行。在实验配置时,看清楚在哪个节点进行对应的配置。在配置文件里面添加修改环境变量时一定要把代码写正确,不要有缩进和其他的问题。在格式化的时候内容不能多次执行。集群中只有一个leader节点,其余为follower节点,遇到不能解决的问题可以看老师所给的视频,查看有关博客和网页上的内容进行解决。
出现的问题
1、遇到的错误:zookeeper起动不了,最后发现我的需要zoot模式下启动。
2、不可多次执行使配置文件生效的命令:“source ~/.bash_profile”,否则查看$PATH时,会出现如下情况:
这篇博客上传比较仓促,如果读者感觉比较混乱,可以在我的下方链接进行下载我的源文档进行查看,感谢!
链接:https://pan.baidu.com/s/1FCxr4gbL05hpDGJJ9cGAnQ
提取码:1j55
复制这段内容后打开百度网盘手机App,操作更方便哦