hadoop配置文件详解系列(一)-core-site.xml篇
导读:关于hadoop的配置文件,目前其它网站资料中都是只写了几个常用的属性配置,但平时可能也会用到其它属性,这里就一起写出来,供大家参考。本篇先从core-site.xml开始,后续将继续进行其它配置文件的梳理。
属性名称 | 属性值 | 描述 |
hadoop.common.configuration.version | 0.23.0 | 配置文件的版本。 |
hadoop.tmp.dir | /tmp/hadoop-${user.name} | 其它临时目录的父目录,会被其它临时目录用到。 |
io.native.lib.available | TRUE | 是否使用本地库进行bz2和zlib的文件压缩及编解码。 |
hadoop.http.filter.initializers | org.apache.hadoop.http.lib.StaticUserWebFilter | 一个逗号分隔的类名列表,他们必须继承于org.apache.hadoop.http.FilterInitializer,相应的过滤器被初始化后,将应用于所有的JSP和Servlet网页。列表的排序即为过滤器的排序。 |
hadoop.security.authorization | FALSE | 是否启用service级别的授权。 |
hadoop.security.instrumentation.requires.admin | FALSE | 访问servlets (JMX, METRICS, CONF, STACKS)是否需要管理员ACL(访问控制列表)的授权。 |
hadoop.security.authentication | simple | 有两个选项,simple和kerberos,两个的详细区别就自己百度吧。 |
hadoop.security.group.mapping | org.apache.hadoop.security.JniBasedUnixGroupsMappingWithFallback | 用于ACL用户组映射的类,默认的实现类是 org.apache.hadoop.security.JniBasedUnixGroupsMappingWithFallback,定义了JNI是否可用,如果可用,将使用hadoop中的API来实现访问用户组解析,如果不可用,将使用ShellBasedUnixGroupsMapping来实现。 |
hadoop.security.dns.interface | 用于确定Kerberos登录主机的网络接口的名称。 | |
hadoop.security.dns.nameserver | 用于确定Kerberos登录主机的地址。 | |
hadoop.security.dns.log-slow-lookups.enabled | FALSE | 当查询名称时间超过阈值时是否进行记录。 |
hadoop.security.dns.log-slow-lookups.threshold.ms | 1000 | 接上一个属性,这个属性就是设置阈值的。 |
hadoop.security.groups.cache.secs | 300 | 配置用户组映射缓存时间的,当过期时重新获取并缓存。 |
hadoop.security.groups.negative-cache.secs | 30 | 当无效用户频繁访问,用于设置缓存锁定时间。建议设置为较小的值,也可以通过设置为0或负数来禁用此属性。 |
hadoop.security.groups.cache.warn.after.ms | 5000 | 当查询用户组时间超过设置的这个阈值时,则作为警告信息进行记录。 |
hadoop.security.groups.cache.background.reload | FALSE | 是否使用后台线程池重新加载过期的用户组映射。 |
hadoop.security.groups.cache.background.reload.threads | 3 | 接上一个属性,当上个属性为true时,通过此属性控制后台线程的数量。 |
hadoop.security.groups.shell.command.timeout | 0s | 设置shell等待命令执行时间,如果超时,则命令中止,如果设置为0,表示无限等待。 |
hadoop.security.group.mapping.ldap.connection.timeout.ms | 60000 | 设置LDAP的连接超时时间,如果为0或负数,表示无限等待。 |
hadoop.security.group.mapping.ldap.read.timeout.ms | 60000 | 设置LDAP的读取超时时间,如果为0或负数,表示无限等待。 |
hadoop.security.group.mapping.ldap.url | LDAP服务器的地址。 | |
hadoop.security.group.mapping.ldap.ssl | FALSE | 是否使用SSL连接LDAP服务器。 |
hadoop.security.group.mapping.ldap.ssl.keystore | 包含SSL证书的SSL密钥文件的存储路径。 | |
hadoop.security.group.mapping.ldap.ssl.keystore.password.file | 包括SSL密钥文件访问密码的文件路径,如果此属性没有设置,并且hadoop.security.group.mapping.ldap.ssl.keystore.password属性也没有设置,则直接从LDAP指定文件读取密码(注意:此文件只能由运行守护进程的unix用户读取,并且应该是本地文件)。 | |
hadoop.security.group.mapping.ldap.ssl.keystore.password | 保存SSL密钥文件访问密码的别名,如果此属性为空,并且hadoop.security.credential.clear-text-fallback属性为true时,则通过后者获取密码。 | |
hadoop.security.credential.clear-text-fallback | TRUE | 是否将密码保存为明文。 |
hadoop.security.credential.provider.path | 包含证书类型和位置的文件地址列表。 | |
hadoop.security.credstore.java-keystore-provider.password-file | 包含用户自定义密码的文件路径。 | |
hadoop.security.group.mapping.ldap.bind.user | 连接到LDAP服务器时的用户别名,如果LDAP服务器支持匿名绑定,则此属性可以为空值。 | |
hadoop.security.group.mapping.ldap.bind.password.file | 包含绑定用户密码的文件的路径。如果在证书提供程序中没有配置密码,并且属性hadoop.security.group.mapping.ldap.bind.password没有设置,则从文件读取密码。注意:此文件只能由运行守护进程的UNIX用户读取,并且应该是本地文件。 | |
hadoop.security.group.mapping.ldap.bind.password | 绑定用户的密码。此属性名用作从凭据提供程序获取密码的别名。如果无法找到密码,hadoop.security.credential.clear-text-fallback是真的,则使用此属性的值作为密码。 | |
hadoop.security.group.mapping.ldap.base | LDAP连接时搜索的根目录。 | |
hadoop.security.group.mapping.ldap.userbase | 指定用户LDAP连接时搜索的根目录。如果不设置此属性,则使用hadoop.security.group.mapping.ldap.base属性的值。 | |
hadoop.security.group.mapping.ldap.groupbase | 指定用户组LDAP连接时搜索的根目录。如果不设置此属性,则使用hadoop.security.group.mapping.ldap.base属性的值。 | |
hadoop.security.group.mapping.ldap.search.filter.user | (&(objectClass=user)(sAMAccountName={0})) | 搜索LDAP用户时提供的额外的筛选器。 |
hadoop.security.group.mapping.ldap.search.filter.group | (objectClass=group) | 搜索LDAP用户组时提供的额外的筛选器。 |
hadoop.security.group.mapping.ldap.search.attr.memberof | 用户对象的属性,用于标识其组对象。 | |
hadoop.security.group.mapping.ldap.search.attr.member | member | 用户组对象的属性,用于标识其有哪些组成员。 |
hadoop.security.group.mapping.ldap.search.attr.group.name | cn | 用户组对象的属性,用于标识用户组的名称。 |
hadoop.security.group.mapping.ldap.search.group.hierarchy.levels | 0 | 当要确定用户所属的用户组时,此属性用于指定向上查找的层级数目。如果为0,则表示只查询当前用户所属的直接用户组,不再向上查找。 |
hadoop.security.group.mapping.ldap.posix.attr.uid.name | uidNumber | posixAccount的属性,用于成员分组 |
hadoop.security.group.mapping.ldap.posix.attr.gid.name | gidNumber | posixAccount的属性,用户标识组ID。 |
hadoop.security.group.mapping.ldap.directory.search.timeout | 10000 | LDAP SearchControl的属性,用于在搜索和等待结果时设置最大时间限制。如果需要无限等待时间,设置为0。默认值为10秒。单位为毫秒。 |
hadoop.security.group.mapping.providers | 逗号分隔的提供商名称,用于用户组映射。 | |
hadoop.security.group.mapping.providers.combined | TRUE | 标识提供商提供的级是否可以被组合。 |
hadoop.security.service.user.name.key | 此属性用于指定RPC调用的服务主名称,适用于相同的RPC协议由多个服务器实现的情况。 | |
fs.azure.user.agent.prefix | unknown | WASB提供给Azure的前缀,默认包括WASB版本、JAVA运行时版本、此属性的值等。 |
hadoop.security.uid.cache.secs | 14400 | 控制缓存的过期时间。 |
hadoop.rpc.protection | authentication | 一个逗号分隔的安全SASL连接的保护值列表。 |
hadoop.security.saslproperties.resolver.class | 用于连接时解决QOP的SaslPropertiesResolver。 | |
hadoop.security.sensitive-config-keys | secret$ password$ ssl.keystore.pass$ fs.s3.*[Ss]ecret.?[Kk]ey fs.s3a.*.server-side-encryption.key fs.azure.account.key.* credential$ oauth.*token$ hadoop.security.sensitive-config-keys | 一个逗号分隔的或多行的正则表达式列表。 |
hadoop.workaround.non.threadsafe.getpwuid | TRUE | 一些系统已知在调用getpwuid_r和getpwgid_r有问题,这些调用是非线程安全的。这个问题的主要表现特征是JVM崩溃。如果你的系统有这些问题,开启这个选项。默认是关闭的。 |
hadoop.kerberos.kinit.command | kinit | 用于Kerberos证书的定时更新。 |
hadoop.kerberos.min.seconds.before.relogin | 60 | 重新尝试登录Kerberos的最小时间间隔,单位为秒。 |
hadoop.security.auth_to_local | 将Kerberos主体映射到本地用户名。 | |
hadoop.token.files | 具有Hadoop服务授权令牌的令牌缓存文件列表。 | |
io.file.buffer.size | 4096 | 在序列文件中使用的缓冲区大小。这个缓冲区的大小应该是页大小(英特尔x86上为4096)的倍数,它决定读写操作中缓冲了多少数据。 |
io.bytes.per.checksum | 512 | 每个检验和的字节数,不能大于 io.file.buffer.size属性的值。 |
io.skip.checksum.errors | FALSE | 如果为true,当读取序列文件时遇到校验和错误,则跳过条目,而不是抛出异常。 |
io.compression.codecs | 一组可用于压缩/解压缩的表列表,使用逗号进行分隔。 | |
io.compression.codec.bzip2.library | system-native | 用于bzip2编解码的本地代码库,可以通过名称或全路径来指定该库。 |
io.serializations | org.apache.hadoop.io.serializer.WritableSerialization, org.apache.hadoop.io.serializer.avro.AvroSpecificSerialization, org.apache.hadoop.io.serializer.avro.AvroReflectSerialization | 可用于获取序列化和反序列化的序列化类的列表。 |
io.seqfile.local.dir | ${hadoop.tmp.dir}/io/local | 存储中间数据文件的本地目录。 |
io.map.index.skip | 0 | 跳过索引的数量。 |
io.map.index.interval | 128 | MapFile由两部分组成:数据文件和索引文件。在每个设置的时间间隔后,会根据写入的数据文件内容,创建索引对应的索引文件内容。 |
fs.defaultFS | file:/// | 默认文件系统的名称。通常指定namenode的URI地址,包括主机和端口。 |
fs.default.name | file:/// | 不建议使用此属性,建议用fs.defaultFS属性代替。 |
fs.trash.interval | 0 | 检查点被删除的时间间隔,单位为分钟。此属性可以在服务器和客户端上配置。如果服务器上被禁用,则检查客户端配置,如果服务器上被启用,则忽略客户端配置。 |
fs.trash.checkpoint.interval | 0 | 检查点之间的时间间隔,此属性的值应该小于fs.trash.interval属性的值。每次检查指针运行时,它都会创建一个新的检查点,并移除在几分钟前创建的检查点。 |
fs.protected.directories | 一个逗号分隔的目录列表,即使是空的,也不能被超级用户删除。此设置可用于防止重要系统目录因管理员错误而意外删除。 | |
fs.AbstractFileSystem.file.impl | org.apache.hadoop.fs.local.LocalFs | file的抽象文件类。 |
fs.AbstractFileSystem.har.impl | org.apache.hadoop.fs.HarFs | har的抽象文件类。 |
fs.AbstractFileSystem.hdfs.impl | org.apache.hadoop.fs.Hdfs | hdfs的抽象文件类。 |
fs.AbstractFileSystem.viewfs.impl | org.apache.hadoop.fs.viewfs.ViewFs | viewfs的抽象文件类。 |
fs.viewfs.rename.strategy | SAME_MOUNTPOINT | 允许在多个挂载点间重命名。 |
fs.AbstractFileSystem.ftp.impl | org.apache.hadoop.fs.ftp.FtpFs | ftp的抽象文件类。 |
fs.AbstractFileSystem.webhdfs.impl | org.apache.hadoop.fs.WebHdfs | webhdfs的抽象文件类。 |
fs.AbstractFileSystem.swebhdfs.impl | org.apache.hadoop.fs.SWebHdfs | swebhdfs的抽象文件类。 |
fs.ftp.host | 0.0.0.0 | ftp的连接服务器。 |
fs.ftp.host.port | 21 | ftp的连接服务器端口。 |
fs.ftp.data.connection.mode | ACTIVE_LOCAL_DATA_CONNECTION_MODE | ftp客户端的数据连接模式,有如下选项ACTIVE_LOCAL_DATA_CONNECTION_MODE,PASSIVE_LOCAL_DATA_CONNECTION_MODE 和PASSIVE_REMOTE_DATA_CONNECTION_MODE。 |
fs.ftp.transfer.mode | BLOCK_TRANSFER_MODE | ftp的数据传输模式,有如下选项 STREAM_TRANSFER_MODE,BLOCK_TRANSFER_MODE 和COMPRESSED_TRANSFER_MODE。 |
fs.df.interval | 60000 | 磁盘使用统计情况的刷新时间间隔。 |
fs.du.interval | 600000 | 文件空间使用统计情况的刷新时间间隔。 |
fs.s3.awsAccessKeyId | S3使用的AWS访问密钥ID。 | |
fs.s3.awsSecretAccessKey | S3使用的AWS密钥. | |
fs.s3.block.size | 67108864 | S3使用的块大小。 |
fs.s3.buffer.dir | ${hadoop.tmp.dir}/s3 | 该目录用于发送S3前的临时本地目录。 |
fs.s3.maxRetries | 4 | 在向应用程序发出故障之前,读取或写入文件到S3的最大重试次数。 |
fs.s3.sleepTimeSeconds | 10 | 在每次S3重试之间的睡眠时间间隔。 |
fs.swift.impl | org.apache.hadoop.fs.swift.snative.SwiftNativeFileSystem | OpenStack Swift Filesystem的实现类。 |
fs.automatic.close | TRUE | 当为true时,FileSystem的实例会在程序退出时关闭,为false时,不自动退出。 |
fs.s3n.awsAccessKeyId | S3本地文件系统使用的AWS访问密钥ID。 | |
fs.s3n.awsSecretAccessKey | S3本地文件系统使用的AWS密钥. | |
fs.s3n.block.size | 67108864 | S3本地文件系统使用的块大小。 |
fs.s3n.multipart.uploads.enabled | FALSE | 为true时,允许多个上传到本地S3。当上传一个的大小超过fs.s3n.multipart.uploads.block.size属性的大小,则将其分割成块。 |
fs.s3n.multipart.uploads.block.size | 67108864 | 多上传到本地S3时的块大小,默认大小为64MB。 |
fs.s3n.multipart.copy.block.size | 5368709120 | 多拷贝时的块大小,默认大小为5GB。 |
fs.s3n.server-side-encryption-algorithm | 为S3指定服务器端加密算法。默认情况下未设置,而当前唯一允许的值是AES256。 | |
fs.s3a.access.key | S3A文件系统使用的AWS访问密钥ID。 | |
fs.s3a.secret.key | S3A文件系统使用的AWS密钥。 | |
fs.s3a.aws.credentials.provider | 一组com.amazonaws.auth.AWSCredentialsProvider的实现类,按照顺序加载和查询。 | |
fs.s3a.session.token | 当使用org.apache.hadoop.fs.s3a.TemporaryAWSCredentialsProvider时的会话令牌。 | |
fs.s3a.security.credential.provider.path | hadoop.security.credential.provider.path属性的一个子集 | |
fs.s3a.connection.maximum | 15 | S3A的最大连接数。 |
fs.s3a.connection.ssl.enabled | TRUE | 是否启用SSL连接到S3A。 |
fs.s3a.endpoint | AWS S3 连接终端。 | |
fs.s3a.path.style.access | FALSE | 启用S3A path style访问,即禁用默认虚拟的互联网行为。 |
fs.s3a.proxy.host | S3A连接代理的主机名。 | |
fs.s3a.proxy.port | S3A连接代理的端口,如果未设置,默认为80或443。 | |
fs.s3a.proxy.username | S3A连接代理的用户名。 | |
fs.s3a.proxy.password | S3A连接代理的密码。 | |
fs.s3a.proxy.domain | S3A连接代理的域。 | |
fs.s3a.proxy.workstation | S3A连接代理的工作站。 | |
fs.s3a.attempts.maximum | 20 | 当出现错误时的最大重试次数。 |
fs.s3a.connection.establish.timeout | 5000 | Socket连接建立超时时间,单位为毫秒。 |
fs.s3a.connection.timeout | 200000 | Socket连接保持时间,单位为毫秒。 |
fs.s3a.socket.send.buffer | 8192 | Socket 发送缓冲大小,单位为字节。 |
fs.s3a.socket.recv.buffer | 8192 | Socket 接收缓冲大小,单位为字节。 |
fs.s3a.paging.maximum | 5000 | 在读取目录列表时,从S3A同时请求的密钥最大数量。 |
fs.s3a.threads.max | 10 | 文件请求的最大并发线程数。 |
fs.s3a.threads.keepalivetime | 60 | 线程空间多长时间后,即终止。单位为秒。 |
fs.s3a.max.total.tasks | 5 | 可以并发执行的操作数。 |
fs.s3a.multipart.size | 100M | upload或copy操作,当文件超过多大时,即拆分。单位可以为K/M/G/T/P。 |
fs.s3a.multipart.threshold | 2147483647 | upload或copy或rename操作,当文件超过多大时,即拆分。单位可以为K/M/G/T/P,不写表示字节。 |
fs.s3a.multiobjectdelete.enable | TRUE | 当启用时,多个单对象的删除,被单个多对象的删除替代,以减少请求数。 |
fs.s3a.acl.default | 选项有Private、PublicRead,、PublicReadWrite、 AuthenticatedRead、LogDeliveryWrite、 BucketOwnerRead、 or BucketOwnerFullControl。 | |
fs.s3a.multipart.purge | FALSE | 当为true时,清除多文件上传失败时的文件。 |
fs.s3a.multipart.purge.age | 86400 | 清理多文件上传的最小秒数。 |
fs.s3a.server-side-encryption-algorithm | 为S3A指定服务器端加密算法,可以为 'AES256' (for SSE-S3)、 'SSE-KMS' 或 'SSE-C'. | |
fs.s3a.server-side-encryption.key | 如果 fs.s3a.server-side-encryption-algorithm属性值为'SSE-KMS' or 'SSE-C',则使用特定的加密密钥。在SSE-C的情况下,这个属性的值应该是Base64编码的密钥,在SSE-KMS的情况下,如果该属性为空,则使用默认的S3KMS密钥,否则应将该属性设置为特定的KMS密钥ID。 | |
fs.s3a.signing-algorithm | 重写默认签名算法。 | |
fs.s3a.block.size | 32M | S3A的块大小。 |
fs.s3a.buffer.dir | ${hadoop.tmp.dir}/s3a | 用于缓冲上传文件的目录。 |
fs.s3a.fast.upload | FALSE | 是否启用基于增量块的快速上传机制。 |
fs.s3a.fast.upload.buffer | disk | 选项可以为disk/array/bytebuffer。 |
fs.s3a.fast.upload.active.blocks | 4 | 单个输出流可以激活的最大块数。 |
fs.s3a.readahead.range | 64K | 在关闭和重新打开S3 HTTP连接之前在seek()提前读取的字节。 |
fs.s3a.user.agent.prefix | 设置一个自定义值,作为发送到S3的HTTP请求的头部。 | |
fs.s3a.metadatastore.authoritative | FALSE | 当为true时,允许元数据作为真实的数据源。 |
fs.s3a.metadatastore.impl | org.apache.hadoop.fs.s3a.s3guard.NullMetadataStore | 实现S3A的元数据存储类的完全限定名。 |
fs.s3a.s3guard.cli.prune.age | 86400000 | 删除命令执行后,元数据在设定时间后被删除,单位为毫秒。 |
fs.s3a.impl | org.apache.hadoop.fs.s3a.S3AFileSystem | S3A文件系统的实现类 。 |
fs.s3a.s3guard.ddb.region | AWS DynamoDB连接域。 | |
fs.s3a.s3guard.ddb.table | DynamoDB操作表名,如果此属性没有被设置,则使用S3的桶名。 | |
fs.s3a.s3guard.ddb.table.create | FALSE | 当为true时,S3A客户端将允许创建不存在的表。 |
fs.s3a.s3guard.ddb.table.capacity.read | 500 | 读操作的吞吐量设置。 |
fs.s3a.s3guard.ddb.table.capacity.write | 100 | 写操作的吞吐量设置。 |
fs.s3a.s3guard.ddb.max.retries | 9 | 批量DynamoDB操作报错或取消前的最大重试次数。 |
fs.s3a.s3guard.ddb.background.sleep | 25 | 批量删除时,每个删除间的时间间隔,单位为毫秒。 |
fs.AbstractFileSystem.s3a.impl | org.apache.hadoop.fs.s3a.S3A | S3A抽象文件系统的实现类。 |
fs.wasb.impl | org.apache.hadoop.fs.azure.NativeAzureFileSystem | 原生Azure文件系统的实现类。 |
fs.wasbs.impl | org.apache.hadoop.fs.azure.NativeAzureFileSystem$Secure | 安全原生Azure文件系统的实现类。 |
fs.azure.secure.mode | FALSE | 当为true时,允许 fs.azure.NativeAzureFileSystem使用SAS密钥与Azure存储进行通信。 |
fs.azure.local.sas.key.mode | FALSE | 当为true时,fs.azure.NativeAzureFileSystem使用本地SAS密钥生成,当为false,此属性无意义。 |
fs.azure.sas.expiry.period | 90d | 生成的SAS密钥过期时间,单位可以是ms(millis), s(sec), m(min), h(hour), d(day) 。 |
fs.azure.authorization | FALSE | 当为true时,启用WASB的授权支持。 |
fs.azure.authorization.caching.enable | TRUE | 当为true时,开户授权结果的缓存。 |
fs.azure.saskey.usecontainersaskeyforallaccess | TRUE | 当为true时,使用容器内的SAS密钥访问blob,专用密钥无效。 |
fs.adl.impl | org.apache.hadoop.fs.adl.AdlFileSystem | |
fs.AbstractFileSystem.adl.impl | org.apache.hadoop.fs.adl.Adl | |
io.seqfile.compress.blocksize | 1000000 | 块压缩序列文件中压缩的最小块大小。 |
io.mapfile.bloom.size | 1048576 | BloomMapFile中的bloom过滤器大小。 |
io.mapfile.bloom.error.rate | 0.005 | BloomMapFile中的bloom过滤器的假负率,默认是0.5%。 |
hadoop.util.hash.type | murmur | Hash的默认实现,有两个选项murmur和jenkins。 |
ipc.client.idlethreshold | 4000 | 定义连接的阈值数量,之后将检查连接是否空闲。 |
ipc.client.kill.max | 10 | 定义一次断开的客户端的最大数量。 |
ipc.client.connection.maxidletime | 10000 | 空间连接断开时间,单位为毫秒。 |
ipc.client.connect.max.retries | 10 | 客户端重新建立服务器连接的重试次数。 |
ipc.client.connect.retry.interval | 1000 | 两次重新建立连接之间的时间间隔,单位为毫秒。 |
ipc.client.connect.timeout | 20000 | 客户端通过socket连接到服务器的超时时间。 |
ipc.client.connect.max.retries.on.timeouts | 45 | 客户端通过socket重新连接到服务器的重试次数。 |
ipc.client.tcpnodelay | TRUE | 当为true时,使用TCP_NODELAY标志绕过Nagle的算法传输延迟。 |
ipc.client.low-latency | FALSE | 当为true时,使用低延迟在QoS标记。 |
ipc.client.ping | TRUE | 当为true时,如果读取响应超时,则向服务器发送ping命令。 |
ipc.ping.interval | 60000 | 等待服务器响应的超时时间,单位为毫秒。当ipc.client.ping属性为true时,客户端将在不接收字节的情况下发送Ping命令。 |
ipc.client.rpc-timeout.ms | 0 | 等待服务器响应的超时时间,单位为毫秒。当ipc.client.ping属性为true,并且这个属性的时间比 ipc.ping.interval属性的值大时,这个属性的时间将被修改为 ipc.ping.interval的最大倍数。 |
ipc.server.listen.queue.size | 128 | 接受客户端连接的服务器的侦听队列的长度。 |
ipc.server.log.slow.rpc | FALSE | 此设置有助于排除各种服务的性能问题。如果这个值设置为true,将被记录请求。 |
ipc.maximum.data.length | 67108864 | 服务器可以接受的最大IPC消息长度(字节)。 |
ipc.maximum.response.length | 134217728 | 服务器可以接受的最大IPC消息长度(字节)。设置为0禁用。 |
hadoop.security.impersonation.provider.class | ImpersonationProvider接口的实现类,用于授权一个用户是否可以模拟特定用户。如果未指定,则使用DefaultImpersonationProvider实现。 | |
hadoop.rpc.socket.factory.class.default | org.apache.hadoop.net.StandardSocketFactory | 默认使用SocketFactory,参数格式为package.FactoryClassName。 |
hadoop.rpc.socket.factory.class.ClientProtocol | 连接到DFS的SocketFactory,如果为空,则使用 hadoop.rpc.socket.class.default属性的值。 | |
hadoop.socks.server | SocksSocketFactory使用的SOCKS服务器的地址(主机:端口)。 | |
net.topology.node.switch.mapping.impl | org.apache.hadoop.net.ScriptBasedMapping | DNSToSwitchMapping的默认实现,其调用net.topology.script.file.name属性的值来解析节点名称。 |
net.topology.impl | org.apache.hadoop.net.NetworkTopology | NetworkTopology的默认实现,它是典型的三层拓扑结构。 |
net.topology.script.file.name | 该脚本被用于解析DNS的名称,例如,脚本将接收host.foo.bar,然后返回 /rack1。 | |
net.topology.script.number.args | 100 | net.topology.script.file.name属性中参数的最大数量。 |
net.topology.table.file.name | 当net.topology.node.switch.mapping.impl属性的值为 org.apache.hadoop.net.TableMapping时适用,表示一个拓扑文件。该文件格式是两列文本,列由空白分隔。第一列是DNS或IP地址,第二列指定地址映射的机架。如果没有找到对应于集群中的主机的条目,则假设默认机架。 | |
file.stream-buffer-size | 4096 | 流文件的缓冲区大小,这个大小应该是页大小的位数(X86为4096)。 |
file.bytes-per-checksum | 512 | 每个校验和的字节数。 |
file.client-write-packet-size | 65536 | 客户机写入的数据包大小。 |
file.blocksize | 67108864 | 块大小。 |
file.replication | 1 | 复制因子。 |
s3.stream-buffer-size | 4096 | 流文件的缓冲区大小,这个大小应该是页大小的位数(X86为4096)。 |
s3.bytes-per-checksum | 512 | 每个校验和的字节数,该数值不能大于 s3.stream-buffer-size属性的值。 |
s3.client-write-packet-size | 65536 | 客户机写入的数据包大小。 |
s3.blocksize | 67108864 | 块大小。 |
s3.replication | 3 | 复制因子。 |
s3native.stream-buffer-size | 4096 | 流文件的缓冲区大小,这个大小应该是页大小的位数(X86为4096)。 |
s3native.bytes-per-checksum | 512 | 每个校验和的字节数,该数值不能大于 s3native.stream-buffer-size属性的值。 |
s3native.client-write-packet-size | 65536 | 客户机写入的数据包大小。 |
s3native.blocksize | 67108864 | 块大小。 |
s3native.replication | 3 | 复制因子。 |
ftp.stream-buffer-size | 4096 | 流文件的缓冲区大小,这个大小应该是页大小的位数(X86为4096)。 |
ftp.bytes-per-checksum | 512 | 每个校验和的字节数,该数值不能大于ftp.stream-buffer-size属性的值。 |
ftp.client-write-packet-size | 65536 | 客户机写入的数据包大小。 |
ftp.blocksize | 67108864 | 块大小。 |
ftp.replication | 3 | 复制因子。 |
tfile.io.chunk.size | 1048576 | chunk大小,单位为字节,默认为1MB。 |
tfile.fs.output.buffer.size | 262144 | FSDataOutputStream中使用的缓冲区大小。 |
tfile.fs.input.buffer.size | 262144 | FSDataInputStream使用的缓冲区大小。 |
hadoop.http.authentication.type | simple | 定义了Oozie HTTP终端的认证方式,支持simple和kerberos。 |
hadoop.http.authentication.token.validity | 36000 | 验证令牌的有效时长,单位为秒。 |
hadoop.http.authentication.signature.secret.file | ${user.home}/hadoop-http-auth-signature-secret | 签署认证令牌的签名秘密。同样的秘密应该用于JT/NN/DN/TT配置。 |
hadoop.http.authentication.cookie.domain | 用于存储身份验证令牌的HTTP Cookie域。为了授权在所有Hadoop节点Web控制台上正确工作,必须正确设置域。重要事项:当使用IP地址时,浏览器忽略具有域设置的Cookie。为了使该设置正常工作,集群中的所有节点必须配置为具有主机名的URL。 | |
hadoop.http.authentication.simple.anonymous.allowed | TRUE | 当使用'simple'认证时,是否允许匿名请求。 |
hadoop.http.authentication.kerberos.principal | HTTP/_HOST@LOCALHOST | HTTP终端中使用的Kerberos principal,该principal必须以 'HTTP/'开头。 |
hadoop.http.authentication.kerberos.keytab | ${user.home}/hadoop.keytab | keytab文件的位置。 |
hadoop.http.cross-origin.enabled | FALSE | 是否启用cross-origin (CORS)过滤器。 |
hadoop.http.cross-origin.allowed-origins | * | 需要cross-origin (CORS)支持的web服务的来源列表,用逗号分隔。 |
hadoop.http.cross-origin.allowed-methods | GET,POST,HEAD | 需要cross-origin (CORS)支持的方法列表,用逗号分隔。 |
hadoop.http.cross-origin.allowed-headers | X-Requested-With,Content-Type,Accept,Origin | 需要cross-origin (CORS)支持的web服务的的头部,用逗号分隔。 |
hadoop.http.cross-origin.max-age | 1800 | 需要cross-origin (CORS)支持的web服务缓存支持秒数。 |
dfs.ha.fencing.methods | fencing方法列表。 | |
dfs.ha.fencing.ssh.connect-timeout | 30000 | SSH连接超时时长,单位为毫秒。 |
dfs.ha.fencing.ssh.private-key-files | SSH私钥文件。 | |
hadoop.http.staticuser.user | dr.who | 呈现内容时在静态Web筛选器上进行过滤的用户名,比如在HDFS web UI中的过滤。 |
ha.zookeeper.quorum | ZooKeeper服务器地址列表,用逗号分隔,可以被ZKFailoverController用于自动故障转移。 | |
ha.zookeeper.session-timeout.ms | 5000 | ZKFC连接到ZooKeeper的超时时长,将该值设置为较低的值意味着服务器崩溃将被更快地检测到,但在瞬态错误或网络错误的情况下,就会使故障转移过于激进。 |
ha.zookeeper.parent-znode | /hadoop-ha | ZKFC下的存储信息的znode。 |
ha.zookeeper.acl | world:anyone:rwcda | znode使用的ZooKeeper ACL列表,用逗号分隔。格式同ZooKeeper CLI。如果ACL本身包含秘密,那么您可以指定一个文件的路径,用“@”符号前缀,并且该配置的值将从内部加载。 |
ha.zookeeper.auth | 连接到ZooKeeper时,将该列表加入到认证列表,此列表用逗号分隔。 | |
hadoop.ssl.keystores.factory.class | org.apache.hadoop.security.ssl.FileBasedKeyStoresFactory | 用于检索证书的密钥存储工厂。 |
hadoop.ssl.require.client.cert | FALSE | 是否需要客户端证书。 |
hadoop.ssl.hostname.verifier | DEFAULT | 提供HttpsURL连接主机名验证器。有以下选项:DEFAULT, STRICT, STRICT_IE6, DEFAULT_AND_LOCALHOST 和 ALLOW_ALL。 |
hadoop.ssl.server.conf | ssl-server.xml | 提取SSL服务器密钥存储信息的资源文件,这个文件通过在classpath中查询。默认为hadoop下的conf/ 目录。 |
hadoop.ssl.client.conf | ssl-client.xml | 提取SSL客户端密钥存储信息的资源文件,这个文件通过在classpath中查询。默认为hadoop下的conf/ 目录。 |
hadoop.ssl.enabled | FALSE | 不建议使用,建议用dfs.http.policy and yarn.http.policy代替。 |
hadoop.ssl.enabled.protocols | TLSv1,SSLv2Hello,TLSv1.1,TLSv1.2 | 支持的SSL协议列表。The supported SSL protocols. |
hadoop.jetty.logs.serve.aliases | TRUE | 对于jetty的服务是否启用别名。 |
fs.permissions.umask-mode | 22 | 创建文件或目录时的umask。例如"022" (符号表示就是 u=rwx,g=r-x,o=r-x ),或者 "u=rwx,g=rwx,o=" (用八进制表示就是007)。 |
ha.health-monitor.connect-retry-interval.ms | 1000 | 重试连接到服务的频率。 |
ha.health-monitor.check-interval.ms | 1000 | 多久检查一次服务 |
ha.health-monitor.sleep-after-disconnect.ms | 1000 | 在异常RPC错误之后,休眠多长时间。 |
ha.health-monitor.rpc-timeout.ms | 45000 | 实际 monitorHealth() 调用超时时间。 |
ha.failover-controller.new-active.rpc-timeout.ms | 60000 | FC等待新任务的超时时间,在设置时间内有新任务,即重新进入激活状态。 |
ha.failover-controller.graceful-fence.rpc-timeout.ms | 5000 | FC等待旧任务的超时时间,然后进入待机。 |
ha.failover-controller.graceful-fence.connection.retries | 1 | graceful fencing中FC连接的重试次数。 |
ha.failover-controller.cli-check.rpc-timeout.ms | 20000 | CLI (manual) FC等待monitorHealth, getServiceState的超时时间。 |
ipc.client.fallback-to-simple-auth-allowed | FALSE | 当客户端被配置为尝试安全连接,但尝试连接到不安全的服务器时,该服务器可以指示客户端切换到SASL SIMPLE(非安全)认证。此设置控制客户端是否将接受来自服务器的此指令。当FALSE(默认)时,客户端将不允许退回到简单的身份验证,并将中止连接。 |
fs.client.resolve.remote.symlinks | TRUE | 在访问远程Hadoop文件系统时,是否解析符号连接。当为false时,如果遇到符号连接,则触发异常。此设置对于本地文件系统不适用,对于本地文件系统,会自动解析符号连接。 |
nfs.exports.allowed.hosts | * rw | 默认情况下,所有客户端都可以导出。该属性的值包含机构号和访问权限,由空格分隔。机器名称的格式可以是一个单一的主机,一个java正则表达式,或一个IPv4地址。访问特权使用RW或RO来指定机器的读/写权限。如果未提供访问特权,则默认为只读。条目由“;”分隔。例如:“192.1680.0/22RW;主机。*.Stase\.com;Hoo1.Test.Org Ro;”。只有更新了NFS网关之后,才能重新启动该属性。 |
hadoop.user.group.static.mapping.overrides | dr.who=; | 用户到组的静态映射。如果指定的用户在系统中可用,则这将覆盖组。换句话说,这些用户不会出现组查找,而是使用在这个配置中映射的组。映射应采用这种格式。USER1=GROMP1,GROP2;USER2=;USER3= GROP2;默认“DR.WH=”将考虑“D.WHO”作为没有组的用户。 |
rpc.metrics.quantile.enable | FALSE | 当为true,并且rpc.metrics.percentiles.intervals属性为一组逗号分隔的度量时,将在百分位50/75/90/95/99时,加入rpc metrics。 |
rpc.metrics.percentiles.intervals | 接上一属性,和rpc.metrics.quantile.enable配合使用。 | |
hadoop.security.crypto.codec.classes.EXAMPLECIPHERSUITE | 对于给定的加密编解码器的前缀,包含一个逗号分隔的给定密码编解码器(例如EXAMPLECIPHERSUITE)的实现类。如果可用的话,第一个实现将被使用,其他的则是回退。 | |
hadoop.security.crypto.codec.classes.aes.ctr.nopadding | org.apache.hadoop.crypto.OpensslAesCtrCryptoCodec, org.apache.hadoop.crypto.JceAesCtrCryptoCodec | AES/CTR/NopAudio的加密编解码器实现类,用逗号分隔。如果可用的话,第一个实现将被使用,其他的则是回退。 |
hadoop.security.crypto.cipher.suite | AES/CTR/NoPadding | 用于加密编解码器的密码套件。 |
hadoop.security.crypto.jce.provider | CryptoCodec中使用的JCE提供程序名称。 | |
hadoop.security.crypto.buffer.size | 8192 | CryptoInputStream和CryptoOutputStream使用的缓冲区大小。 |
hadoop.security.java.secure.random.algorithm | SHA1PRNG | java安全随机算法。 |
hadoop.security.secure.random.impl | 安全随机的实现。 | |
hadoop.security.random.device.file.path | /dev/urandom | OS安全随机设备文件路径。 |
hadoop.security.key.provider.path | 在管理区域密钥时使用的密钥提供程序。对于HDFS客户端,提供程序路径将与NAMENODE的提供程序路径相同。 | |
fs.har.impl.disable.cache | TRUE | 当为true时,不缓存“HAR”文件系统实例。 |
hadoop.security.kms.client.authentication.retry-count | 1 | 在认证失败时重试连接到KMS的次数。 |
hadoop.security.kms.client.encrypted.key.cache.size | 500 | EncryptedKeyVersion缓存队列的大小。 |
hadoop.security.kms.client.encrypted.key.cache.low-watermark | 0.3f | 如果EncryptedKeyVersion缓存队列大小低于watermark,队列将被重新调度填充。 |
hadoop.security.kms.client.encrypted.key.cache.num.refill.threads | 2 | 重新填充EncryptedKeyVersion缓存队列的线程数。 |
hadoop.security.kms.client.encrypted.key.cache.expiry | 43200000 | 密钥过期时间,默认为12小时。 |
hadoop.security.kms.client.timeout | 60 | KMS连接超时时间。 |
hadoop.security.kms.client.failover.sleep.base.millis | 100 | 在故障转移尝试之间以指数形式增加时长,这是迄今为止尝试的数目的函数,具有+/- 50%的随机因子。此选项指定在故障转移计算中使用的基值。第一次故障转移将立即重试。第二次故障转移尝试将延迟至少hadoop.security.client.failover.sleep.base.millis属性的值之后……单位为毫秒 |
hadoop.security.kms.client.failover.sleep.max.millis | 2000 | 在故障转移尝试之间以指数形式增加时长,这是迄今为止尝试的数目的函数,具有+/- 50%的随机因子。此选项指定在故障转移之间等待的最大值。具体来说,两个故障转移尝试之间的时间将不超过 hadoop.security.client.failover.sleep.max.millis属性的值,单位为毫秒。 |
ipc.server.max.connections | 0 | 服务器接受的最大并发连接数。 |
hadoop.registry.rm.enabled | FALSE | 是否在YARN Resource Manager中启用注册表。 |
hadoop.registry.zk.root | /registry | 注册表的根zookeeper节点。 |
hadoop.registry.zk.session.timeout.ms | 60000 | Zookeeper会话超时时间,单位为毫秒。 |
hadoop.registry.zk.connection.timeout.ms | 15000 | Zookeeper连接超时时间,单位为毫秒。 |
hadoop.registry.zk.retry.times | 5 | Zookeeper连接重试最大次数。 |
hadoop.registry.zk.retry.interval.ms | 1000 | Zookeeper连接重试间隔。 |
hadoop.registry.zk.retry.ceiling.ms | 60000 | Zookeeper重试的时长限制,单位为毫秒。 |
hadoop.registry.zk.quorum | localhost:2181 | 绑定注册表的zookeeper的主机名列表。 |
hadoop.registry.secure | FALSE | 注册表是否是安全的。 |
hadoop.registry.system.acls | sasl:yarn@, sasl:mapred@, sasl:hdfs@ | 可以安全访问注册表的 zookeeper ACL列表。 |
hadoop.registry.kerberos.realm | Kerberos域。 | |
hadoop.registry.jaas.context | Client | 定义 JAAS上下文的密钥,用于安全模式中。 |
hadoop.shell.missing.defaultFs.warning | FALSE | 如果fs.defaultFS属性未设置,则在hdfs中启用shell命令打印警告信息。 |
hadoop.shell.safely.delete.limit.num.files | 100 | 使用hadoop fs -rm的-safe选项,以避免意外删除大目录。 当启用时,如果要删除的文件数量大于该限制,则-RM命令需要确认。默认的限制是100个文件。如果限制为0或在-RM命令中未指定安全性,则禁用警告。 |
fs.client.htrace.sampler.classes | hadoop文件系统客户端使用的HTrace Samplers类名。 | |
hadoop.htrace.span.receiver.classes | hadoop中使用的Span Receivers类名。 | |
hadoop.http.logs.enabled | TRUE | 当为true时,启用hadoop守护进程上的/logs终端。 |
fs.client.resolve.topology.enabled | FALSE | 是否使用net.topology.node.switch.mapping.impl属性的值来计算客户端到远程机器之间的网络距离。 |
fs.adl.impl | org.apache.hadoop.fs.adl.AdlFileSystem | |
fs.AbstractFileSystem.adl.impl | org.apache.hadoop.fs.adl.Adl | |
adl.feature.ownerandgroup.enableupn | FALSE | 为了获得最佳性能,建议使用FALSE。 |
fs.adl.oauth2.access.token.provider.type | ClientCredential | 定义了Azure Active Directory OAuth2访问令牌提供程序类型。 |
fs.adl.oauth2.client.id | OAuth2客户端ID。 | |
fs.adl.oauth2.credential | OAuth2访问密钥。 | |
fs.adl.oauth2.refresh.url | OAuth2令牌终端。 | |
fs.adl.oauth2.refresh.token | OAuth2刷新令牌。 | |
fs.adl.oauth2.access.token.provider | OAuth2访问令牌提供程序的类名。 | |
fs.adl.oauth2.msi.port | MSI令牌服务的本地端口,端口是在创建Azure VM时被指定的。如果未被指定,则用默认的50342。 | |
fs.adl.oauth2.devicecode.clientapp.id | ADD本地app的ID。 | |
hadoop.caller.context.enabled | FALSE | 当为true时,附加的内容会被写入到namenode的log。 |
hadoop.caller.context.max.size | 128 | 调用内容的最大字节数。 |
hadoop.caller.context.signature.max.size | 40 | 服务器中允许签名的最大字节。 |
seq.io.sort.mb | 100 | 当使用SequenceFile.Sorter时,可以用于排序的缓冲区总大小。单位为兆字节。默认情况下,每个合并流为1MB。 |
seq.io.sort.factor | 100 | 当使用SequenceFile.Sorter时,允许同时合并的流数量。 |
hadoop.zk.address | ZooKeeper服务器地址。 | |
hadoop.zk.num-retries | 1000 | 尝试连接到ZooKeeper的数量。 |
hadoop.zk.retry-interval-ms | 1000 | 连接到ZooKeeper的重试时间间隔,单位为毫秒。 |
hadoop.zk.timeout-ms | 10000 | ZooKeeper会话超时时间,单位为毫秒。 |
hadoop.zk.acl | world:anyone:rwcda | 用于ZooKeeper znode的ACL。 |
hadoop.zk.auth | 为hadoop.zk.acl属性中的ACL指定认证方式。 |