Hadoop高可用集群的安装
- 实验目的要求
- 实验环境
- 软件版本
- 集群规划
- 实验内容
- 1、 Hadoop基本安装配置
- 2、Hadoop高可用完全分布模式配置
- 3、同步安装和配置
- 4、Hadoop高可用完全分布模式格式化和启动
- 4.1在所有同步通信节点的主机执行,启动同步通信服务,然后使用命令“jps”查看Java进程信息,若有名为“JournalNode”的进程,则表示同步通信节点启动成功。
- 4.2在主节点使用此命令,对HDFS进行格式化,若格式化过程中没有报错则表示格式化成功。
- 4.3格式化完成后将“hadoop”目录下的“name”目录发送给集群中所有备用主节点的主机,发送目标用户为集群专用用户admin,即当前与登录用户同名的用户,发送目标路径为“/home/admin/hadoop”,即集群专用用户admin家目录下的Hadoop相关文件的目录。
- 4.4在集群中所有主机上查看该节点Zookeeper服务当前的状态,若集群中只有一个“leader”节点,其余均为“follower”节点,则集群的工作状态正常。如果Zookeeper未启动,则在集群中所有主机上使用命令“./zkServer.sh start”启动Zookeeper服务的脚本。
- 4.5在主节点使用命令,对Hadoop集群在Zookeeper中的主节点切换控制信息进行格式化,若格式化过程中没有报错则表示格式化成功。格式化之前确保集群中各主机Zooleeper开启。
- 4.6在所有同步通信节点的主机,使用此命令,关闭同步通信服务。
- 4.7在主节点使用命令“stsrt-all.sh”,启动Hadoop集群。在所有备用主节点的主机,使用命令“yarn-daemon.sh start resourcemanager”,启动YARN主节点服务
- 4.8查看Java进程信息
- 4.8.1在主节点使用命令“jps”查看Java进程信息,若有名为“NameNode”、“ResourceManager”、“DFSZKFailoverController”的三个进程,则表示Hadoop集群的主节点启动成功。可以使用命令hadoop dfsadmin -report查看HDFS状态。
- 4.8.2使用命令“ssh 目标主机名或IP地址”远程登录到所有备用主节点主机,使用命令“jps”查看Java进程信息,若有名为“NameNode”、“ResourceManager”、“DFSZKFailoverController”的三个进程,则表示Hadoop集群的备用主节点启动成功。
- 4.8.3使用命令“ssh 目标主机名或IP地址”远程登录到所有备用主节点主机,使用命令“jps”查看Java进程信息,若有名为“NameNode”、“ResourceManager”、“DFSZKFailoverController”的三个进程,则表示Hadoop集群的数据节点启动成功。
- 5、Hadoop高可用完全分布模式验证
实验目的要求
掌握完全分布模式的整合平台中Hadoop的高可用完全分布模式的安装
1、完成Hadoop的高可用完全分布模式的安装
2、Hadoop的相关服务进程能够正常启动
3、HDFS能够正常使用
4、MapReduce示例程序能够正常运行
实验环境
1、五台独立PC机或虚拟机
2、主机之间有有效的网络连接
3、每台主机内存2G以上,磁盘剩余空间500M以上
4、所有主机已安装CentOS 7.4操作系统
5、所有主机已完成网络属性配置
6、所有主机已安装JDK
7、已完成Zookeeper集群的安装和部署
软件版本
选用Hadoop的2.7.3版本,软件包名为hadoop-2.7.3.tar.gz
集群规划
Hadoop的高可用完全分布模式中有HDFS的主节点和数据节点、MapReduce的主节点和任务节点、数据同步通信节点、主节点切换控制节点总共6类服务节点,其中HDFS的主节点、MapReduce的任务节点共用相同主机Cluster-03、Cluster-04、Cluster-05,数据同步通信节点可以使用集群中的任意主机,但因为其存放的是元数据备份,所以一般不与主节点使用相同主机。
高可用完全分布模式中需要满足主节点有备用的基本要求,所以需要两台或以上的主机作为主节点,而完全分布模式中需要满足数据有备份和数据处理能够分布并行的基本要求,所以需要两台或以上的主机作为HDFS的数据节点和MapReduce的任务节点,同时数据同步通信节点工作原理通Zookeeper类似,需要三台以上的奇数台主机,具体规划如下:
实验内容
1、 Hadoop基本安装配置
*该项所有操作步骤使用专门用于集群的用户admin进行
*此项只在一台主机操作,然后在下一步骤进行同步安装于配置。
1.1上传Hadoop软件包“hadoop-2.7.3.tar.gz”到用户家目录的“setups”目录下。然后进行解压和环境变量设置。
1.2创建用于存放Hadoop相关文件的目录并且进入该目录将软件包解压
1.3配置Hadoop的相关环境变量
1.4使新配置的环境变量立即生效,查看新添加和修改的环境变量是否设置成功,以及环境变量的值是否正确
2、Hadoop高可用完全分布模式配置
*该项的所有操作步骤使用专门用于集群的用户admin进行
2.1进入Hadoop相关文件的目录,分别创建Hadoop的临时文件目录“tmp”、HDFS的元数据文件目录“name”、HDFS的数据文件目录“data”、Journal的逻辑状态数据目录“journal”。
2.2进入Hadoop的配置文件所在目录,对配置文件进行修改。
2.3对配置文件进行修改。
$vi core-site.xml
找到标签“”所在的位置,在其添加如下内容:
2.4对配置文件进行修改。
$vi hdfs-site.xml
找到标签“”所在的位置,在其添加如下内容:
2.5由模板文件拷贝生成配置文件“mapred-site.xml”,并对配置文件进行修改。
$vi mapred-site.xml
找到标签“”所在的位置,在其添加如下内容:
2.6修改配置文件。
$vi yarn-env.sh
找到配置项“JAVA_HOME”所在行,将其改为以下内容:(注意取消注释#,顶格)
2.7修改配置文件。
$vi yarn-site.xml
找到标签“”所在的位置,在其添加如下内容:
2.8修改配置文件。
$vi slaves
删除文件中原有的所有内容,然后添加集群中所有数据节点的主机名,每行一个主机的主机名,配置格式如下:
注:如果你要把主节点和主节点备用节点同时作为数据节点使用,也是可以的,这里加上01和02即可。后面配置要一致。
3、同步安装和配置
*该项的所有操作步骤使用专门用于集群的用户admin进行
3.1将“hadoop”目录和“.bash_profile”文件发给集群中所有主机,发送目标用户为集群专用用户admin,发送目标路径为“/home/admin”,即集群专用用户admin的家目录。然后每台执行source ~/.bash_profile使环境变量生效。
3.2在每台主机或虚拟机上,使用命令“echo $ZOOKEEPER_HOME”、“echo $PATH”、“hadoop version”查看新添加和修改的环境变量是否设置成功,以及环境变量的值是否正确,验证Hadoop的安装配置是否成功。
$echo $ZOOKEEPER_HOME
$echo $PATH
$hadoop version
4、Hadoop高可用完全分布模式格式化和启动
*注意本节格式化内容不可多次执行
*注意格式化步骤
*该项的所有操作步骤使用专门用于集群的用户admin进行
4.1在所有同步通信节点的主机执行,启动同步通信服务,然后使用命令“jps”查看Java进程信息,若有名为“JournalNode”的进程,则表示同步通信节点启动成功。
$hadoop-daemon.sh start journalnode
注:本操作只在第一次安装时执行。安装完成后,以及关机重启服务器后不需要再次执行
4.2在主节点使用此命令,对HDFS进行格式化,若格式化过程中没有报错则表示格式化成功。
注:本次操作只在第一次安装时执行。安装完成后,以及关机重启服务器后不需要再次执行。千万不要多次格式化。
$hadoop namenode -format
4.3格式化完成后将“hadoop”目录下的“name”目录发送给集群中所有备用主节点的主机,发送目标用户为集群专用用户admin,即当前与登录用户同名的用户,发送目标路径为“/home/admin/hadoop”,即集群专用用户admin家目录下的Hadoop相关文件的目录。
4.4在集群中所有主机上查看该节点Zookeeper服务当前的状态,若集群中只有一个“leader”节点,其余均为“follower”节点,则集群的工作状态正常。如果Zookeeper未启动,则在集群中所有主机上使用命令“./zkServer.sh start”启动Zookeeper服务的脚本。
4.5在主节点使用命令,对Hadoop集群在Zookeeper中的主节点切换控制信息进行格式化,若格式化过程中没有报错则表示格式化成功。格式化之前确保集群中各主机Zooleeper开启。
注:本次操作只在第一次安装时执行。安装完成后,以及关机重启服务器后不需要再次执行。不要重复格式化。
4.6在所有同步通信节点的主机,使用此命令,关闭同步通信服务。
注:本次操作只在第一次安装时执行。安装完成后,以及关机重启服务器后不需要再次执行。
4.7在主节点使用命令“stsrt-all.sh”,启动Hadoop集群。在所有备用主节点的主机,使用命令“yarn-daemon.sh start resourcemanager”,启动YARN主节点服务
注:启动命令,每次重启后,在zookeeper启动成功的前提下,只需要执行此两步即可。
4.8查看Java进程信息
4.8.1在主节点使用命令“jps”查看Java进程信息,若有名为“NameNode”、“ResourceManager”、“DFSZKFailoverController”的三个进程,则表示Hadoop集群的主节点启动成功。可以使用命令hadoop dfsadmin -report查看HDFS状态。
4.8.2使用命令“ssh 目标主机名或IP地址”远程登录到所有备用主节点主机,使用命令“jps”查看Java进程信息,若有名为“NameNode”、“ResourceManager”、“DFSZKFailoverController”的三个进程,则表示Hadoop集群的备用主节点启动成功。
4.8.3使用命令“ssh 目标主机名或IP地址”远程登录到所有备用主节点主机,使用命令“jps”查看Java进程信息,若有名为“NameNode”、“ResourceManager”、“DFSZKFailoverController”的三个进程,则表示Hadoop集群的数据节点启动成功。
5、Hadoop高可用完全分布模式验证
*该项的所有操作步骤使用专门用于集群的用户admin进行
5.1在Hadoop中创建当前登录用户自己的目录并且查看HDFS的所有文件和目录的结构。
5.2进入Hadoop的示例程序hadoop-mapreduce-examples-2.7.3.jar所在目录
$cd ~/hadoop/hadoop-2.7.3/share/hadoop/hadoop/mapreduce
5.3运行使用蒙地卡罗法计算PI的示例程序