《大数据与云计算》课件-8.HADOOP_第1页
《大数据与云计算》课件-8.HADOOP_第2页
《大数据与云计算》课件-8.HADOOP_第3页
《大数据与云计算》课件-8.HADOOP_第4页
《大数据与云计算》课件-8.HADOOP_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

知识点HADOOP简述3Hadoop部署1引例2简述HADOOP简述

EBay的第一个大型Hadoop集群是500个节点组成的Athena,集群只用了不到三个月就建成了,然后开始高速处理预测模型、解决实时问题,后来随着业务的需求,集群也在不断扩容。

EBay的Hadoop集群,既用于日常生产作业,又用于一次性作业。使用Hadoop的公平调度器(FairScheduler)来管理资源分配、为各小组定义作业池、赋予权重、限制每个用户和小组的并行作业,并且设定抢占超时和延迟调度。

EBay早在2007年左右,就开始尝试基于Hadoop的大数据平台搭建了。引例Hadoop是由java语言编写的,在分布式服务器集群上存储海量数据并运行分布式分析应用的开源框架,其核心部件是HDFS与MapReduce。HDFS是一个分布式文件系统.引入存放文件元数据信息的服务器Namenode和实际存放数据的服务器Datanode,对数据进行分布式储存和读取。MapReduce是一个计算框架:MapReduce的核心思想是把计算任务分配给集群内的服务器里执行。通过对计算任务的拆分(Map计算/Reduce计算)再根据任务调度器(JobTracker)对任务进行分布式计算。Hadoop简述作用领域大数据存储分布式存储日志处理:擅长日志分析ETL:数据抽取到oracle、mysql、DB2、mongdb及主流数据库机器学习:比如ApacheMahout项目搜索引擎:Hadoop+lucene实现数据挖掘:目前比较流行的广告推荐,个性化广告推荐Hadoop简述Hadoop的每个配置文件也需要我们手工配置,这种方式安装的优势比较灵活,集群服务器也不需要连外网,但这种方式对开发人员的要求比较高Hadoop部署修改sudoers创建Hadoop用户Hadoop部署1)useraddhadoop设密码passwdhadoop命令usermod-ghadoophadoop2)vi/root/sudo添加一行hadoopALL=(ALL)NOPASSWD:ALL编辑/etc/sudoers文件#也就是输入命令:vi/etc/sudoers#进入编辑模式,找到这一行:rootALL=(ALL)ALL#在它的下面添加:hadoopALL=(ALL)NOPASSWD:ALL#这里的hadoop是你的用户名,然后保存退出。撤销文件的写权限#也就是输入命令:chmodu-w/etc/sudoersHadoop部署设置环境变量编辑/etc/profile文件vim/etc/profile输入以下配置环境变量exportJAVA_HOME=/home/hadoop/software/jdk1.8.0_121exportSPARK_HOME=/home/hadoop/software/spark21exportSCALA_HOME=/home/hadoop/software/scala-2.11.8exportSQOOP_HOME=/home/hadoop/software/sqoopexportHADOOP_HOME=/home/hadoop/software/hadoop2exportPATH=$PATH:$HADOOP_HOME/binexportPATH=$PATH:$HADOOP_HOME/sbinexportHADOOP_MAPARED_HOME=${HADOOP_HOME}exportHADOOP_COMMON_HOME=${HADOOP_HOME}exportHADOOP_HDFS_HOME=${HADOOP_HOME}exportYARN_HOME=${HADOOP_HOME}exportHADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoopexportHIVE_HOME=/home/hadoop/software/hadoop2/hiveexportPATH=$JAVA_HOME/bin:$HIVE_HOME/bin:$SQOOP_HOME/bin:$PATHexportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexportPATHUSERLOGNAMEMAILHOSTNAMEHISTSIZEHISTCONTROLexportFLUME_HOME=/home/hadoop/software/flume…保存后环境变量还没有生效,执行以下命令才会生效。source/etc/profile#然后修改下Hadoop的安装目录为Hadoop用户所有。chown-Rhadoop:hadoop/data1/software/hadoop重启sshd服务设置local无密码登陆Hadoop部署su-hadoopcd~/.ssh如果没有.shh则mkdir~/.sshssh-keygen-trsacd~/.sshcatid_rsa.pub>>authorized_keyssudochmod644~/.ssh/authorized_keyssudochmod700~/.sshsudo/etc/rc.d/init.d/sshdrestart设置远程无密码登陆修改/etc/hosts主机名和IP地址的映射文件Hadoop部署使用Hadoop用户每台机器先本地无秘钥部署一遍。然后因为我们搭建的是双NameNode节点,需要从这两个服务器上把authorized_keys文件复制到其它机器上,主要目的是NameNode节点需要直接访问DataNode节点。增加:0master1standby2slave13slave24slave3设置远程无密码登陆从namenode1节点上复制Hadoop部署scpauthorized_keyshadoop@standby:~/.ssh/authorized_keys_from_masterscpauthorized_keyshadoop@slave1:~/.ssh/authorized_keys_from_masterscpauthorized_keyshadoop@slave2:~/.ssh/authorized_keys_from_masterscpauthorized_keyshadoop@slave3:~/.ssh/authorized_keys_from_master

使用Hadoop用户每台机器先本地无秘钥部署一遍。然后因为我们搭建的是双NameNode节点,需要从这两个服务器上把authorized_keys文件复制到其它机器上,主要目的是NameNode节点需要直接访问DataNode节点。每台都关闭机器的防火墙jdk安装修改下环境变量指定到这个jdk目录Hadoop部署#关闭防火墙sudo/etc/init.d/iptablesstop#关闭开机启动sudochkconfigiptablesoffcd/home/hadoop/software/上传rzjdk1.8.0_121.gztarxvzfjdk1.8.0_121.gzvim/etc/profileexportJAVA_HOME=/home/hadoop/software/jdk1.8.0_121source/etc/profile修改Hadoop的主从节点文件Hadoop安装Hadoop部署Hadoop就是一个tar包放上去解压缩后再进行各个文件的配置。上传hadoop-2.6.0-cdh5.tar.gz到/home/hadoop/software/tarxvzfhadoop-2.6.0-cdh5.tar.gzmvhadoop-2.6.0-cdh5hadoop2cd/home/hadoop/software/hadoop2/etc/hadoopvihadoop-env.sh修改JAVA_HOME值(exportJAVA_HOME=/home/hadoop/software/jdk1.8.0_121)slaves是从节点,masters是主节点。需要说明的是一个主节点也可以同时从节点。也就是说这个节点可以同时是NameNode节点和DataNode节点。vimslaves添加这5台机器的节点:masterstandbyslave1slave2slave3vimmasters添加两个NameNode节点:masterstandby思考:HADOOP的作用领域是什么?知识点HADOOP部署及接口3Hadoop大家族1Hadoop体系结构2Hadoop访问接口HADOOP部署及接口Hadoop1.0是指MapReduce+HDFS内核主要由HDFS和MapReduce两个系统组成,其中MapReduce是一个离线处理框架,由编程模型(新旧API)、运行时环境(JobTracker和TaskTracker)和数据处理引擎(MapTask和ReduceTask)三部分组成。Hadoop2.0是指MapReduce+HDFS+Yarn内核主要由HDFS、MapReduce和YARN三个系统组成,其中YARN是一个资源管理系统,负责集群资源管理和调度,MapReduce则是运行在YARN上的离线处理框架。Hadoop体系结构针对Hadoop1.0单NameNode制约HDFS的扩展性问题,提出HDFSFederation,它让多个NameNode分管不同的目录进而实现访问隔离和横向扩展,同时彻底解决了NameNode单点故障问题。针对Hadoop1.0中的MapReduce在扩展性和多框架支持等方面的不足,它将JobTracker中的资源管理和作业控制分开,分别由ResourceManager(负责所有应用程序的资源分配)和ApplicationMaster(负责管理一个应用程序)实现,即引入了资源管理框架Yarn。Yarn作为Hadoop2.0中的资源管理系统,它是一个通用的资源管理模块,可为各类应用程序进行资源管理和调度,不仅限于MapReduce一种框架,也可以为其他框架使用,如Tez、Spark、Storm等。Hadoop体系结构Hadoop体系结构

有的是WebUI所使用的,有的是内部通信所使用的,有的是监控所使用的。实际系统中可能用于防火墙的端口设计。一些内部通信用的端口可能也需要外部能访问。

系统8080,80用于tomcat和apache的端口。ssh的端口WebUI访问和监控Hadoop系统运行状态Daemon缺省端口配置参数HDFSNamenode50070dfs.http.addressDatanodes50075dfs.datanode.http.addressSecondarynamenode50090dfs.secondary.http.addressBackup/Checkpoint

node*50105dfs.backup.http.addressHadoop访问接口Daemon缺省端口配置参数协议用于Namenode9000IPC:

ClientProtocolFilesystem

metadata

operations.Datanode50010dfs.datanode.addressCustom

Hadoop

Xceiver:

DataNodeand

DFSClientDFS

data

transferDatanode50020dfs.datanode.ipc.addressIPC:InterDatanodeProtocol,ClientDatanodeProtocol

ClientProtocolBlock

metadata

operations

and

recovery产品服务缺省端口参数范围协议说明HBase

Master60000hbase.master.portExternalTCPIPCMaster60010.portExternalTCPHTTPRegionServer60020hbase.regionserver.portExternalTCPIPC产品服务缺省端口配置参数协议Hadoop

YARN

ResourceManager8032yarn.resourcemanager.addressTCPResourceManager8030yarn.resourcemanager.scheduler.addressTCPResourceManager8031yarn.resourcemanager.resource-tracker.addressTCP内部端口相关产品端口YARN(Hadoop2.0)缺省端口产品端口Hadoop访问接口ApacheHadoopApache开源组织的一个分布式计算开源框架,提供了一个分布式文件系统子项目(HDFS)和支持MapReduce分布式计算的软件架构ApacheHBase高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PCServer上搭建起大规模结构化存储集群ApacheSqoop用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(MySQL,Oracle,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中ApacheHive基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析ApachePig基于Hadoop的大规模数据分析工具,它提供的SQL-LIKE语言叫PigLatin,该语言的编译器会把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。Hadoop大家族ApacheZookeeper为分布式应用所设计的分布的、开源的协调服务,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,简化分布式应用协调及其管理的难度,提供高性能的分布式服务ApacheAvro一个数据序列化系统,设计用于支持数据密集型,大批量数据交换的应用。Avro是新的数据序列化格式与传输工具,将逐步取代Hadoop原有的IPC机制ApacheAmbari一种基于Web的工具,支持Hadoop集群的供应、管理和监控ApacheMahout基于Hadoop的机器学习和数据挖掘的一个分布式框架。Mahout用MapReduce实现了部分数据挖掘算法,解决了并行挖掘的问题ApacheCassandra一套开源分布式NoSQL数据库系统。它最初由Facebook开发,用于储存简单格式数据,集GoogleBigTable的数据模型与AmazonDynamo的完全分布式的架构于一身Hadoop大家族ApacheChukwa一个开源的用于监控大型分布式系统的数据收集系统,它可以将各种各样类型的数据收集成适合Hadoop处理的文件保存在HDFS中供Hadoop进行各种MapReduce操作ApacheGiraph一个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论