Hadoop集群规划
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
确保用于构建集群的所有的服务 器满足集群节点要求 (包括硬件 要求、软件要求和网络要求。)
做好构造Hadoop集群的规划
进行系统安装
在集群中的所有 节点上安装需要 的操作系统
正确配置所有节 点的RAID
安装Hadoop
参数配置
• 在规划中,除了选取硬件之外,还需要进 行角色的规划 • 角色的规划即确定Hadoop的某一个运行角 色运行在哪个节点之上 • 与硬件推荐情况一致,首先需要确定集群 的本身负载,针对小规模,中规模以及大 规模集群有不同的集群规划方案
Hadoop
• 规划使用Hadoop的组件,这些组件包括HDFS, MapReduce,Hive,HA组件等 • 规划集群的硬件参数,包括服务器数量,物理 布局,机架数目以及服务器在机架上的分配 • 规划集群使用的网络,即决定使用网络的拓扑, 节点到交换机的连接,机柜之间的连接 • 规划节点的IP地址设置以及节点的角色,例如 用以各个逻辑角色管理的节点,用以存储元数 据的NameNode,MapReduce程序的JobTracker, 管理节点等
– NN:NameNode,2NN:SecondaryNameNode, JT:JobTracker, ZK: ZooKeeper, Hmaster: HBaseMaster, DN: DataNode, TT: TaskTracker, RS: HBase RegionServer
• 小规模生产需要高可用性,配置方案:
HBase HMaster
HBase RegionServer Management Node
•
Hadoop Hadoop
•
–
• •
– IO
• • •
• •
4
16GB
服务器角色及服务类型 MapReduce Job Tracker MapReduce Task Tracker MapReduce Slots on Task Tracker HDFS NameNode HDFS Secondary NameNode HDFS DataNode ZooKeeper HBase Master Server HBase Region Server Hive Server 客户端 内存要求 2GB 2GB 512MB * slot数量 16GB 16GB 2GB 4GB 2GB 16GB 2GB 8GB
• 千兆以太网接口是最基本的要求,更重要的是交换机的背板带宽,是 决定数据传输的关键因素 • 一个以太网交换机的接口是以太网交换机到主机的速度,这个速度决 定主机到交换机的速度级别,在Hadoop环境中,这个速度最少应该是 千兆以太网 • 接口速度即使达到了千兆以太网,实际的运行速度可能并不能真正达 到千兆以太网的速度,因为可能有数十个设备同时共享这个交换机 • 决定交换机的性能的关键因素是交换机的背板带宽,具有良好背板交 换能力的交换机能够使得任意两个接口之间的速度以及上行的速度都 能够达到千兆的速度,而通过总线进行共享的带宽往往不能达到理想 的速度 • 为了能够使得Hadoop的处理能力能够得到充分的释放,交换机对于系 统运行的性能起到了决定性的左右,建议在可能的情况下尽量选择高 端的交换机,使得每一个接口都能够达到线速(网线能够达到什么速 度,交换机就能够提供什么速度,没有性能损失)
内存 磁盘接口 磁盘 网络
高端网络可以考虑使用InifinBand网络
• 支持的操作系统为Linux,要求64位系统,版本 至少6以上。包括:
– RedHat Enterprise Linux – CentOS – Oracle Linux
• 软件依赖:
– Java 1.6 – openssh
» 在把服务器加入集群前,须要确保openssh-server在运行。如果 openssh-server没有在运行,在Hadoop集群中的所有节点中安装 openssh-server包。
– 头结点Head Node:NN+JT+ZK+Hmaster – 头结点的副本Backup Head Node:Backup NN+2NN+Backup JT+ZK+HMaster – 数据节点Data Node:DN+TT+RS, 在一个数据节点中 部署ZK+HMaster – 保证ZK的数目为奇数
– NN:NameNode,2NN:SecondaryNameNode, JT:JobTracker, ZK: ZooKeeper, Hmaster: HBaseMaster, DN: DataNode, TT: TaskTracker, RS: HBase RegionServer
• 大规模生产需要高可用性,配置方案:
小规模集群可以和 NameNode共享节点,大规 模集群用独立节点 多个独立节点 1个独立节点,小规模集群 可以与NameNode共享,大 规模集群使用独立节点 与DataNode运行在相同的 节点之上 独立配置的话可以与 NameNode共享节点,或者 将元数据存放在客户端
MapReduce TaskTracker Hive
项目 处理器CPU 内存 磁盘接口 磁盘 指标 双路四核服务器处理器,2x4 2.6GHz 32G或者以上内存,DDR3,ECC SAS 6GB/s 6x或者12x SATA 1T 7200RPM监控级 硬盘
网络
两个以太网口
• 20+个节点,解决中等规模问题,实际上能够满足大多数中小企 业的需求
项目 处理器CPU 内存 磁盘接口 磁盘 指标 双路六核服务器处理器,处理器缓存 15MB,2x6 2.9GHz 64G或者以上内存,DDR3,ECC SAS 6GB/s 6x或者12x SATA 1T或者3T 7200RPM监 控级硬盘(依据数据规模而定)
• 提高网络速度最直接的办法是通过端口绑定, 将服务器的多个端口绑定为一个
• •
–
IP ip
–
•
Linux
• •
• • 3 Hadoop HBase 10
10GBE
•
• InfiniBand 10G InifiBand 20G 40G
• InfiniBand
• 4~10个节点,解决较小规模问题
MapReduce实际计算 节点 Hive元数据以及驱动 程序
角色 ZooKeeper
描述 用以提供集群高可用性的 锁服务 HBase用以调度 RegionServer的主模块 HBase中用以管理数据的 模块 可能的集群监控管理节点
节点数目 3个或3个以上的奇数的独 立节点(小规模可以和其 它角色共享节点) 与其它角色共享节点的多 个节点 一般与DataNode运行与相 同的节点之上 一般为一个独立的节点, 如果小规模集群的话可以 与其它角色共享
• 小规模测试集群不需要高可用性,无需 NameNode的高可用性,将所有的头结点都配 置到单个的节点中。配置方案:
– 头结点Head Node:NN+2NN+JT+ZK+HMaster – 数据节点Data Node:DN+TT+RS, 在两个数据节点中 部署ZK+HMaster – 保证ZK的数目为奇数
角色
HDFS NameNode
描述
分布式文件系统用以 存储文件系统以及数 据块的元数据 NameNode的影子节 点 HDFS数据存储 MapReduce调度程序
节点数目
1个独立节点
HDFS Secondary NameNode HDFS DataNode MapReduce JobTracker
•
• • •
+ +MapReduce
• 典型使用以太网络,为了使得系统能够正常运 行,最低使用千兆以太网连接,由于需要有数 据交换的需求,建议配置大容量的网络交换机 • 当一台机器上有多个网络适配器时,推荐使用 网络适配器绑定Linux的方法配置链路聚合,并 把工作模式设为6。在工作模式为6时,负载平 衡可以通过循环取得,并且这些网络适配器可 以在没有配置交换器的情况下正常工作
• • • • •
标准的x86的服务器 以太网络 多机架数据中心 软件环境 硬件的选择 (处理器,硬盘,网络)
HDFS 客户端
MapReduce 客户端
HBase 客户端
……
Hive 客户端
Hadoop 集群
HDFS MapReduce HBase Hive
管理节点
……
节点2 节点3
节点1
…… 节点N
网络
两个以太网口
• 依据问题规模确定所需要的节点数目,解决大规模问题,使用 高端的内存,高速网络
项目 处理器CPU 指标 双路六核服务器处理器,处理器缓存 15MB,2x6 2.9GHz,依据应用可以选 用更高端的处理器 96G或者以上内存,DDR3,ECC 2xSAS 6GB/s 24x 1TB 告诉SAS硬盘 10Gb以太网口
• 最常见的是使用服务器本身的万兆以太网络, 每一个机架使用一个交换机,在多个机架之间 进行带宽聚合。这种方式在总的节点数目较少 (少于40个)集群比较合适 • 如果应用(例如ETL的应用)的IO高负载,这 样的话,网络会成为性能瓶颈
– 12块以上的硬盘,每块以100MB/s速度运行,会很 快吃掉所有网络带宽 – 低端的交换器不能够支持线速,产生阻塞
– – – – – 单独的NameNode节点:NN 单独的JobTracker节点:JT+ZK+Hmaster NameNode的副本: backup NN+2NN+ZK+Hmaster JobTracker节点的副本:Backup JT+ZK+HMaster 数据节点Data Node:DN+TT+RS, 在一个数据节点中部 署ZK+HMaster – 保证ZK的数目为奇数 – NN:NameNode,2NN:SecondaryNameNode, JT:JobTracker, ZK: ZooKeeper, Hmaster: HBaseMaster, DN: DataNode, TT: TaskTracker, RS: HBase RegionServer
•
– HDFS HBase map
DataNode, MapReduce TaskTracker Region Server slot slots reduce slots 16 2GB + 2GB + 512MB*16 + 16GB = 28GB
•Fra Baidu bibliotekHBase
• JBOD vs. RAID
–
RAID – RAID RAID 0