• 搭建Hadoop的全分布模式与Hadoop的体系结构原理


    第二章
    一、搭建Hadoop的全分布模式
    1、三台机器:bigdata12 bigdata13 bigdata14
    2、每台机器准备工作:安装JDK、关闭防火墙、设置主机名
    systemctl stop firewalld.service
    systemctl disable firewalld.service

    	   设置主机名  vi /etc/hosts
    		192.168.157.12 bigdata12
    		192.168.157.13 bigdata13
    		192.168.157.14 bigdata14
    		
    3、配置免密码登录
    	(1)在每台机器上产生公钥和私钥
    		   ssh-keygen -t rsa
    		   
    	(2)需要将每台机器的公钥复制给其他机器(下面的三句话,需要在每台机器上执行)
    		  ssh-copy-id -i .ssh/id_rsa.pub root@bigdata12
    		  ssh-copy-id -i .ssh/id_rsa.pub root@bigdata13
    		  ssh-copy-id -i .ssh/id_rsa.pub root@bigdata14
    		  
    4、保证每台机器的时间同步的
    5、安装Hadoop的全分布环境(在主节点bigdata12上安装)
    	(1)解压设置环境变量
    	(2)修改配置文件
             hadoop-env.sh 
    	            26行  export JAVA_HOME=/root/training/jdk1.8.0_144
             hdfs-site.xml
    			<!--数据块的冗余度,默认是3-->
    			<property>
    			  <name>dfs.replication</name>
    			  <value>2</value>
    			</property>
    
    			<!--是否开启HDFS的权限检查,默认:true-->
    			<property>
    			  <name>dfs.permissions</name>
    			  <value>false</value>
    			</property>
    
    			
    		core-site.xml
    			<!--NameNode的地址-->
    			<property>
    			  <name>fs.defaultFS</name>
    			  <value>hdfs://bigdata12:9000</value>
    			</property>	
    
    			<!--HDFS数据保存的目录,默认是Linux的tmp目录-->
    			<property>
    			  <name>hadoop.tmp.dir</name>
    			  <value>/root/training/hadoop-2.7.3/tmp</value>
    			</property>	
    			
    		mapred-site.xml
    			<!--MR程序运行的容器是Yarn-->
    			<property>
    			  <name>mapreduce.framework.name</name>
    			  <value>yarn</value>
    			</property>		
    
    		yarn-site.xml
    			<!--ResourceManager的地址-->
    			<property>
    			  <name>yarn.resourcemanager.hostname</name>
    			  <value>bigdata12</value>
    			</property>		
    
    			<!--NodeManager运行MR任务的方式-->
    			<property>
    			  <name>yarn.nodemanager.aux-services</name>
    			  <value>mapreduce_shuffle</value>
    			</property>	
    			
    		slaves: 配置的是所有的从节点
    				bigdata13
    				bigdata14
    		    
    	(3)格式化NameNode: hdfs namenode -format	
    	
    	
         6、将配置好的目录复制到bigdata13和bigdata14上
             scp -r hadoop-2.7.3/ root@bigdata13:/root/training
    	 scp -r hadoop-2.7.3/ root@bigdata14:/root/training
    
    7、启动Hadoop集群(在主节点上): start-all.sh , 停止Hadoop集群:  stop-all.sh
    								 
    8、验证 
    	(*)命令行:hdfs dfsadmin -report
    	(*)网页:HDFS:http://192.168.157.12:50070/
    	           Yarn:http://192.168.157.12:8088
    

    第四章:Hadoop的体系结构(非常重要):原理、结构、运行机制
    一、HDFS的体系结构和运行原理
    1、主节点:NameNode
    )职责:管理HDFS
    接收客户端的请求:上传数据、下载数据
    管理和维护日志(edits文件)和元信息(指的是:数据块的位置信息:fsimage文件)
    )HDFS的日志:edits文件
    举例: 创建目录 ---> 产生日志
    hdfs dfs -mkdir /mydemo1
    查找edits文件:find . -name edits*

    			   (1) edits_inprogress_0000000000000000105是二进制文件
    			   (2)HDFS提供一个工具:edits viewer 日志查看器,转换成一个XML文件
    			          hdfs oev -i edits_inprogress_0000000000000000105 -o ~/a.xml
    					  <RECORD>
    						<OPCODE>OP_MKDIR</OPCODE>
    						<DATA>
    						  <TXID>107</TXID>
    						  <LENGTH>0</LENGTH>
    						  <INODEID>16416</INODEID>
    						  <PATH>/mydemo1</PATH>
    						  <TIMESTAMP>1512565581211</TIMESTAMP>
    						  <PERMISSION_STATUS>
    							<USERNAME>root</USERNAME>
    							<GROUPNAME>supergroup</GROUPNAME>
    							<MODE>493</MODE>
    						  </PERMISSION_STATUS>
    						</DATA>
    					  </RECORD>		
    	
    	(*)HDFS的元信息:fsimage文件:记录数据块的位置信息、冗余信息等等
    		 查找fsimage文件:find . -name fsimage*
    		 也是二进制的
    		 HDFS也提供了一个工具:image viewer ,把fsimage文件转成文本、XML的文件
    
    2、从节点:DataNode
    	(*)按数据块保存数据:1.x:64M   2.x:128M
    	(*)数据块在操作系统的位置:
    	     find . -name blk*
    	    /root/training/hadoop-2.7.3/tmp/dfs/data/current/BP-156326068-192.168.157.11-1512395988927/current/finalized/subdir0/subdir0
             
    	(*)设置数据块冗余度的基本原则
    		  一般,冗余度跟数据节点的个数一样,最大不要超过3
    
    3、第二名称节点:SecondaryNameNode,默认就跟NameNode在一起
    	(*)职责:定期进行日志信息的合并,edits ---> fsimage中
    	(*)掌握日志合并过程(重要)
    

    二、Yarn的体系结构和运行原理:运行MapReduce的容器
    cd /root/training/hadoop-2.7.3/share/hadoop/mapreduce
    hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /input/data.txt /output/wc1206

    1、主节点:ResourceManager
    	职责:(*)接收任务请求
    	          (*)资源的分配
    		  (*)任务分配
    
    2、从节点:NodeManager
    	职责:(*)从ResourceManager获取任务和资源
    	           (*)执行
    
    3、调度MR任务的过程
    4、资源分配方式
    	(1)FIFO Scheduler:先来先得
    	(2)Capacity Scheduler:容器管理
    	(3)Fair Scheduler:公平调度管理 ,前提:假设任务具有相同优先级,平均分配资源
    

    三、HBase的体系结构和运行原理
    HBase是基于HDFS之上的NoSQL数据库
    1、主节点:HMaster
    2、从节点:RegionServer

  • 相关阅读:
    UVA-11437 Triangle Fun
    UVA 10491
    CF 223C
    poj 3273
    由异常掉电问题---谈xfs文件系统
    好久没有写博客了,最近一段时间做一下总结吧!
    Json.Net
    div 旋转
    VirtualBox虚拟机网络设置
    windows 2003 安装 MVC 环境 404错误,无法找到该页
  • 原文地址:https://www.cnblogs.com/notes-study/p/8435582.html
Copyright © 2020-2023  润新知