Hadoop hadoop配置文件yarn-site.xml、mapred-site.xml、hdfs-site.xml 、core-site.xml、hadoop-env.cmd详解

前言:
配置hadoop,主要是配置core-site.xml,hdfs-site.xml,mapred-site.xml三个配置文件。
上网找的配置可能因为各个hadoop版本不同,导致无法生效,这里需要经验积累。
参数繁多,不用过多纠结每个参数的含义,先照搬配置文件,
用多几次,总会出现bug,需要反复调整的参数就是常用参数。

±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±

正文开始:

yarn-site.xml文件参数配置
配置 ResourceManager,NodeManager 的通信端口,web 监控端口等信息。

<?xml version="1.0"?>
<configuration>

<!--nomenodeManager获取数据的方式是shuffle-->
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
	<description>NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序</description>
  </property>

<!--指定Yarn的核心角色(ResourceManager)的地址-->   
	<property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>1500</value>
		<description>NM总的可用物理内存,以MB为单位。一旦设置,不可动态修改</description>
    </property>
	<property>
        <name>yarn.scheduler.maximum-allocation-mb</name>
        <value>1024</value>
		<description>可申请的最大内存资源</description>
    </property>
	<property>
        <name>yarn.scheduler.minimum-allocation-mb</name>
        <value>64</value>
		<description>可申请的最少内存资源</description>
    </property>
	<property>
         <name>yarn.nodemanager.vmem-check-enabled</name>
         <value>false</value>
         <description>由于我的测试机内存少,所以就关闭虚拟内存检测s</description>
    </property>
    <property>
        <name>yarn.nodemanager.resource.cpu-vcores</name>
        <value>1</value>
		<description>可使用的最大cpu个数,不受核心数量限制。</description>
    </property> 
</configuration>

mapred-site.xml文件参数配置
注意,该文件不存在,需要将mapred-site.xml.template改名得到。
配置中指示其使用 Yarn 框架执行 map-reduce 处理程序,详细如下

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>    
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
		<description>告诉hadoop以后MR运行在YARN上</description>
    </property>	
	<property>
        <name>yarn.app.mapreduce.am.resource.mb</name>
        <value>512</value>
		<description>MapReduce作业的缺省配置</description>		
    </property>
	 <property>
        <name>mapreduce.map.memory.mb</name>
        <value>256</value>
		<description>每个Map Task需要的内存量</description>		
    </property>
	<property>
        <name>mapreduce.reduce.memory.mb</name>
        <value>512</value>
		<description>每个Map Task需要的内存量</description>		
    </property>
</configuration>

hdfs-site.xml文件参数配置
注意在 hdfs-site.xml 中配置 nameNode,dataNode 的本地目录信息,
以及分片备份详细如下需要根据下面的配置文件的目录结构在hadoop\data\dfs下
建立2个文件夹,datanode和namenode,
创建hadoop的namedate,datanode,temp,文件目录。

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <!--指定hdfs保存数据的副本数量-->
  <property>
    <name>dfs.replication</name>
    <value>1</value>
    <description>副本个数,配置默认是3,应小于datanode机器数量</description>
  </property>

  <property>
    <name>dfs.name.dir</name>
    <value>/C:/Hadoop2.7.4/workplace/name</value>
    <description>namenode上存储hdfs名字空间元数据 </description>
  </property>

  <property>
    <name>dfs.data.dir</name>
    <value>/C:/Hadoop2.7.4/workplace/data</value>
    <description>datanode上数据块的物理存储位置</description>
  </property>
</configuration>

core-site.xml文件参数配置

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <!--指定namenode的地址-->
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:8010</value>
    <description>HDFS的URI,文件系统://namenode标识:端口号</description>
  </property>
  <!--用来指定使用hadoop时产生文件的存放目录-->
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/C:/Hadoop2.7.4/workplace/tmp</value>
    <description>namenode上本地的hadoop临时文件夹</description>
   </property>
</configuration>

hadoop-env.cmd文件参数配置

 设置java环境变量,推荐使用
	set JAVA_HOME=C:\Progra~1\Java\jdk1.8.0_xx
    不推荐用法,
	set JAVA_HOME=%JAVA_HOME%

±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
总结:

yarn-site.xml
mapred-site.xml
hdfs-site.xml
core-site.xml
hadoop-env.cmd

这5个文件配置繁多,这里只挑重点的讲,感兴趣的同学可以搜一下相关的博文。
有些比较细的配置在初学阶段过早研究,效果可能不太好,初学者应该先有个整体把握。
理论+实践,遇到感兴趣的点可以过一轮后回过来研究,这样效果往往比较好。

  • 5
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hadoop是一个分布式计算系统,它的核心是由一组配置文件组成的。这些文件包括core-site.xmlhadoop-env.sh、hdfs-site.xmlmapred-site.xml、workers和yarn-site.xml。在下面的文章中,我们将详细介绍每个文件的作用和用途。 1. core-site.xml core-site.xmlHadoop的核心配置文件之一。它包含了关于Hadoop分布式文件系统(HDFS)和MapReduce框架的配置信息。其中最重要的是Hadoop的默认文件系统,这通常是HDFS。此外,该文件还包含了Hadoop所需的一些基本信息,例如Hadoop集群的名称和Hadoop的缓存目录等。在该文件中,可以配置以下参数: fs.defaultFS:指定Hadoop的默认文件系统,通常是HDFS。 hadoop.tmp.dir:指定Hadoop的缓存目录,用来存储临时文件。 io.file.buffer.size:指定文件读写缓冲区的大小。 ipc.client.connect.timeout:指定客户端连接服务器的超时时间。 ipc.client.connection.maxidletime:指定客户端连接最大空闲时间。 2. hadoop-env.sh hadoop-env.sh是Hadoop的环境变量文件。它包含了Hadoop所需的环境变量信息。该文件的作用是设置Hadoop所需的JDK路径、Hadoop的类路径和其他一些环境变量。在该文件中,可以配置以下参数: JAVA_HOME:指定JDK的安装路径。 HADOOP_HOME:指定Hadoop的安装路径。 HADOOP_CONF_DIR:指定Hadoop配置文件所在的目录。 HADOOP_CLASSPATH:指定Hadoop的类路径。 HADOOP_OPTS:指定Hadoop的JVM参数。 3. hdfs-site.xml hdfs-site.xmlHadoop分布式文件系统(HDFS)的配置文件。它包含了与HDFS相关的配置信息,例如HDFS的副本数、块大小和数据节点等。在该文件中,可以配置以下参数: dfs.replication:指定HDFS中每个数据块的副本数。 dfs.blocksize:指定HDFS的块大小。 dfs.namenode.name.dir:指定HDFS名称节点的数据存储目录。 dfs.datanode.data.dir:指定HDFS数据节点的数据存储目录。 dfs.permissions.enabled:指定是否启用HDFS的权限控制。 4. mapred-site.xml mapred-site.xmlHadoop MapReduce框架的配置文件。它包含了与MapReduce相关的配置信息,例如MapReduce任务的最大尝试次数、任务跟踪器和任务调度器等。在该文件中,可以配置以下参数: mapreduce.framework.name:指定MapReduce框架的名称。 mapreduce.jobtracker.address:指定MapReduce任务跟踪器的地址。 mapreduce.tasktracker.http.address:指定MapReduce任务调度器的地址。 mapreduce.map.maxattempts:指定MapReduce任务最大尝试次数。 mapreduce.reduce.maxattempts:指定MapReduce任务最大尝试次数。 5. workers workers是Hadoop集群的工作节点列表。该文件列出了所有的工作节点,每行一个。这些工作节点将被Hadoop用来执行MapReduce任务。 6. yarn-site.xml yarn-site.xmlHadoop YARN的配置文件。它包含了与YARN相关的配置信息,例如YARN资源管理器和节点管理器等。在该文件中,可以配置以下参数: yarn.resourcemanager.hostname:指定YARN资源管理器的主机名。 yarn.nodemanager.aux-services:指定YARN节点管理器的辅助服务。 yarn.nodemanager.aux-services.mapreduce.shuffle.class:指定YARN节点管理器的MapReduce Shuffle服务类。 yarn.nodemanager.local-dirs:指定YARN节点管理器的本地目录。 yarn.nodemanager.log-dirs:指定YARN节点管理器的日志目录。 总结 以上是Hadoop的一些重要配置文件的介绍,包括core-site.xmlhadoop-env.sh、hdfs-site.xmlmapred-site.xml、workers和yarn-site.xml。这些文件包含了Hadoop的核心组件和相关服务的配置信息,对于Hadoop的运行和调试至关重要。熟悉这些文件的内容和参数,对于Hadoop系统管理员和开发人员来说是必不可少的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值