设为首页 加入收藏

TOP

Hadoop HA部署详细操作步骤(四)
2019-04-22 00:40:47 】 浏览:81
Tags:Hadoop 部署 详细 操作 步骤
版权声明:个人学习笔记 https://blog.csdn.net/qq_40402685/article/details/83792101

详细操作步骤

链接:http://note.youdao.com/noteshareid=30a40fe2fabecff36179c0ef5f8935b8

**

文章内容属于原创,若要转载,请标明出处。

**
实验
目的
要求
完成Hadoop的高可用完全分布模式的安装
Hadoop的相关服务进程能够正常启动
HDFS能够正常使用
MapReduce 示例程序能够正常运行




境 五台独立虚拟机
主机之间有有效的网络连接每台主机内存2G以上,磁盘50G
所有主机上已安装CentOS 7操作系统
所有主机已完成网络属性配置所有主机已安装JDK
已完成Zookeeper集群的安装和部署

软件版本:
★Hardoop2.7.3版本,软件包名:Hadoop-2.7.3.tar.gz





集群规划:

Hadoop的高可用完全分布模式中有HDFS的主节点和数据节点、MapReduce的主节点和任务节点、数据同步通信节点、主节点切换控制节点总共6类服务节点, 其中 HDFS的主节点、MapReduce的主节点、主节点切换控制节点共用相同主机cgt-01和cgt-02,HDFS的数据节点、MapReduce的任务节点共用相同主机cgt-03、
cgt-04、cgt-05, 数据同步通信节点可以使用集群中的任意主机, 但因为其存放的是元数据备份,所以一般不与主节点使用相同主机。

高可用完全分布模式中需要满足主节点有备用的基本要求,所以需要两台或以上的主机作为主节点, 而完全分布模式中需要满足数据有备份和数据处理能够分布并行的基本要求,所以需要两台或以上的主机作为HDFS的数据节点和MapReduce的任务节点,同时数据同步通信节点工作原理同Zookeeper类似,需要三台或以上的奇数台主机,具体规划如下。

主机名 IP地址 服务名称
cgt-01 192.168.10.111 Hadoop主节点
Hadoop主节点切换服务
Yarn主节点
cgt-02 192.168.10.112 Hadoop主节点
Hadoop主节点切换服务
Yarn主节点
cgt-03 192.168.10.113 Hadoop数据服务
Hadoop同步通信服务
Yarn节点管理服务
cgt-04 192.168.10.114 Hadoop数据服务
Hadoop同步通信服务
Yarn节点管理服务
cgt-05 192.168.10.115 Hadoop数据服务
Hadoop同步通信服务
Yarn节点管理服务

实验内容与完成情况 一、Hadoop基本安装配置
★此项所有操作步骤使用集群用户admin进行。
★只需在一台主机操作,在下一步骤进行同步安装配置。

注:软件包“Hadoop-2.7.3.tar.gz”已经上传至用户家目录“setups”下。进行解压和环境变量设置。

1、$mkdir ~/hadoop 创建用于存放Hadoop相关文件的目录

2、进入该目录,将软件包解压$tar -xvf ~/setups/hadoop-2.7.3.tar.gz

3、$vi ~/.bash_profile 配置hadoop相关的环境变量

4、$source ~/.bash_profile 使新配置的环境变量立即生效

5、打印环境变量,检查配置的环境变量是否设置成功,是否正确。
$echo $HADOOP_HOME
$echo $PATH

6、验证Hadoop的安装配置是否成功。$hadoop version

二、Hadoop高可用完全分布模式配置
注:所有操作在集群admin用户下进行。
1、进入Hadoop文件目录,创建Hadoop临时文件目录“tmp”,HDFS的元数据文件目录“name”,HDFS的数据文件目录“data”,Journal的逻辑状态数据目录“journal”。
$mkdir tmp name data journal

2、进入Hadoop的配置文件所在目录,对配置文件进行修改
$cd ~/hadoop/hadoop-2.7.3/etc/hadoop
$vi hadoop-env.sh

3、对配置文件core-site.xml修改
$vi core-site.xml(所有配置文件文本见文章末尾)

4、对配置文件hdfs-site.xml修改
$vi hdfs-site.xml(所有配置文件文本见文章末尾)

5、由模板文件拷贝生成配置文件“mapred-site.xml”
$cp mapred-site.xml.template mapred-site.xml

对配置文件mapred-site.xml修改(所有配置文件文本见文章末尾)
6、
$vi mapred-site.xml

7、对配置文件yarn-env.sh修改
$vi yarn-env.sh

8、对配置文件yarn-site.xml修改
$vi yarn-site.xml

9、对配置文件slaves进行修改
$vi slaves

三、同步安装和配置
★此项所有操作步骤使用集群用户admin进行。

1、将“Hadoop”目录和“.bash_profile”文件发给集群中所有主机,发送目标用户为
集群专用用户admin,发送目标路径为“/home/admin”,即集群用户admin的家目录。

2、对集群中每台主机进行如下操作:
$source ~/.bash_profile #使新配置的环境变量生效
$echo $HADOOP_HOME #查看新添加和修改的环境变量是否设置成功,是否正确
$echo $PATH
$hadoop version #验证Hadoop的安装配置是否成功

四、Hadoop高可用完全分布模式格式和启动
★本节格式化内容不可多次执行
★此项所有操作步骤在集群的admin用户下进行
1、在所有同步通信节点的主机(cgt-03;cgt-04;cgt-05)执行,启动同步通信服务,然后
使用命令“jps”查看Java进程信息,若有名为“JournalNode”的进程,则表示通信节点启动成功。
注:本操作只在第一次安装时执行。

2、在主节点(cgt-01)使用$hadoop namenode -format,对HDFS进行格式化,
若未报错则表示成功。
注:本操作只在第一次安装时执行,格式化操作避免二次进行。

3、格式化完成后将“hadoop”目录下的“name”目录发送给集群中备用主节点的主机
(cgt-02),目标用户admin,目标路径“/home/admin/hadoop”

4、在集群中所有主机使用zkServer.shstatusleaderfollower使zkServer.sh status,查看该节点当前的状态,若集群中只有 一个leader节点,其余为“follower”节点,则工作状态正常。若不正常则使用zkServer.sh start启动zookeeper服务。

5、在主节点使用命令“jps”查看Java进程信息,若有名为“NameNode”,
“ResourceManager”,“DFSZKFailoverController”三个进程,则表示Hadoop集群的主节点启动成功。

6、 使用命令“ssh 目标主机名或IP地址”远程登录到所有备用主节点主机,使用命
令“jps” 查看Java进程信息,若有名为“NameNode”、“ResourceManager”、“DFSZKFailoverController”的三个进程,则表示Hadoop集群的备用主节点启动成功。

7、 使用命令“ssh目标主机名或IP地址”远程登录所有数据节点主机,使用命令“jps”
查看Java进程信息,若有“DataNode”、“NodeManager”、“JournalNode”的三个进程,则表示Hadoop集群的数据节点启动成功。

五、Hadoop高可用完全分布模式验证
★该项的所有操作步骤使用专门用于集群的用户admin进行。
1、$hadoop fs -mkdir -p /user/admin 在Hadoop中创建当前登录用户自己的目录
$hadoop fs -ls -R / #查看HDFS中的所有文件和目录的结构

2、进入Hadoop的示例程序包hadoop-mapreduce-examples-2.7.3.jar所在目录
$cd ~/hadoop/hadoop-2.7 3/share/hadoop/mapreduce

3、运行使用蒙地卡罗法计算PI的示例程序
$hadoop jar hadoop-mapreduce-examples 2.7.3.jar pi 2 1000

core-site.xml

fs.defaultFS hdfs://hadoop-ha hadoop.tmp.dir /home/admin/hadoop/tmp ha.zookeeper.quorum cgt-01:2181,cgt-02:2181,cgt-03:2181,cgt-04:2181,cgt-05:2181

hdfs-site.xml

dfs.nameservices hadoop-ha dfs.ha.namenodes.hadoop-ha name-1,name-2 dfs.namenode.rpc-address.hadoop-ha.name-1 cgt-01:9000 dfs.namenode.http-address.hadoop-ha.name-1 cgt-01:50070 dfs.namenode.rpc-address.hadoop-ha.name-2 cgt-02:9000 dfs.namenode.http-address.hadoop-ha.name-2 cgt-02:50070 dfs.namenode.shared.edits.dir qjournal://cgt-03:8485;cgt-04:8485;cgt-05:8485/hadoop-ha dfs.journalnode.edits.dir /home/admin/hadoop/journal dfs.ha.automatic-failover.enabled true dfs.client.failover.proxy.provider.hadoop-ha org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider dfs.ha.fencing.methods sshfence shell(/bin/true) dfs.ha.fencing.ssh.private-key-files /home/admin/.ssh/id_rsa dfs.ha.fencing.ssh.connect-timeout 30000 dfs.namenode.name.dir /home/admin/hadoop/name dfs.datanode.data.dir /home/admin/hadoop/data dfs.replication 3

mapred-site.xml

mapreduce.framework.name yarn

yarn-site.xml

yarn.resourcemanager.ha.enabled true yarn.resourcemanager.cluster-id yarn-ha yarn.resourcemanager.ha.rm-ids resource-1,resource-2 yarn.resourcemanager.hostname.resource-1 cgt-01 yarn.resourcemanager.hostname.resource-2 cgt-02 yarn.resourcemanager.zk-address cgt-01:2181,cgt-02:2181,cgt-03:2181,cgt-04:2181,cgt-05:2181 yarn.nodemanager.aux-services mapreduce_shuffle
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇hadoop关闭不了namenode和datanod.. 下一篇java&hadoop面试总结(实习生)

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目