您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > Hadoop集群--初步方案.
Hadoop集群规划---初步方案Hadoop简介•Hadoop是Apache下的一个项目,它是一个开源的可运行于大规模集群上的分布式并行编程框架,由HDFS、MapReduce、HBase、Hive和ZooKeeper等成员组成。其中,HDFS和MapReduce是两个最基础最重要的成员,他们分别是GoogleGFS和MapReduce的开源实现。HDFS是一个高度容错的分布式文件系统,它能够提供高吞吐量的数据访问,适合存储海量(PB级)的大小(通常超过64M)Hadoop简介•HDFS采用Master/Slave架构,一个HDFS集群由一个Namenode和一定数目的Datanodes组成。Namenode是一个中心服务器,负责管理文件系统的名字空间(Namespace)以及客户端对文件的访问。集群中的Datanode一般是一个节点一个,负责管理其所在节点上的存储Hadoop简介•HDFS有如下基本特征:•(1)对于整个集群有单一的命名空间。(2)数据一致性。适合一次写入多次读取的模型。•(3)文件会被分割成多个文件块,每个文件块被分配存储到数据节点上,而且根据配置会有复制文件块来保证数据的安全性。Hadoop集群模块逻辑结构网络拓扑网络拓扑Hadoop简介Hadoop简介Hadoop-HA集群运作机制图集群搭建需要考虑的几点问题•1.选择和规划Hadoop集群的硬件•2.Hadoop版本的选取•3.Hadoop集群操作系统的选择1.Hadoop集群硬件•一个基本的Hadoop集群中的节点主要有:Namenode负责协调集群中的数据存储•DataNode存储被拆分的数据块•Jobtracker协调数据计算任务•TaskTracker执行任务•Secondarynamenode(2.2版本以后,实现HA,有StandByNameNode备用,与NameNode配置一样),帮助NameNode收集文件系统运行的状态信息。NameNodeNameNode要记录HDFS中的元数据,即包括文件名、权限、所有者、所有组、每个文件对应的Block列表,以及每个Block的副本目前存在于哪个机器上。这些信息会随着集群的使用以及规模而增加。–双路四核CPU–DDR3内存24G-36G–双千兆以太网网卡–至少两块1-2T的SATA硬盘,JBOD配置DataNodeDataNode是Hadoop集群中主要的工作节点,它承担两种角色:一将数据存储在HDFS文件系统上;二执行MapReduce任务。DataNode是Hadoop主要的存储和计算资源。•4个磁盘驱动器(单盘1-2T,3.5寸,7200转),支持JBOD•2个4核CPU,至少2.5GHz•16-24GB内存•千兆以太网目前数据概况•1、当前存储数据量–Mysql库-------除去索引,日志数据在1T左右–SQLServer-----?–其他库-------?•2、数据增长–15~25G/天–20*30=600G左右/月–600*6=3.6T左右/半年–注:考虑到每月会产生一定量的数据增长集群规模(存储和计算)•Mysql库每天数据增长目前在20G左右•采用3备份存储•以半年时间为规划期–3.6*3T+预留存储等(20%-30%)-----15T•节点规模:1主3从节点2.Hadoop版本•目前流行的Hadoop版本分三个大类–ApacheHadoop–ClouderaHadoop–HortonworksHadoop•注:还有其他的版本在国内比较少见,只从以上三个版本选择•另外国内比较普遍的是Apache和Cloudera的Hadoop版本,从Hadoop开源社区得到各种问题解决方案比较容易,暂不考虑HortonworksHadoop2.Hadoop版本•选择版本的考虑主要有以下几个方面:–所需要的稳定程度–所需要的功能•Hadoop的版本号是很混乱的,而且小分支很多。就现在情况而言,可以总结为两大分支:•0.20⇨1.x•0.23⇨2.x2.Hadoop版本•按照功能考虑:•Feature0.200.231.x2.xCDH3CDH4CDH5•HDFSappend✔✔✔✔✔✔•Kerberos✔✔✔✔✔✔•HDFSsymlink✔✔✔✔✔✔•YARN(MRv2)✔✔✔✔•MRv1✔✔✔✔✔•NamenodeFederation✔✔✔✔•NamenodeHA✔✔✔✔•Spark✔✔✔2.Hadoop版本•综合考虑,先暂定选择目前绝大部分公司在使用的版本,ClouderaCDH5.5.0免费版,或者ApacheHadoop2.6.0版本–注:根据从网上和开源社区还有身边朋友了解的信息,大部分都认为CDH的运维、管理、监控及Hadoop相关组件,在使用方面有助于后期的维护管理,CDH版本趋于稳定•先对CDH版本在虚拟机上进行安装测试2.Hadoop版本•Hadoop生态圈其他组件–hadoop-2.6.0====cdh5.5.0–hive-1.1.0–hbase-solr-1.5–impala2.3.0–spark-1.5.0(后期再装)–hue3.9.03.操作系统•操作系统•目前国内企业服务器用的操作系统以RedhatLinux和CentOS为主•从免费角度,选CentOS(缺点:缺少技术支持)•从付费角度,选RedhatLinux–CentOS6.5–JavaJDK1.8集群环境•测试环境–利用虚拟平台搭建测试环境•VMwareWorktation10•三节点•生产环境–服务器部署集群构建步骤1、在DSP平台中,运用定时任务根据CTR算法每小时计算一次每个广告位的CTR值存入竞价服务器,供RTB广告进行实时竞价;2、在DSP和SSP平台中,运用MapReduce从Kafka批量提取上一小时的请求、响应、展示、点击广告日志数据,存入规定好的目录结构,根据业务需要,用Hive,Shell脚本等对广告数据进行分类汇总和分析,将处理后的数据存入业务系统Mysql,供广告主和媒体主进行数据查询和展示;3、在DSP平台中,从Kafka提取实时的广告数据,主要运用SparkStreaming,实时统计和计算请求数、响应数、展示数、点击数、点击率、胜出率、广告投放剩余金额,并写入Redis,供广告主实时查询分析各自投放的广告情况;4、每周统计一次每个广告尺寸占比,展示在DSP和SSP业务系统,供运营人员进行分析和投放调整;离线分析MySQL库SQLServer库HDFSsqoopMRHive实时查询APPHDFSSpark(orStorm)kafkaRedisUser实时查询•搭建hadoop集群主要分为两种途径:–一种是公司购买服务器自己搭建•优点:便于对集群的管理和维护–另一种是使用现成的云平台服务•优点:不需要购买硬件,相当于租用云服务器•缺点:不便于后期的管理,无法接触服务器集群
本文标题:Hadoop集群--初步方案.
链接地址:https://www.777doc.com/doc-2875752 .html