记录一下Hadoop的配置和说明,用到新的配置项会补充进来,不定期更新。以配置文件名划分
以hadoop 1.x配置为例
core-site.xml
name
value
Description
fs.default.name
hdfs://hadoopmaster:9000
定义HadoopMaster的URI和端口
fs.checkpoint.dir
/opt/data/hadoop1/hdfs/namesecondary1
定义hadoop的name备份的路径,官方文档说是读取这个,写入dfs.name.dir
fs.checkpoint.period
1800
定义name备份的备份间隔时间,秒为单位,只对snn生效,默认一小时
fs.checkpoint.size
33554432
以日志大小间隔做备份间隔,只对snn生效,默认64M
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
(排版调整,实际配置不要回车)
Hadoop所使用的编×××,gzip和bzip2为自带,lzo需安装hadoopgpl或者kevinweil,逗号分隔,snappy也需要单独安装
io.compression.codec.lzo.class
com.hadoop.compression.lzo.LzoCodec
LZO所使用的压缩编码器
topology.script.file.name
/hadoop/bin/RackAware.py
机架感知脚本位置
topology.script.number.args
1000
机架感知脚本管理的主机数,IP地址
fs.trash.interval
10800
HDFS垃圾箱设置,可以恢复误删除,分钟数,0为禁用,添加该项无需重启hadoop
hadoop.http.filter.initializers
org.apache.hadoop.security.
AuthenticationFilterInitializer
需要jobtracker,tasktracker
namenode,datanode等http访问端口用户验证使用,需配置所有节点
hadoop.http.authentication.type
simple | kerberos | #AUTHENTICATION_HANDLER_CLASSNAME#
验证方式,默认为简单,也可自己定义class,需配置所有节点
hadoop.http.authentication.
token.validity
36000
验证令牌的有效时间,需配置所有节点
signature.secret
默认可不写参数
默认不写在hadoop启动时自动生成私密签名,需配置所有节点
hadoop.http.authentication.cookie.domain
domian.tld
http验证所使用的cookie的域名,IP地址访问则该项无效,必须给所有节点都配置域名才可以。
simple.anonymous.allowed
true | false
简单验证专用,默认允许匿名访问,true
kerberos.principal
HTTP/localhost@$LOCALHOST
Kerberos验证专用,参加认证的实体机必须使用HTTP作为K的Name
kerberos.keytab
/home/xianglei/hadoop.keytab
Kerberos验证专用,密钥文件存放位置
hadoop.security.authorization
true|false
Hadoop服务层级验证安全验证,需配合hadoop-policy.xml使用,配置好以后用dfsadmin,mradmin -refreshServiceAcl刷新生效
io.file.buffer.size
131072
用作序列化文件处理时读写buffer的大小
hadoop.security.authentication
simple | kerberos
hadoop本身的权限验证,非http访问,simple或者kerberos
hadoop.logfile.size
1000000000
设置日志文件大小,超过则滚动新日志
hadoop.logfile.count
20
最大日志数
io.bytes.per.checksum
1024
每校验码所校验的字节数,不要大于io.file.buffer.size
io.skip.checksum.errors
处理序列化文件时跳过校验码错误,不抛异常。默认false
io.serializations
org.apache.hadoop.io.
serializer.WritableSerialization
(排版需要。实际配置不要回车)
序列化的编×××
io.seqfile.compress.blocksize
1024000
块压缩的序列化文件的最小块大小,字节
webinterface.private.actions
设为true,则JT和NN的tracker网页会出现杀任务删文件等操作连接,默认是false
结合Apache手册和公司里用的实际配置编写,实际根据硬件配置的不同,参数大小需做调整,目前参数基于namenode 96G内存,datanode 32G内存。有些har,s3,local这样的fs的implement因为不太会用到,所以没写。
水平有限,参数描述理解或翻译有误见谅。