彷徨 | Hadoop各配置文件的配置及其作用

目录

1 . slaves

2 . core-site.xml

3 . hdfs-site.xml

4 . mapred-site.xml:(注意要将mapred-site.xml.template重命名为 .xml的文件)

5.Yarn-Site.xml

6 . hadoop-env.sh


1 . slaves

把所有从节点的主机名写到这儿就可以,这是告诉hadoop进程哪些机器是从节点。每行写一个,例如:

hadoop02
hadoop03
hadoop04

注:前提是你已经为每个节点进行了hostname的命名。而且每个节点的hosts文件你修改了本地dns的指向,让这些主机指向约定好的IP。然后每个节点的hosts文件保持同步。


2 . core-site.xml


        
        
                fs.defaultFS
                hdfs://hadoop01:9000
        

        
        
                hadoop.tmp.dir
                /usr/local/hadoop-2.8.3/tmp
        

额外的,有的人在core-site.xml中加了如下属性:


	
	
		io.file.buffer.size
		131072
	
	
		hadoop.proxyuser.myusrname.hosts
		*
	
	
		hadoop.proxyuser.myusrname.groups
		*
	
	
	
		ha.zookeeper.quorum
		hadoop01:2181,hadoop02:2181,hadoop03:2181,hadoop04:2181
	

暂时不了解zookeeper,后续再说。先不加入这个配置了暂时。


3 . hdfs-site.xml


        
        
                dfs.namenode.name.dir
                /usr/local/hadoop-2.8.3/data/name
        

        
        
                dfs.datanode.data.dir
                /usr/local/hadoop-2.8.3/data/data
        
    
        
        
                dfs.replication
                3
        
        
        
        
                dfs.secondary.http.address
                hadoop01:50090
        

	
		
		dfs.webhdfs.enabled
		true
	

4 . mapred-site.xml:(注意要将mapred-site.xml.template重命名为 .xml的文件)


    
    
        mapreduce.framework.name
        yarn
    


		
		
		mapreduce.jobhistory.address
		singlehost:10020	
		
		
		
		mapreduce.jobhistory.webapp.address
		singleshost:19888	
	

通过,mapred-site.xml,我们又出现了2个访问地址:

MapReduce内部的一个通讯地址:hadoop01:10020

MapReduce外部web访问的地址:hadoop02:19888


5.Yarn-Site.xml


    
        yarn.resourcemanager.hostname
        hadoop01
    

    
        yarn.nodemanager.aux-services
        mapreduce_shuffle
    

这个文件就是配置资源管理系统yarn了,其中主要指定了一些节点资源管理器nodemanager,以及总资源管理器resourcemanager的配置。 可以看到这个配置中,跟mapreduce框架是相关的。

可见yarn首先是为了支持mapreduce这个模型,之后很多其他的框架都是基于mapreduce以及yarn的功能基础上开发出来的。

                                                                
	yarn.nodemanager.aux-services.mapreduce.shuffle.class
	org.apache.hadoop.mapred.ShuffleHandler


	
	yarn.resourcemanager.address
	hadoop01:8032


	
	yarn.resourcemanager.scheduler.address
	hadoop01:8030


	
	yarn.resourcemanager.resource-tracker.address
	hadoop01:8031


	
	yarn.resourcemanager.admin.address
	hadoop01:8033


	
	yarn.resourcemanager.webapp.address
	singlehost:8088

可以看到,yarn-site.xml 配置了很多通讯地址,除了8088都是IPC协议的通讯地址,是为了yarn的多个进程之间进行通讯的。
小知识拓展:如果2个进程在同一台机子且在同一个操作平台,可以选择IPC或TCPIP两种通讯协议,但IPC效率高于TCPIP。因为IPC通讯,2个进程直接发送通讯包,而采用TCPIP,进程要把通讯包先发给LO本地环路接口,再通过LO发给进程2.
如果2个进程在不同物理机器或不同操作平台上,则不能用IPC,只能用TCPIP了。

6 . hadoop-env.sh

# The java implementation to use.
export JAVA_HOME=/usr/local/jdk1.8.0_102

注:每个配置文件的第一个代码块为本人自己电脑所配置 , 第二个代码块为参考其他博客

 

关于Hadoop的三大核心技术 :

分布式文件管理系统HDFS,分布式计算框架MapReduce,以及分布式资源管理调度平台YARN的文章请参考:
HDFS个人浅谈 : https://blog.csdn.net/weixin_35353187/article/details/82047892
MapReduce个人浅谈 : https://blog.csdn.net/weixin_35353187/article/details/82108388
YARN个人浅谈 : https://blog.csdn.net/weixin_35353187/article/details/82112174
Hadoop的各配置文件的配置以及参数的意义请参考文章 : 
Hadoop的各个配置文件的配置 : https://blog.csdn.net/weixin_35353187/article/details/81780439

你可能感兴趣的:(大数据,Hadoop)