Hadoop-2.3.0-cdh5.0.1完全分布式环境搭建(NameNode,ResourceManager HA)
来源:互联网 发布:io是什么域名 编辑:程序博客网 时间:2024/04/27 19:47
问题导读
1.YARN的基础架构是什么?
2.哪一进程防止Yarn早就web攻击?
3.Zookeeper主进程是哪个?
4.如何下载cdh包?
本文搭建Hadoop CDH5.0.1 分布式系统,包括NameNode ,ResourceManger HA,忽略了Web Application Proxy 和Job HistoryServer。
一概述(一)HDFS
1)基础架构
(1)NameNode(Master)
- 命名空间管理:命名空间支持对HDFS中的目录、文件和块做类似文件系统的创建、修改、删除、列表文件和目录等基本操作。
- 块存储管理
(2)DataNode(Slaver)
namenode和client的指令进行存储或者检索block,并且周期性的向namenode节点报告它存了哪些文件的block
2)HA架构
使用Active NameNode,Standby NameNode 两个结点解决单点问题,两个结点通过JounalNode共享状态,通过ZKFC 选举Active ,监控状态,自动备援。
(1)Active NameNode:
接受client的RPC请求并处理,同时写自己的Editlog和共享存储上的Editlog,接收DataNode的Block report, block location updates和heartbeat;
(2)Standby NameNode:
同样会接到来自DataNode的Block report, block location updates和heartbeat,同时会从共享存储的Editlog上读取并执行这些log操作,使得自己的NameNode中的元数据(Namespcae information + Block locations map)都是和Active NameNode中的元数据是同步的。所以说Standby模式的NameNode是一个热备(Hot Standby NameNode),一旦切换成Active模式,马上就可以提供NameNode服务
(3)JounalNode:
用于Active NameNode , Standby NameNode 同步数据,本身由一组JounnalNode结点组成,该组结点基数个,支持Paxos协议,保证高可用,是CDH5唯一支持的共享方式(相对于CDH4 促在NFS共享方式)
(4)ZKFC:
监控NameNode进程,自动备援。
(二)YARN
1)基础架构
(1)ResourceManager(RM)
接收客户端任务请求,接收和监控NodeManager(NM)的资源情况汇报,负责资源的分配与调度,启动和监控ApplicationMaster(AM)。
(2)NodeManager
节点上的资源管理,启动Container运行task计算,上报资源、container情况给RM和任务处理情况给AM。
(3)ApplicationMaster
单个Application(Job)的task管理和调度,向RM进行资源的申请,向NM发出launch Container指令,接收NM的task处理状态信息。NodeManager
(4)Web Application Proxy
用于防止Yarn遭受Web攻击,本身是ResourceManager的一部分,可通过配置独立进程。ResourceManager Web的访问基于守信用户,当Application Master运行于一个非受信用户,其提供给ResourceManager的可能是非受信连接,Web Application Proxy可以阻止这种连接提供给RM。
(5)Job History Server
NodeManager在启动的时候会初始化LogAggregationService服务, 该服务会在把本机执行的container log (在container结束的时候)收集并存放到hdfs指定的目录下. ApplicationMaster会把jobhistory信息写到hdfs的jobhistory临时目录下, 并在结束的时候把jobhisoty移动到最终目录, 这样就同时支持了job的recovery.History会启动web和RPC服务, 用户可以通过网页或RPC方式获取作业的信息
2)HA架构
ResourceManager HA 由一对Active,Standby结点构成,通过RMStateStore存储内部数据和主要应用的数据及标记。目前支持的可替代的RMStateStore实现有:基于内存的MemoryRMStateStore,基于文件系统的FileSystemRMStateStore,及基于zookeeper的ZKRMStateStore。
ResourceManager HA的架构模式同NameNode HA的架构模式基本一致,数据共享由RMStateStore,而ZKFC成为 ResourceManager进程的一个服务,非独立存在。
二 规划
(一)版本
组件名
版本
说明
JRE
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) Client VM (build 24.60-b09, mixed mode)
Hadoop
hadoop-2.3.0-cdh5.0.1.tar.gz
主程序包
Zookeeper
zookeeper-3.4.5-cdh5.0.1.tar.gz
热切,Yarn 存储数据使用的协调服务
(二)主机规划
IP
Host
部署模块
进程
8.8.8.11
Hadoop-NN-01
NameNode
ResourceManager
NameNode
DFSZKFailoverController
ResourceManager
8.8.8.12
Hadoop-NN-02
NameNode
ResourceManager
NameNode
DFSZKFailoverController
ResourceManager
8.8.8.13
Hadoop-DN-01
Zookeeper-01
DataNode
NodeManager
Zookeeper
DataNode
NodeManager
JournalNode
QuorumPeerMain
8.8.8.14
Hadoop-DN-02
Zookeeper-02
DataNode
NodeManager
Zookeeper
DataNode
NodeManager
JournalNode
QuorumPeerMain
8.8.8.15
Hadoop-DN-03
Zookeeper-03
DataNode
NodeManager
Zookeeper
DataNode
NodeManager
JournalNode
QuorumPeerMain
各个进程解释:
- NameNode
- ResourceManager
- DFSZKFC:DFS Zookeeper Failover Controller 激活Standby NameNode
- DataNode
- NodeManager
- JournalNode:NameNode共享editlog结点服务(如果使用NFS共享,则该进程和所有启动相关配置接可省略)。
- QuorumPeerMain:Zookeeper主进程
(三)目录规划
名称
路径
$HADOOP_HOME
/home/zero/hadoop/hadoop-2.3.0-cdh5.0.1
Data
$ HADOOP_HOME/data
Log
$ HADOOP_HOME/logs
三 环境准备
1)关闭防火墙
root 用户:
验证:
2)安装JRE:略
3)安装Zookeeper :参见Zookeeper-3.4.5-cdh5.0.1 单机模式、副本模式安装指导
4)配置SSH互信:
(1)Hadoop-NN-01创建密钥:
(2)分发密钥:
分发密钥这里如出现问题,可以参考:
linux(ubuntu)ssh无密码互通、相互登录高可靠文档
CentOS6.4之图解SSH无验证双向登陆配置
(3)验证:
5)配置/etc/hosts并分发:
6)配置环境变量:vi ~/.bashrc 然后 source ~/.bashrc
四 安装
1)解压
下载地址:
CDH4包汇总
http://archive.cloudera.com/cdh4/
CDH5包汇总
http://archive.cloudera.com/cdh5/
2)修改配置文件
说明:
配置名称
类型
说明
hadoop-env.sh
Bash脚本
Hadoop运行环境变量设置
core-site.xml
xml
配置Hadoop core,如IO
hdfs-site.xml
xml
配置HDFS守护进程:NN、JN、DN
yarn-env.sh
Bash脚本
Yarn运行环境变量设置
yarn-site.xml
xml
Yarn框架配置环境
mapred-site.xml
xml
MR属性设置
capacity-scheduler.xml
xml
Yarn调度属性设置
container-executor.cfg
Cfg
Yarn Container配置
mapred-queues.xml
xml
MR队列设置
hadoop-metrics.properties
Java属性
Hadoop Metrics配置
hadoop-metrics2.properties
Java属性
Hadoop Metrics配置
slaves
Plain Text
DN节点配置
exclude
Plain Text
移除DN节点配置文件
log4j.properties
系统日志设置
configuration.xsl
(1)修改$HADOOP_HOME/etc/hadoop-env.sh:
(2)修改$HADOOP_HOME/etc/hadoop-site.xml
(3)修改$HADOOP_HOME/etc/hdfs-site.xml
(4)修改$HADOOP_HOME/etc/yarn-env.sh
(5)$HADOOP_HOEM/etc/mapred-site.xml
(6)修改$HADOOP_HOME/etc/yarn-site.xml
(7)修改slaves
3)分发程序
4)启动HDFS
(1)启动JournalNode
格式化前需要在JournalNode结点上启动JournalNode:
验证JournalNode:
(2)NameNode 格式化:
结点Hadoop-NN-01:hdfs namenode -format
(3)同步NameNode元数据:
同步Hadoop-NN-01元数据到Hadoop-NN-02
主要是:dfs.namenode.name.dir,dfs.namenode.edits.dir还应该确保共享存储目录下(dfs.namenode.shared.edits.dir ) 包含NameNode 所有的元数据。
(4)初始化ZFCK:
创建ZNode,记录状态信息。
结点Hadoop-NN-01:hdfs zkfc -formatZK
(5)启动
集群启动法:Hadoop-NN-01:
单进程启动法:
<1>NameNode(Hadoop-NN-01,Hadoop-NN-02):
<2>DataNode(Hadoop-DN-01,Hadoop-DN-02,Hadoop-DN-03):
<3>JournalNode(Hadoop-DN-01,Hadoop-DN-02,Hadoop-DN-03):
<4>ZKFC(Hadoop-NN-01,Hadoop-NN-02):
(6)验证
<1>进程
NameNode:
DataNode:
<2>页面:
Active结点:http://8.8.8.10:50070
JSP:
StandBy结点:
JSP:
(7)停止:stop-dfs.sh
5)启动Yarn
(1)启动
<1>集群启动
Hadoop-NN-01启动Yarn,命令所在目录:$HADOOP_HOME/sbin
Hadoop-NN-02备机启动RM:
<2>单进程启动
ResourceManager(Hadoop-NN-01,Hadoop-NN-02):
DataNode(Hadoop-DN-01,Hadoop-DN-02,Hadoop-DN-03):
(2)验证
<1>进程:
JobTracker:Hadoop-NN-01,Hadoop-NN-02
TaskTracker:Hadoop-DN-01,Hadoop-DN-02,Hadoop-DN-03
<2>页面
ResourceManger(Active):8.8.8.11:23188
ResourceManager(Standby):8.8.8.12:23188
(3)停止
Hadoop-NN-01:stop-yarn.sh
Hadoop-NN-02:yarn-daeman.sh stop resourcemanager
转载:Hadoop-2.3.0-cdh5.0.1完全分布式环境搭建(NameNode,ResourceManager HA)
http://www.aboutyun.com/thread-9115-1-1.html
(出处: about云开发)
0 0
- Hadoop-2.3.0-cdh5.0.1完全分布式环境搭建(NameNode,ResourceManager HA)
- Hadoop-2.3.0-cdh5.0.1完全分布式环境搭建(NameNode,ResourceManager HA)
- Hadoop-2.3.0-cdh5.0.1完全分布式环境搭建(NameNode,ResourceManager HA)
- hadoop-2.3.0-cdh5.1.0完全分布式集群配置及HA配置(resourcemanager.ha)
- 【干货】Apache Hadoop 2.8 完全分布式集群搭建超详细过程,实现NameNode HA、ResourceManager HA高可靠性
- hadoop-2.3.0-cdh5.1.0完全分布式集群配置及HA配置(待)
- Hadoop-2.3.0-cdh5.0.1分布式环境搭建
- hadoop集群搭建-Namenode HA和ResourceManager HA
- hadoop-2.3.0-cdh5.1.0完全分布式集群配置HA配置
- hadoop-2.3.0-cdh5.1.0完全分布式搭建(基于centos)
- Hadoop 2.0 中 NameNode/ResourceManager HA 总结
- Hadoop 2.3.0-cdh5.0.0 HA集群搭建(yum 安装)
- Hadoop+Zookeeper+NameNode(HA)+ResourceManager(HA)自动切换 配置
- Hadoop-2.7.3 HA 完全分布式搭建
- Hadoop双namenode配置搭建(HA)
- Hadoop双namenode配置搭建(HA)
- HBase HA完全分布式环境搭建
- hadoop-2.8.0完全分布式环境搭建
- setpriority
- Android studio使用教程
- iOS-Core-Animation之二----寄宿图
- Android4.4 CTS测试Fail项修改总结(一),android4.4cts
- gitHub的那些开源的项目
- Hadoop-2.3.0-cdh5.0.1完全分布式环境搭建(NameNode,ResourceManager HA)
- oracle数据库备份及还原-
- 九度OJ 1082 清华大学2009年机试
- Spring集成Quartz定时任务框架介绍和Cron表达式详解
- OpenCV之最值滤波和非最值抑制
- LeetCode——Longest Substring Without Repeating Characters
- Struts2 - 常用的constant总结
- PC级影像处理技术上身 3D/4K手机吸睛力大增
- 常用oracle命令