常用的Hadoop Common组件属性分享

本文详细介绍Hadoop集群配置文件core-site.xml、hdfs-site.xml及mapred-site.xml的关键参数及其意义,帮助读者理解如何正确配置Hadoop环境。

   


 常用的hadoop配置文件笔记

  一..core-site.xml

          

  <property>

    <name>fs.default.name</name>

<value>hdfs://master:9000</value>

  </property>

<!--hadoop namenode节点的服务器地址和端口,可以域名或IP的形式-->

  <property>

    <name>fs.checkpoint.dir</name>

   <value>/opt/data/hadoop/hdfs/namesecondary</value>

  </property>

    <!--hadoop ssecondarynamenode数据存储路径,可以配置成多个目录,需要逗号隔开。-->

  <property>

   <name>fs.checkpoint.period</name>

<value>1800</value>

  </property>

<!--该属性是以秒为单位,配置editlog合并的时间.... 上述配置表示editlog每隔 30分钟触发一次合并 -->

  <property>

    <name>fs.checkpoint.size</name>

<value>33554432</value>

  </property>

<!--该属性是以b为单位,配置editlog合并的大小,当 editlog 达到32m的时候触发一次合并 -->

  <property>

   <name>io.compression.codecs</name>

<value>org.apache.hadoop.io.compress.DefaultCodec,org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.BZip2Codec</value>

  </property>

<!-- 配置压缩和解压的方式 -->


  <property>

    <name>fs.trash.interval</name>

    <value>1440</value>

  </property>

<!-- Hadoop文件回收站,自动回收时间,单位分钟,这里设置是1天-->


二.. hdfs-site.xml

   

<property>

   <name>dfs.name.dir</name>

<value>/opt/local/hadoop/hdfs/name,/home/hadoop/hdfs/name,/nfs/name</value>

   <description> </description>

 </property>

<!--HDFS namenode image 文件保存地址,可以配置多个不同的分区和磁盘中,使用逗号分隔-->

 <property>

   <name>dfs.data.dir</name>

<value>/opt/local/hadoop/hdfs/data,/home/hadoop/hdfs/data</value>

   <description> </description>

 </property>

<!-- HDFS数据文件 存储路径,可以配置多个不同的分区和磁盘中,使用逗号分隔 -->

 <property>

   <name>dfs.http.address</name>

<value>master:50070</value>

<!-- 名称节点的http协议访问地址与端口-->

 </property>

 <property>

   <name>dfs.secondary.http.address</name>

<value>node1:50090</value>

 </property>

<!--secondary NameNode web管理端口-->

 <property>

   <name>dfs.replication</name>

<value>3</value>

 </property>

<!--HDFS数据块复制的数量,通常是3-->

 <property>

   <name>dfs.datanode.du.reserved</name>

<value>1073741824</value>

 </property>

<!--每个卷预留的空间数量,单位 bytes(上述配置表示datanode 写磁盘会预留 1G空间给其他程序使用)->

 <property>

   <name>dfs.block.size</name>

<value>134217728</value>

 </property>

<!--HDFS数据块大小,当前设置为128M/Block,默认为64M-->

 <property>

   <name>dfs.permissions</name>

<value>false</value>

 </property>

<!-- HDFS文件操作权限,默认weitrue-->


三  mapred-site.xml


<property>

   <name>mapred.job.tracker</name>

<value>master:9001</value>

<!--Jobtracker的RPC服务器所在的主机名称和端口-->

 </property>

 <property>

   <name>mapred.local.dir</name>

<value>/opt/local/hadoop/mapred/mrlocal</value>

   <final>true</final>

 </property> 

<!--MapReduce 产生的中间文件数据,按照磁盘可以配置成多个-->

 <property>

   <name>mapred.system.dir</name>

   <value>/opt/local/hadoop/mapred/mrsystem</value>

<final>true</final>

<!-- 作业运行期间的存储共享目录的目录,必须是HDFS之上的目录-->

 </property> 

 <property>

   <name>mapred.tasktracker.map.tasks.maximum</name>

<value>3</value>

<final>true</final>

<!-- 最大map槽位数量,默认是3个 -->

 </property> 

 <property>

   <name>mapred.tasktracker.reduce.tasks.maximum</name>

<value>1</value>

<final>true</final>

<!-- 单台机器最大reduce槽位数量 -->

 </property>

 

 <property>

   <name>io.sort.mb</name>

   <value>32</value>

<final>true</final>

<!--reduce排序使用内存大小,默认100M,要小于mapred.child.java.opts-->

 </property>

 

 <property>

   <name>mapred.child.java.opts</name>

<value>-Xmx64M</value>

<!-- map 和 reduce 进程 JVM 最大内存配置 -->

 </property>

 

 <property>

   <name>mapred.compress.map.output</name>

<value>true</value>

<!-- map 和 reduce 输出中间文件默认开启压缩 -->

 </property>




下面是网上看到的详细资料....记录下来,以备以后查询

hadoop-env.sh

name

value

含义

JAVA_HOME

/usr/java/jdk1.6.0_30

JDK所在路径

JAVA_LIBRARY_PATH

/opt/hadoopgpl/native/Linux-amd64-64:/opt/modules/hadoop/hadoop-0.20.203.0/lib/native/Linux-amd64-64

Lzo,Snappy,gzip 等压缩算法库地址

HADOOP_HEAPSIZE

26000

最大 HEAPSIZE 大小,默认 1000M

core-site.xml

Name

value

含义

fs.default.name

hdfs://hadoopmaster:9000

指定默认的文件系统,默认端口 8020

fs.checkpoint.dir

/data1/hdfs/secondarynamenode,/data2/hdfs/secondarynamenode

辅助NameNode检查点存储目录,分别存储到各个目录,支持冗余备份。

fs.checkpoint.period

1800

editlog和fsimage,合并触发周期30分钟。

fs.checkpoint.size

33554432

editlog和fsimage,合并触发日志大小32M。

fs.trash.interval

1440

文件清理周期 24小时

io.compression.codecs

org.apache.hadoop.io.compress.DefaultCodec,com.hadoop.compression.lzo.LzoCodec,com.hadoop.compression.lzo.LzopCodec,org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.BZip2Codec

压缩类库

io.compression.codec.lzo.class

com.hadoop.compression.lzo.LzoCodec

LZO 编码类

io.file.buffer.size

65536

指定缓冲区的大小,默认4K太小,64k(65536)或128k(131072)更为常用

topology.script.file.name

/opt/modules/hadoop/hadoop-0.20.203.0/conf/RackAware.py

配置 机架感知的代码

 

 

 

hdfs-site.xml

Name

Value

含义

dfs.name.dir

/data1/hadoop/hdfs/name,/data2/hadoop/hdfs/name,/nfs/hadoop/hdfs/name

NameNode上持久化存储元数据和事务日志的路径。指定多个目录的话,各个目录内容完全一致。
使用NFS在加载一个远程目录,以便后续主机宕机,快速恢复。

dfs.data.dir

/data1/hadoop/hdfs/data /data2/hadoop/hdfs/data,/data3/hadoop/hdfs/data

DataNode上存储数据块的地方。如果指定多个目录,则数据库被随机的存放。

dfs.http.address

hadoopmaster:50070

HDFS 管理界面

dfs.secondary.http.address

hadoopslave:50090

secondary namenode http 地址

dfs.replication

整数

数据复制的份数

dfs.datanode.du.reserved

1073741824

预留文件数量

dfs.block.size

134217728

HDFS 文件块大小,默认128M

dfs.datanode.max.xcievers

4096

datanode同时打开的文件上限。默认256太小。

dfs.permissions

FALSE

默认是 true,则打开前文所述的权限系统。如果是 false,权限检查 就是关闭的

dfs.support.append

FALSE

支持文件append,主要是支持hbase

 

 

 

mapred-size.xml

Name

Value

说明

mapred.job.tracker

hadoopmaster:9001

Jobtracker的RPC服务器所在的主机名称和端口。

mapred.local.dir

/data1/hadoop/mapred/mrlocal,/data2/hadoop/mapred/mrlocal

存储作业中间数据的目录列表,作业结束后,数据被清楚

mapred.system.dir

/data1/hadoop/mapred/mrsystem

作业运行期间的存储共享目录的目录,必须是HDFS之上的目录

mapred.task.tracker.map.tasks.maximum

12

运行在tasktracker之上的最大map任务数

mapred.task.tracker.reduce.tasks.maximum

4

运行在tasktracker之上的最大reduce任务数 (MAP+RED=CPU核心*2) (Map/Red=4/1)

mapred.child.java.opts

-Xmx1536M

JVM选项,默认 -Xmx200m

mapred.compress.map.output

true

Map输出后压缩传输,可以缩短文件传输时间

mapred.map.output.compression.codec

com.hadoop.compression.lzo.LzoCodec

使用Lzo库作为压缩算法

mapred.child.java.opts

-Djava.library.path=/opt/hadoopgpl/native/Linux-amd64-64

加载Lzo

mapred.jobtracker.taskScheduler

org.apache.hadoop.mapred.CapacityTaskScheduler

使用能力调度器

mapred.queue.names

default,HIVE,ETL

配置能力调度器队列

fs.inmemory.size.mb

300

为reduce阶段合并map输出所需的内存文件系统分配更多的内存

io.sort.mb

300

reduce 排序时的内存上限

mapred.jobtracker.restart.recover

true

默认:false

mapred.reduce.parallel.copies

10

默认:5 ,reduce 并行 copy的线程数

 

 

 

masters

Value

说明

hadoopslave

 

SecondaryNameNode HostName地址

 

 

 

slaves

Value

说明

datanode1

 

DataNode TaskTracker HostName 地址列表



















评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值