hadoop配置文件詳解系列(二)-hdfs-site.xml篇

上一篇介紹了core-site.xml的配置,本篇繼續介紹hdfs-site.xml的配置。
屬性名稱
屬性值
描述
hadoop.hdfs.configuration.version 1 配置文件的版本
dfs.namenode.rpc-address   處理全部客戶端請求的RPC地址,若在HA場景中,可能有多個namenode,就把名稱ID添加到進來。該屬性的格式爲nn-host1:rpc-port。
dfs.namenode.rpc-bind-host   RPC服務器的真實地址,若是爲空,則使用dfs.namenode.rpc-address屬性中配置的主機名。該屬性若是在HA場景中,能夠在每一個namenode中都指定。若是設置爲0.0.0.0,則會在此namenode中監聽全部的接口。
dfs.namenode.servicerpc-address   用於HDFS服務通訊的RPC地址,全部的backupnode,datanode和其它服務都應該鏈接到這個地址。若是該屬性未設置,則使用dfs.namenode.rpc-address屬性的值。
dfs.namenode.servicerpc-bind-host   RPC服務器中服務的真實地址,若是爲空,則使用dfs.namenode.servicerpc-bind-host屬性中配置的主機名。該屬性若是在HA場景中,能夠在每一個namenode中都指定。若是設置爲
dfs.namenode.lifeline.rpc-address   namenode rpc 生命線地址。用於將實現輕量級的心跳檢測,若是該屬性爲空,則不啓用lifeline服務器。默認狀況下,該屬性是空的。
dfs.namenode.lifeline.rpc-bind-host   生命線RPC服務器的真實地址。
dfs.namenode.secondary.http-address 0.0.0.0:50090 secondary namenode HTTP服務器地址和端口。
dfs.namenode.secondary.https-address 0.0.0.0:50091 secondary namenode HTTPS服務器地址和端口。
dfs.datanode.address 0.0.0.0:50010 datanode服務器地址和端口。
dfs.datanode.http.address 0.0.0.0:50075 datanode HTTP服務器地址和端口。
dfs.datanode.ipc.address 0.0.0.0:50020 datanode IPC服務器地址和端口。
dfs.datanode.handler.count 10 datanode的服務器線程數。
dfs.namenode.http-address 0.0.0.0:50070 namenode web UI監聽的地址和端口。
dfs.namenode.http-bind-host   HTTP服務器綁定的真實地址。
dfs.namenode.heartbeat.recheck-interval 300000 心跳檢測的時間間隔,單位是毫秒。
dfs.http.policy HTTP_ONLY 用於配置是否在HDFS上支持HTTPS(SSL)。選項有HTTP_ONLY:只支持HHTPS; HTTPS_ONLY:只支持HTTPS; HTTPS_AND_HTTPS:同時支持HTTP和HTTPS。
dfs.client.https.need-auth FALSE 是否須要SSL客戶端證書身份驗證。
dfs.client.cached.conn.retry 3 HDFS客戶端從緩存中提取套接字的次數。一旦超過這個數量,客戶端將嘗試建立一個新的套接字。
dfs.https.server.keystore.resource ssl-server.xml 用於提取SSL服務器密鑰存儲信息的資源文件。
dfs.client.https.keystore.resource ssl-client.xml 用於提取SSL客戶端密鑰存儲信息的資源文件。
dfs.datanode.https.address 0.0.0.0:50475 datanode安全http服務器地址和端口。
dfs.namenode.https-address 0.0.0.0:50470 namenode安全http服務器地址和端口。
dfs.namenode.https-bind-host   HTTPS的真實地址。
dfs.datanode.dns.interface default datanode的網絡接口名稱,例如eth2。建議使用hadoop.security.dns.interface代替dfs.datanode.dns.interface。
dfs.datanode.dns.nameserver default DNS服務器的主機名或IP地址。建議使用hadoop.security.dns.nameserver代替dfs.datanode.dns.nameserver。
dfs.namenode.backup.address 0.0.0.0:50100 backup節點服務器地址和端口。若是端口爲0,那麼服務器將在自由端口啓動。
dfs.namenode.backup.http-address 0.0.0.0:50105 backup節點http服務器地址和端口。若是端口爲0,那麼服務器將在自由端口啓動。
dfs.namenode.replication.considerLoad TRUE 在選擇目標的時候,是否考慮目標的負載狀況。
dfs.namenode.replication.considerLoad.factor 2 在dfs.namenode.replication.considerLoad屬性設置爲true的狀況下,當節點的負載超過平均值時,則拒絕寫入。
dfs.default.chunk.view.size 32768 在瀏覽器上能查看文件的字節數。
dfs.datanode.du.reserved 0 每卷保留字節的空間。
dfs.namenode.name.dir file://${hadoop.tmp.dir}/dfs/name 存放namenode的名稱表(fsimage)的目錄,若是這是一個逗號分隔的目錄列表,那麼在全部目錄中複製名稱表,用於冗餘。
dfs.namenode.name.dir.restore FALSE 若是爲true,則容許namenode嘗試恢復以前失敗的dfs.namenode.name.dir目錄。當啓用時,在檢查點期間會嘗試恢復任何失敗的目錄。
dfs.namenode.fs-limits.max-component-length 255 定義路徑中每一個組件中UTF-8編碼的最大字節數。0的值將禁用檢查。 
dfs.namenode.fs-limits.max-directory-items 1048576 定義目錄可能包含的最大項目數。沒法將屬性設置爲小於1或大於6400000的值。 
dfs.namenode.fs-limits.min-block-size 1048576 最小的塊大小,單位爲字節。
dfs.namenode.fs-limits.max-blocks-per-file 1048576 每一個文件的最大塊數。
dfs.namenode.edits.dir ${dfs.namenode.name.dir} 存放namenode的事務文件(edits)的目錄,若是這是一個逗號分隔的目錄列表,那麼事務文件在全部目錄中被複制,用於冗餘。默認與dfs.namenode.name.dir屬性目錄同樣。
dfs.namenode.edits.dir.required   是dfs.namenode.edits.dir屬性目錄的子集,用於確保這些edits文件目錄是最新的。
dfs.namenode.shared.edits.dir   用於HA場景中,多個namenode共享的目錄。
dfs.namenode.edits.journal-plugin.qjournal org.apache.hadoop.hdfs.qjournal.client.QuorumJournalManager  
dfs.permissions.enabled TRUE 當爲true時,則容許HDFS的檢測,當爲false時,則關閉HDFS的檢測,但不影響其它HDFS的其它功能。
dfs.permissions.superusergroup supergroup 超級用戶組的名稱。該值應該是單個組名。 
dfs.cluster.administrators   管理員ACL列表,用於控制誰能夠訪問namenode的servlet,這個屬性由逗號分隔,例如"user1,user2 group1,group2"。用戶和組均可覺得空,因此 "user1", " group1", "", "user1 group1", "user1,user2 group1,group2" 都是有效的。 '*' 表示授予全部用戶和組的訪問權限。
dfs.namenode.acls.enabled FALSE 當爲false時,拒絕全部與設置或獲取ACL相關的RPC,默認狀況下是false。
dfs.namenode.lazypersist.file.scrub.interval.sec 300 namenode掃描lazypersist文件的時間間隔,當設置爲負值時,則禁用此屬性。
dfs.block.access.token.enable FALSE 當爲true時,容許訪問令牌訪問datanode。
dfs.block.access.key.update.interval 600 namenode更新其訪問密鑰的時間間隔,單位爲分鐘。
dfs.block.access.token.lifetime 600 訪問令牌的生命週期,單位爲分鐘。
dfs.datanode.data.dir file://${hadoop.tmp.dir}/dfs/data 存放datanode塊的目錄。若是這是一個逗號分隔的目錄列表,那麼數據將存儲在全部命名的目錄中,一般存儲在不一樣的設備上。
dfs.datanode.data.dir.perm 700 datanode目錄權限,能夠爲八進制,也能夠爲符號。
dfs.replication 3 副本數量。能夠在建立文件時指定副本的實際數目。若是在建立時未指定複製,則使用默認值。
dfs.replication.max 512 最大副本數量。
dfs.namenode.replication.min 1 最小副本數量。
dfs.namenode.maintenance.replication.min 1 在維護模式時的最小活躍副本數量。
dfs.namenode.safemode.replication.min   用於計算安全塊數量的最小副本數,當沒有被設置時,則使用dfs.namenode.replication.min屬性的值。
dfs.blocksize 134217728 新文件的塊大小,單位爲字節。可使用以下後綴:k(kilo), m(mega), g(giga), t(tera), p(peta), e(exa) ,例如128k, 512m, 1g等。
dfs.client.block.write.retries 3 datanode寫入失敗時,嘗試從新寫入的次數。
dfs.client.block.write.replace-datanode-on-failure.enable TRUE 當爲true時,若是datanode寫入失敗,則從新寫入新的datanode。
dfs.client.block.write.replace-datanode-on-failure.policy DEFAULT 當dfs.client.block.write.replace-datanode-on-failure.enable屬性爲true時,該屬性有效。選項有如下幾種:ALWAYS,NEVER,DEFAULT。
dfs.client.block.write.replace-datanode-on-failure.best-effort FALSE 當dfs.client.block.write.replace-datanode-on-failure.enable屬性爲true時使用。Best effort表示在繼續寫入新datanode時,若是仍然寫入失敗時採起的策略。當該屬性爲true時,若是新datanode寫入失敗,則繼續找新的datanode寫入;當該屬性爲false時,若是新datanode寫入失敗,則再也不嘗試寫入新datanode,而是拋出異常。
dfs.client.block.write.replace-datanode-on-failure.min-replication 0 若是剩餘datanode的數量小於該屬性的值,則會拋出異常。詳細要參考dfs.client.block.write.replace-datanode-on-failure.policy屬性。
dfs.blockreport.intervalMsec 21600000 塊報告的時間間隔,以毫秒爲單位。
dfs.blockreport.initialDelay 0 第一次塊報告的時間延遲,以秒爲單位。
dfs.blockreport.split.threshold 1000000 當datanode的塊數量小於該屬性的值時,將用一條消息發送全部目錄的塊報告,若是datanode的塊數量大於該屬性的值,則每一個目錄用單獨的消息發送塊報告。
dfs.namenode.max.full.block.report.leases 6 全部塊報告的最大數量。這個數字不該該超過RPC處理器線程數或小於1。
dfs.namenode.full.block.report.lease.length.ms 300000 namenode等待塊報告的超時時間,單位爲毫秒。
dfs.datanode.directoryscan.interval 21600 datanode以秒爲單位掃描數據目錄,並協調內存塊和磁盤上的塊之間的差別。
dfs.datanode.directoryscan.threads 1 線程池中用於編制卷報告的線程數。
dfs.datanode.directoryscan.throttle.limit.ms.per.sec 1000 每秒鐘用於報告編譯的線程的運行時間,當有多個線程時,該屬性的時間是多個線程的累計時間。
dfs.heartbeat.interval 3 datanode的心跳時間間隔,單位爲秒。
dfs.datanode.lifeline.interval.seconds   從datanode向namenode發送lifeline的時間間隔,單位爲秒。該屬性的值必須大於dfs.heartbeat.interval屬性的值。
dfs.namenode.handler.count 10 RPC服務器的監聽client線程數,若是dfs.namenode.servicerpc-address屬性沒有配置,則線程會監聽全部節點的請求。
dfs.namenode.service.handler.count 10 只有當dfs.namenode.servicerpc-address屬性配置後,該屬性纔有效。用於配置datanode和其它非client節點的監聽線程數。
dfs.namenode.lifeline.handler.ratio 0.1 dfs.namenode.handler.count屬性中,用於處理lifeline RPC服務的線程比例。例如dfs.namenode.handler.count屬性值爲100,而且dfs.namenode.lifeline.handler.ratio屬性的值設置爲0.10,則有10個線程用於處理lifeline rpc服務。
dfs.namenode.lifeline.handler.count   用於處理datanode lifeline協議的RPC服務器線程數量 。
dfs.namenode.safemode.threshold-pct 0.999f dfs.namenode.replication.min屬性中副本須要知足的塊的百分比。
dfs.namenode.safemode.min.datanodes 0 在退出安全模式前,須要知足活躍的datanode的數量。
dfs.namenode.safemode.extension 30000 在達到閾值後,通過多長時間後會退出安全模式,單位爲毫秒。
dfs.namenode.resource.check.interval 5000 namenode resource checker運行的時間間隔,單位爲毫秒。
dfs.namenode.resource.du.reserved 104857600 存儲或請求namenode存儲目錄的空間大小,單位爲字節。
dfs.namenode.resource.checked.volumes   本地目錄列表。
dfs.namenode.resource.checked.volumes.minimum 1 所需的冗餘namenode存儲卷的最小數量。 
dfs.datanode.balance.bandwidthPerSec 10m datanode的最大帶寬,可使用以下後綴k(kilo), m(mega), g(giga), t(tera),p(peta), e(exa),例如128k, 512m, 1g等。或者提供完整的字節數,如134217728。
dfs.hosts   命名一個文件,該文件包含容許鏈接到namenode的主機列表。必須指定文件的完整路徑名。若是值爲空,則容許全部主機。
dfs.hosts.exclude   命名一個文件,該文件包含不容許鏈接到namenode的主機列表。必須指定文件的完整路徑名。若是值爲空,則不排除任何主機。 
dfs.namenode.max.objects 0 DFS支持的文件、目錄和塊的最大數量。0的值指示DFS支持的對象數目沒有限制。
dfs.namenode.datanode.registration.ip-hostname-check TRUE 當爲true時,namenode鏈接datanode的地址必須解析成主機名。
dfs.namenode.decommission.interval 30 namenode按期檢查維護是否結束的時間間隔,單位是秒。
dfs.namenode.decommission.blocks.per.interval 500000 在每次維護期間,處理塊的近似數量。
dfs.namenode.decommission.max.concurrent.tracked.nodes 100 同時進入decommisson或maintenance的datanode的數量。
dfs.namenode.replication.interval 3 namenode按期計算datanode副本數量的時間間隔,單位爲秒。
dfs.namenode.accesstime.precision 3600000 HDFS文件訪問時間的精確值,默認爲1小時。當爲0時,表示禁用。
dfs.datanode.plugins   逗號分隔的datanode插件列表。
dfs.namenode.plugins   逗號分隔的namenode插件列表。
dfs.namenode.block-placement-policy.default.prefer-local-node TRUE 控制默認塊放置策略如何放置塊的第一個副本。當TRUE時,它將更喜歡客戶端正在運行的節點。當FALSE時,它將首選與客戶端相同的機架中的節點。設置爲FALSE避免了大文件的整個副本終止在單個節點上的狀況,從而建立熱點。
dfs.stream-buffer-size 4096 流文件的緩衝區大小。
dfs.bytes-per-checksum 512 每一個校驗和的字節數,不能大於dfs.stream-buffer-size屬性的值。
dfs.client-write-packet-size 65536 客戶端寫入的數據包大小。
dfs.client.write.exclude.nodes.cache.expiry.interval.millis 600000 在客戶機中排除DN列表中的DN的最大週期。在此階段以後,以毫秒爲單位,先前排除的節點將自動從緩存中移除,而且將再次被認爲適合於塊分配。在保持文件打開很長時間(如寫前日誌(WAL)文件)的狀況下,可使其下降或提升,從而使做者可以容忍集羣維護從新啓動。默認爲10分鐘。 
dfs.namenode.checkpoint.dir file://${hadoop.tmp.dir}/dfs/namesecondary DFS secondary name node存放臨時鏡像的目錄。若是這是一個逗號分隔的目錄列表,則在全部目錄中複製該圖像以進行冗餘。
dfs.namenode.checkpoint.edits.dir ${dfs.namenode.checkpoint.dir} DFS secondary name node存放臨時edits的目錄。若是這是一個逗號分隔的目錄列表,則在全部目錄中複製該圖像以進行冗餘。
dfs.namenode.checkpoint.period 3600 兩個週期檢查點之間的秒數。 
dfs.namenode.checkpoint.txns 1000000 建立檢查點的時間間隔。
dfs.namenode.checkpoint.check.period 60 查詢未檢查的檢查點事務的執行時間間隔,單位爲秒。
dfs.namenode.checkpoint.max-retries 3 當加載fsimage或重演edits失敗時,重試的次數。
dfs.namenode.num.checkpoints.retained 2 在namenode和seccondary namenode中保留image檢查點(fsimage_*)的數量。
dfs.namenode.num.extra.edits.retained 1000000 namenode的須要保留的額外的事務。
dfs.namenode.max.extra.edits.segments.retained 10000 額外的edit日誌段的最大數量。
dfs.namenode.delegation.key.update-interval 86400000 namenode中更新委託令牌主密鑰的時間間隔,單位爲毫秒。
dfs.namenode.delegation.token.max-lifetime 604800000 令牌的最大生命週期,單位爲毫秒。
dfs.namenode.delegation.token.renew-interval 86400000 受權令牌的更新間隔以毫秒爲單位。 
dfs.datanode.failed.volumes.tolerated 0 在數據陽極中止服務以前容許失敗的卷的數量。默認狀況下,任何卷故障都會致使datanode關閉。
dfs.image.compress FALSE dfs image是否應該補充壓縮。
dfs.image.compression.codec org.apache.hadoop.io.compress.DefaultCodec 若是DFS圖像被壓縮,它們應該如何壓縮?必須是 io.compression.codecs屬性中定義的編解碼器。
dfs.image.transfer.timeout 60000 image傳輸超時時間,單位爲毫秒。
dfs.image.transfer.bandwidthPerSec 0 用於常規image傳輸的最大帶寬,即每秒的字節數。
dfs.image.transfer-bootstrap-standby.bandwidthPerSec 0 從image傳輸到bootstrap的最大帶寬。
dfs.image.transfer.chunksize 65536 上傳檢查點的塊大小,以字節爲單位。
dfs.namenode.support.allow.format TRUE 是否容許namenode將自身進行格式化。建議設置爲false。
dfs.datanode.max.transfer.threads 4096 datanode進行傳輸數據的最大線程數。
dfs.datanode.scan.period.hours 504 當爲正值時,datanode將按照設定時間間隔進行塊掃描。當爲負值時,則禁止塊掃描。當爲0時,則使用默認的504小時(3周)進行按期掃描。
dfs.block.scanner.volume.bytes.per.second 1048576 當爲0時,datanode的塊掃描會被禁用,當爲正數時,該屬性爲datanode每秒掃描的字節數。I
dfs.datanode.readahead.bytes 4194304 在讀取塊文件時,若是Hadoop本地庫可用,datanode可使用posix_fadvise系統調用來在當前閱讀器位置以前將數據顯式地寫入操做系統緩衝區緩存中。這能夠提升性能,尤爲是當磁盤高度競爭時。此配置指定當前數據讀取位置前面的字節數,datanode將嘗試提早讀取。經過將此屬性配置爲0,能夠禁用此特性。若是本地庫不可用,此配置沒有效果。
dfs.datanode.drop.cache.behind.reads FALSE 在一些工做負載中,從HDFS讀取的數據被認爲足夠大以致於在操做系統緩衝區高速緩存中不太有用。在這種狀況下,datanode能夠被配置爲在傳送到客戶端以後從緩存高速緩存中自動清除全部數據。對於只讀取短塊(例如Hbase random IO工做負載)的工做負載,此行爲被自動禁用。這能夠經過釋放緩存緩存空間使用更多可緩存數據來改善某些工做負載的性能。若是Hadoop本機庫不可用,此配置沒有效果。
dfs.datanode.drop.cache.behind.writes FALSE 在一些工做負載中,已知寫入HDFS的數據足夠大,以致於在操做系統緩衝區高速緩存中不太有用。在這種狀況下,datanode能夠被配置爲在寫入到磁盤以後從緩存高速緩存中自動清除全部數據。這能夠經過釋放緩存緩存空間使用更多可緩存數據來改善某些工做負載的性能。若是Hadoop本機庫不可用,此配置沒有效果。 
dfs.datanode.sync.behind.writes FALSE 當爲true時,datanode將指示操做系統在寫入後當即將全部寫入的數據排隊到磁盤。這與一般的OS策略不一樣,它可能在觸發寫回以前等待30秒。這能夠經過平滑寫入磁盤的數據的IO配置文件來改善某些工做負載的性能。若是Hadoop本機庫不可用,此配置沒有效果。 
dfs.client.failover.max.attempts 15 client最多嘗試次數,若是超過,則認爲client失敗。
dfs.client.failover.sleep.base.millis 500 錯誤重試的時間間隔,這是一個這是迄今爲止嘗試的數目的函數,具備+/- 50%的隨機因子。此選項指定在故障轉移計算中使用的基值。第一次故障轉移將當即重試。第二次故障轉移嘗試將至少延遲dfs.client.failover.sleep.base.millis milliseconds,等等。
dfs.client.failover.sleep.max.millis 15000 錯誤重試的時間間隔,這是一個這是迄今爲止嘗試的數目的函數,具備+/- 50%的隨機因子。此選項指定在故障轉移之間等待的最大值dfs.client.failover.sleep.max.millis milliseconds屬性值的+/- 50%。
dfs.client.failover.connection.retries 0 指示故障轉移IPC客戶端將創建服務器鏈接的重試次數。 
dfs.client.failover.connection.retries.on.timeouts 0 在創建服務器鏈接時,故障轉移IPC客戶端將在套接字超時上進行重試次數。 
dfs.client.datanode-restart.timeout 30 datanode重啓等待時間,單位爲秒。
dfs.nameservices   逗號分隔的名稱服務器列表。
dfs.nameservice.id   nameservice的ID。
dfs.internal.nameservices   逗號分隔的屬於集羣的nameservice列表。
dfs.ha.namenodes.EXAMPLENAMESERVICE   給定nameservicce的前綴列表,能夠用逗號分隔。這將被用於肯定集羣中中的namenode。
dfs.ha.namenode.id   namenode的ID。
dfs.ha.log-roll.period 120 standby節點向active節點詢問edits的時間間隔,以秒爲單位。
dfs.ha.tail-edits.period 60 standby節點檢查log段的時間間隔,以秒爲單位。
dfs.ha.tail-edits.rolledits.timeout 60 在active namenode上調用rollEdits RPC的超時時間,單位爲秒。
dfs.ha.automatic-failover.enabled FALSE 是否啓用自動故障轉移。
dfs.client.use.datanode.hostname FALSE client鏈接datanode時,是否應該使用datanode的主機名。
dfs.datanode.use.datanode.hostname FALSE datanode鏈接其它datanode進行數據傳輸時,是否應該使用datanode的主機名。
dfs.client.local.interfaces   一個逗號分隔的網絡接口名稱列表,用於client和datanode之間的數據傳輸。
dfs.datanode.shared.file.descriptor.paths /dev/shm,/tmp 一個逗號分隔的路徑列表,用於建立將在datanode和client之間共享的文件描述符。
dfs.short.circuit.shared.memory.watcher.interrupt.check.ms 60000 爲單元測試使用的一個屬性。
dfs.namenode.kerberos.principal   namenode服務主體。這一般設置爲nn/_HOST@REALM.TLD。每一個namenode將在啓動時用它本身的徹底限定主機名替換宿主。 _HOST佔位符容許在HA設置中使用兩個namenode上相同的配置設置。
dfs.namenode.keytab.file   namenode服務主體的keytab文件,主體參數由dfs.namenode.kerberos.principal屬性配置。
dfs.datanode.kerberos.principal   datanode服務主體。
dfs.datanode.keytab.file   datanode服務主體的keytab文件,主體參數由dfs.datanode.kerberos.principal屬性配置。
dfs.journalnode.kerberos.principal   JournalNode服務主體。這一般設置爲jn/_HOST@REALM.TLD。每一個journalnode將在啓動時用它本身的徹底限定主機名替換宿主。 _HOST佔位符容許使用與其它journalnode相同的配置設置。
dfs.journalnode.keytab.file   journalnode服務主體的keytab文件,主體參數由dfs.journalnode.kerberos.principal屬性配置。
dfs.namenode.kerberos.internal.spnego.principal ${dfs.web.authentication.kerberos.principal} 當kerberos啓用時,namenode用於web UI SPNEGO驗證的服務主體。
dfs.journalnode.kerberos.internal.spnego.principal   當kerberos啓用時,journalnode http server用於SPNEGO驗證的服務主體。
dfs.secondary.namenode.kerberos.internal.spnego.principal ${dfs.web.authentication.kerberos.principal} 當kerberos啓用時,secondary namenode用於web UI SPNEGO驗證的服務主體。
dfs.web.authentication.kerberos.principal   namenode用於WebHDFS SPNEGO驗證的服務主體,須要WebHDFS和安全性都啓用。 
dfs.web.authentication.kerberos.keytab   和dfs.web.authentication.kerberos.principal屬性的主體相關的keytab文件。 
dfs.namenode.kerberos.principal.pattern * 在跨域環境中使用。
dfs.namenode.avoid.read.stale.datanode FALSE 是否容許讀取「陳舊」datanode(也就是在設定時間間隔內沒有向namenode發送心跳消息的節點)。
dfs.namenode.avoid.write.stale.datanode FALSE 是否容許寫入「陳舊」datanode(也就是在設定時間間隔內沒有向namenode發送心跳消息的節點)。
dfs.namenode.stale.datanode.interval 30000 在設定的這個時間裏,若是namenode沒有收到datanode的心跳消息,則將datanode置爲「陳舊」datanode,單位爲毫秒。
dfs.namenode.write.stale.datanode.ratio 0.5f 當陳舊datanode的數量佔比超過設置的值時,會中止寫入陳舊的datanode。
dfs.namenode.invalidate.work.pct.per.iteration 0.32f 注意:高級屬性。謹慎改變。該屬性決定了單條datanode心跳刪除命令進行塊無效(刪除)的百分比。0.32f表示100%。
dfs.namenode.replication.work.multiplier.per.iteration 2 注意:高級屬性。謹慎改變。Datanode並行傳輸時的塊數量。這個數字能夠是任何正、非零整數。
nfs.server.port 2049 nft的端口號。
nfs.mountd.port 4242 hadoop安裝守護進程的端口號。
nfs.dump.dir /tmp/.hdfs-nfs 該目錄用於在寫入HDFS以前臨時保存無序的寫入。對於每個文件,無序的寫入在累積到超過必定的閾值(例如1MB)以後被丟棄,所以須要確保目錄有足夠的空間。
nfs.rtmax 1048576 這是NFS網關支持的讀取請求的最大字節大小。
nfs.wtmax 1048576  這是NFS網關支持的寫入請求的最大字節大小。
nfs.keytab.file   注意:高級屬性。謹慎改變。這是HDFS NFS網關的keytab文件的路徑。
nfs.kerberos.principal   注意:高級屬性。謹慎改變。這是Kerberos主體的名稱。格式爲nfs-gateway-user/nfs-gateway-host@kerberos-realm
nfs.allow.insecure.ports TRUE 當爲false時,會拒絕來自無特權端口(高於1023的端口)的客戶端鏈接。
dfs.webhdfs.enabled TRUE 是否容許在namenode和datanode中啓用WebHDFS (REST API)。
hadoop.fuse.connection.timeout 300 在fuse_dfs中緩存libhdfs鏈接對象的最小秒數。較低的值將致使較低的內存消耗;較高的值能夠經過避免建立新鏈接對象的開銷來加快訪問速度。 
hadoop.fuse.timer.period 5 fuse_dfs中緩存過時檢查之間的秒數。
dfs.namenode.metrics.logger.period.seconds 600 namenode記錄其度量的頻率。
dfs.datanode.metrics.logger.period.seconds 600 datanode記錄其度量的頻率。
dfs.metrics.percentiles.intervals   默認狀況下被禁用。
dfs.datanode.peer.stats.enabled FALSE 是否開啓datanode的跟蹤統計。
dfs.datanode.outliers.report.interval 1800000 控制datanode報告對等延遲的頻率。
dfs.datanode.fileio.profiling.sampling.percentage 0 設置控制文件I/O事件的百分比。默認值爲0禁用磁盤統計。設置爲1和100之間的整數值,以啓用磁盤統計。
hadoop.user.group.metrics.percentiles.intervals   默認狀況下被禁用。
dfs.encrypt.data.transfer FALSE 是否啓用塊數據的加密。
dfs.encrypt.data.transfer.algorithm   選項有3des和rc4兩種。
dfs.encrypt.data.transfer.cipher.suites   選項有AES/CTR/NoPadding及未定義四種。
dfs.encrypt.data.transfer.cipher.key.bitlength 128 client和datanode之間的密鑰位長度,值有128,192和256三種。
dfs.trustedchannel.resolver.class   TrustedChannelResolver用於肯定通道是否受信任以用於普通數據傳輸。
dfs.data.transfer.protection   一個逗號分隔的SASL保護值列表,用於讀取或寫入塊數據時與datanode的安全鏈接。選項有authentication, integrity and privacy三種。
dfs.data.transfer.saslproperties.resolver.class   用於鏈接datanode的QOP的SaslPropertiesResolver,默認是hadoop.security.saslproperties.resolver.class。
dfs.datanode.hdfs-blocks-metadata.enabled FALSE 是否啓用後面datanode支持DistributedFileSystem#getFileVBlockStorageLocations API。
dfs.client.file-block-storage-locations.num-threads 10 DistributedFileSystem#getFileBlockStorageLocations()中進行並行RPC的線程數。
dfs.client.file-block-storage-locations.timeout.millis 1000 DistributedFileSystem#getFileBlockStorageLocations()中進行RPC的超時時間,單位爲毫秒。
dfs.journalnode.rpc-address 0.0.0.0:8485 JournalNode RPC服務器地址和端口。
dfs.journalnode.http-address 0.0.0.0:8480 JournalNode HTTP服務器監聽的地址和端口。若是端口爲0,那麼服務器將在自由端口啓動。
dfs.journalnode.https-address 0.0.0.0:8481 JournalNode HTTPS服務器監聽的地址和端口。若是端口爲0,那麼服務器將在自由端口啓動。
dfs.namenode.audit.loggers default org.apache.hadoop.hdfs.server.namenode.AuditLogger的實現類。
dfs.datanode.available-space-volume-choosing-policy.balanced-space-threshold 10737418240 當dfs.datanode.fsdataset.volume.choosing.policy屬性設置爲org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicy時使用。該屬性控制datanode卷在被認爲不平衡以前容許在空閒磁盤空間上有多少不一樣字節。若是全部卷的自由空間都在這一範圍內,則卷將被認爲是平衡的,而且塊分配將在純循環的基礎上完成。
dfs.datanode.available-space-volume-choosing-policy.balanced-space-preference-fraction 0.75f 當dfs.datanode.fsdataset.volume.choosing.policy屬性設置爲org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicy時使用。此屬性控制新的塊分配百分比將被髮送給具備比其餘磁盤更可用的磁盤空間的卷。這個設置應該在0.0到1.0的範圍內。
dfs.namenode.edits.noeditlogchannelflush FALSE 是否刷新edit log文件通道。
dfs.client.cache.drop.behind.writes   與dfs.datanode.drop.cache.behind.writes屬性相似,該屬性致使頁面緩存被丟棄在HDFS寫以後,可能釋放更多的內存用於其餘用途。
dfs.client.cache.drop.behind.reads   與dfs.datanode.drop.cache.behind.reads屬性相似,該屬性致使頁面緩存被丟棄在HDFS讀取以後,可能釋放更多的內存用於其餘用途。
dfs.client.cache.readahead   當使用遠程讀取時,此設置會致使datanode使用posix_fadvise在塊文件中提早讀取,可能會下降I/O等待時間。
dfs.namenode.enable.retrycache TRUE 當爲true時,容許在namenode上重試緩存。
dfs.namenode.retrycache.expirytime.millis 600000 重試緩存條目被保留的時間。
dfs.namenode.retrycache.heap.percent 0.03f 此參數配置爲重試緩存分配的堆大小(不包括響應緩存)。
dfs.client.mmap.enabled TRUE 若是將此設置爲false,客戶端將不會嘗試內存映射讀取。
dfs.client.mmap.cache.size 256 當使用0拷貝讀取時,DFS client保持最近使用的內存映射區域的緩存。此參數控制將在該緩存中保留的最大條目數。這個數字越大,咱們可能會使用更多的內存描述符文件描述符。注意,當這個大小設置爲0時,仍然能夠進行零拷貝讀取。 Wh
dfs.client.mmap.cache.timeout.ms 3600000 在使用時,咱們將在緩存中保持MMAP條目的最小時間長度。若是一個條目在緩存中比這個長,而且沒有人使用它,它將被後臺線程移除。
dfs.client.mmap.retry.timeout.ms 300000 在重試失敗的MMAP操做以前,咱們將等待的最小時間量。
dfs.client.short.circuit.replica.stale.threshold.ms 1800000 若是沒有datanode的通訊,咱們將考慮短路副本的有效時間是最大的。通過這段時間後,即便在緩存中,咱們也會從新獲取短路副本。
dfs.namenode.path.based.cache.block.map.allocation.percent 0.25 分配給緩存塊地圖的java堆的百分比。
dfs.datanode.max.locked.memory 0 用於在datanode上緩存塊副本的字節內存量。
dfs.namenode.list.cache.directives.num.responses 100 設置NAMENODE將響應於listDirectives RPC發送的高速緩存指令的數量。.
dfs.namenode.list.cache.pools.num.responses 100 設置NAMENODE將響應於listPools RPC發送的高速緩存池的數量。
dfs.namenode.path.based.cache.refresh.interval.ms 30000 後續路徑高速緩存之間的毫秒數。
dfs.namenode.path.based.cache.retry.interval.ms 30000 當NAMENODE須要取消緩存的東西,或者緩存未緩存的東西時,它必須經過發送 DNA_CACHE或DNA_UNCACHE命令來響應數據陽極心跳來引導數據。
dfs.datanode.fsdatasetcache.max.threads.per.volume 4 用於緩存datanode上新數據的每卷的最大線程數。這些線程同時消耗I/O和CPU。這會影響正常的datanode操做。
dfs.cachereport.intervalMsec 10000 以毫秒爲單位肯定緩存報告間隔。在這段時間以後,datanode將其緩存狀態的完整報告發送到namenode。
dfs.namenode.edit.log.autoroll.multiplier.threshold 2 肯定active namenode什麼時候滾動本身的edit log。
dfs.namenode.edit.log.autoroll.check.interval.ms 300000 active namenode以毫秒爲單位檢查它是否須要滾動本身的edit log。
dfs.webhdfs.user.provider.user.pattern ^[A-Za-z_][A-Za-z0-9._-]*[$]?$ webhdfs用戶名和組的有效模式,它必須是一個有效的java正則表達式。 
dfs.webhdfs.acl.provider.permission.pattern ^(default:)?(user|group|mask|other):[[A-Za-z_][A-Za-z0-9._-]]*:([rwx-]{3})?(,(default:)?(user|group|mask|other):[[A-Za-z_][A-Za-z0-9._-]]*:([rwx-]{3})?)*$ 在webhdfs ACL操做的用戶和組名的有效模式,它必須是一個有效的java正則表達式。
dfs.webhdfs.socket.connect-timeout 60s 鏈接到WebHDFS服務器的Socket超時時間。
dfs.webhdfs.socket.read-timeout 60s 從WebHDFS服務器讀取數據的套接字超時時間。單位能夠爲 ns, us, ms, s, m, h, d for nanoseconds, microseconds, milliseconds, seconds, minutes, hours, days 等。
dfs.client.context default 咱們應該使用的DFSClient上下文的名稱。
dfs.client.read.shortcircuit FALSE 此配置參數開啓短路本地讀取。 
dfs.client.socket.send.buffer.size 0 DFSClient的套接字發送緩衝區大小。這可能影響TCP鏈接吞吐量。若是設置爲零或負值,則不顯式設置緩衝區大小,從而使TCP自動調整到某些系統上。默認值爲0。.
dfs.domain.socket.path   可選項。DataNode 本地文件系統到 UNIX 域套接字的路徑,用於 DataNode 和本地 HDFS 客戶端之間的通訊。該套接字用於 Short Circuit Read。只有 HDFS 系統用戶和「root」擁有父目錄及其全部上級的寫入權限。
dfs.client.read.shortcircuit.skip.checksum FALSE 若是設置了此配置參數,則短路本地讀取將跳過校驗和。這一般是不推薦的,但它可能對特殊設置有用。若是正在HDFS以外進行本身的校驗求和,則能夠考慮使用此方法。 
dfs.client.read.shortcircuit.streams.cache.size 256 DFS客戶端維護了一個最近打開的文件描述符的緩存,這個參數控制緩存中文件描述符的最大數量。
dfs.client.read.shortcircuit.streams.cache.expiry.ms 300000 控制文件描述符在client緩存中的最小時間。
dfs.datanode.shared.file.descriptor.paths /dev/shm,/tmp 建立共享內存段的目錄,用逗號分隔。Client和datanode經過這個共享內存段交換信息。
dfs.namenode.audit.log.debug.cmdlist   當audit log級別是debug時,寫入到namenode audit log的命令列表,用逗號分隔。
dfs.client.use.legacy.blockreader.local FALSE 當爲true時,使用基於HDFS-2246的 Legacy short-circuit reader實現方式。
dfs.block.local-path-access.user   容許在legacy short-circuit本地讀取時打開塊文件的用戶列表,用逗號分隔。
dfs.client.domain.socket.data.traffic FALSE 控制是否會嘗試經過UNIX域套接字傳遞正常的數據流量,而不是經過TCP套接字在節點本地數據傳輸上傳遞數據。
dfs.namenode.reject-unresolved-dn-topology-mapping FALSE 當爲true時,若是datanode的拓撲映射未被解析而且返回null,則namenode將拒絕此datanode的註冊。
dfs.client.slow.io.warning.threshold.ms 30000 在dfsclient中記錄慢io警告的閾值。
dfs.datanode.slow.io.warning.threshold.ms 300 在datanode中記錄慢io警告的閾值。
dfs.namenode.xattrs.enabled TRUE 是否支持擴展namenode的屬性。
dfs.namenode.fs-limits.max-xattrs-per-inode 32 每一個索引節點的擴展屬性的最大數目。
dfs.namenode.fs-limits.max-xattr-size 16384 以字節爲單位的擴展屬性的名稱和值的最大組合大小。它應該大於0,小於或等於32768。
dfs.namenode.lease-recheck-interval-ms 2000  
dfs.namenode.max-lock-hold-to-release-lease-ms 25 在釋放lease期間,鎖會使NAMENODE上的任何操做卡住。
dfs.namenode.write-lock-reporting-threshold-ms 5000 當一個寫鎖在NAMENODE上被保存很長時間時,當鎖被釋放時,這將被記錄下來。這設置了日誌記錄發生時必須持有鎖的時間。
dfs.namenode.read-lock-reporting-threshold-ms 5000 當讀鎖在NAMENODE上保存很長時間時,當鎖被釋放時將記錄該日誌。這設置了日誌記錄發生時必須持有鎖的時間。
dfs.namenode.lock.detailed-metrics.enabled FALSE 若是爲true,NAMENODE將跟蹤各類操做保存命名空間鎖的時間,並將其做爲度量。
dfs.namenode.fslock.fair TRUE 若是爲true,FS namesystem鎖將在公平模式下使用,這將有助於防止編寫器線程被餓死,但能夠提供更低的鎖定吞吐量。
dfs.namenode.startup.delay.block.deletion.sec 0 在NAMENODE啓動後,延遲設定時間後,咱們將暫停塊刪除。默認狀況下,它已被禁用。
dfs.namenode.list.encryption.zones.num.responses 100 當列出加密區域時,將在批處理中返回的最大區域數。
dfs.namenode.list.openfiles.num.responses 1000 當列出打開的文件時,將在單個批處理中返回的最大打開文件數。
dfs.namenode.edekcacheloader.interval.ms 1000 當KeyProvider配置後,namenode被啓動或變成active時,進行edek 緩存預熱的時間間隔。
dfs.namenode.edekcacheloader.initial.delay.ms 3000 當KeyProvider配置後, namenode被啓動或變成active時,第一次嘗試edit cache緩存預熱的延遲時間。
dfs.namenode.inotify.max.events.per.rpc 1000 將在單個RPC響應中發送給客戶端的最大事件數。
dfs.user.home.dir.prefix /user 該目錄用於添加用戶名以得到用戶的home目錄。
dfs.datanode.cache.revocation.timeout.ms 900000 當dfsclient讀取緩存中的datanode塊文件時,將跳過校驗。datanode將保持塊文件在緩存中,直到客戶端完成。可是,若是客戶端佔用很是長的時間,那麼datanode可能須要從緩存中逐出塊文件。此屬性數值控制datanode等待客戶端釋放其沒有校驗和讀取的副本的時間。
dfs.datanode.cache.revocation.polling.ms 500 datanode應該多久輪詢一次,看看客戶端是否中止使用datanode想要取消的副本。
dfs.datanode.block.id.layout.upgrade.threads 12 建立硬連接的最大線程數。
dfs.storage.policy.enabled TRUE 容許用戶更改文件和目錄的存儲策略。
dfs.namenode.legacy-oiv-image.dir   在standby namenode和secondary namenode的檢查點期間,保存fsimage的命名空間的位置。
dfs.namenode.top.enabled TRUE 啓用nntop
dfs.namenode.top.window.num.buckets 10 nntop的桶數。
dfs.namenode.top.num.users 10 頂部工具返回的頂級用戶數。
dfs.namenode.top.windows.minutes 1,5,25 nntop在分鐘內的報告週期,用逗號分隔。
dfs.webhdfs.ugi.expire.after.access 600000 在最後一次訪問以後,緩存的UGI將在多長時間內過時。0表示永不過時。
dfs.namenode.blocks.per.postponedblocks.rescan 10000 在postponedMisreplicatedBlocks每一個迭代中掃描的塊數。
dfs.datanode.block-pinning.enabled FALSE PIN塊是否在受歡迎的datanode上。
dfs.client.block.write.locateFollowingBlock.initial.delay.ms 400 locateFollowingBlock的初始延遲,每一個重試的延遲時間將成倍增長。
dfs.ha.zkfc.nn.http.timeout.ms 20000 當DFS ZKFC在本地namenode成爲服務不正常後,嘗試得到本地namenode線程轉儲時,HTTP鏈接和讀取超時值(單位爲MS)。
dfs.namenode.quota.init-threads 4 quota初始化併發線程的數量。
dfs.datanode.transfer.socket.send.buffer.size 0 DataXceiver Socket發送緩衝區大小。
dfs.datanode.transfer.socket.recv.buffer.size 0 DataXceiver Socket接收緩衝區大小。
dfs.namenode.upgrade.domain.factor ${dfs.replication} 只有當將塊放置策略設置爲BlockPlacementPolicyWithUpgradeDomain時,纔有效。它定義了任何塊的副本應該具備的惟一升級域的數量。當副本的數量小於或等於該值時,策略確保每一個副本具備惟一的升級域。當副本的數量大於該值時,策略確保惟一域的數量至少爲該值。 
dfs.ha.zkfc.port 8019 ZKFC的RPC端口。
dfs.datanode.bp-ready.timeout 20 在接收到的請求失敗以前,datanode的最大等待時間準備就緒。
dfs.datanode.cached-dfsused.check.interval.ms 600000 在每一個卷中加載DU_CACHE_FILE的間隔檢查時間。
dfs.webhdfs.rest-csrf.enabled FALSE 若是爲真,則容許WebHDFS對跨站點請求僞造(CSRF)進行保護。
dfs.webhdfs.rest-csrf.custom-header X-XSRF-HEADER 當 dfs.webhdfs.rest-csrf.enabled屬性爲true時,發送的HTTP請求的custom header。
dfs.webhdfs.rest-csrf.methods-to-ignore GET,OPTIONS,HEAD,TRACE 當dfs.webhdfs.rest-csrf.enabled屬性爲true時,HTTP請求中不須要custom header的列表,用逗號分隔。
dfs.webhdfs.rest-csrf.browser-useragents-regex ^Mozilla.*,^Opera.* 當dfs.webhdfs.reset-csrf.enabled屬性爲true時,HTTP請求的用戶代理頭部需匹配的正則表達式。
dfs.xframe.enabled TRUE 當爲true時,則經過將返回的X_FRAME_OPTIONS設置爲SAMEORIGIN,來實現對點擊劫持的保護。
dfs.xframe.value SAMEORIGIN 選項有三個:DENY/SAMEORIGIN/ALLOW-FROM。
dfs.http.client.retry.policy.enabled FALSE 當爲true時,容許WebHDFS客戶端的重試策略。當WebHDFS須要在集羣間拷貝超大文件,此策略很是有用。
dfs.http.client.retry.policy.spec 10000,6,60000,10 指定WebHDFS客戶端的多線性隨機重試策略,例如給定重試次數和睡眠時間(N0,T0),(N1,T1),…,重試N0次後睡眠T0毫秒,重試N1次後睡眠T1毫秒,等等。
dfs.http.client.failover.max.attempts 15 指定WebHDFS客戶端在網絡異常狀況下的故障轉移嘗試的最大數目。 
dfs.http.client.retry.max.attempts 10 指定WebHDFS客戶端重試嘗試的最大次數。
dfs.http.client.failover.sleep.base.millis 500 WebHDFS客戶端在重試或故障轉移之間的指數增長的睡眠時間,單位爲毫秒。 
dfs.http.client.failover.sleep.max.millis 15000 在WebHDFS客戶端重試或故障轉移之間指定睡眠時間的上限,單位爲毫秒。
dfs.namenode.hosts.provider.classname org.apache.hadoop.hdfs.server.blockmanagement.HostFileManager 提供主機文件訪問的類。
datanode.https.port 50475 datanode的HTTPS端口。
dfs.balancer.dispatcherThreads 200 用於HDFS均衡器塊移動器的線程池的大小。
dfs.balancer.movedWinWidth 5400000 HDFS平衡器跟蹤塊及其位置的時間窗口,單位是毫秒。
dfs.balancer.moverThreads 1000 用於執行塊移動的線程池大小。
dfs.balancer.max-size-to-move 10737418240 在單個線程中平衡器能夠移動的最大字節數。
dfs.balancer.getBlocks.min-block-size 10485760 在獲取源塊列表時忽略字節的最小塊閾值大小。
dfs.balancer.getBlocks.size 2147483648 獲取源塊列表時得到的datanode塊的總字節大小。
dfs.balancer.block-move.timeout 0 塊移動所需的最大毫秒時間。在典型的集羣中,3到5分鐘的超時是合理的。若是大量的塊移動發生超時,這須要增長。
dfs.balancer.max-no-move-interval 60000 若是在指定的這個時間內,沒有將塊從datanode中移出,則在平衡器迭代中,將更大努力投入於datanode的塊移出中來。
dfs.block.invalidate.limit 1000 由NAMENODE發送到每一個心跳刪除命令的datanode的無效塊的最大數目。
dfs.block.misreplication.processing.limit 10000 初始化複製隊列所需處理的最大塊數。
dfs.block.replicator.classname org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicyDefault 表示 non-striped的塊放置策略的類。選項有:BlockPlacementPolicyDefault、 BlockPlacementPolicyWithNodeGroup、BlockPlacementPolicyRackFaultTolerant、BlockPlacementPolicyWithUpgradeDomain.。
dfs.blockreport.incremental.intervalMsec 0 從datanode向namenode發送增量塊報告的等待時間,單位爲毫秒。
dfs.checksum.type CRC32C 校驗和類型 。
dfs.client.block.write.locateFollowingBlock.retries 5 在HDFS中查找下一個塊時使用的重試次數。
dfs.client.failover.proxy.provider   爲主機配置的故障轉移代理提供程序的類名的前綴(加上所需的名稱服務ID)。
dfs.client.key.provider.cache.expiry 864000000 DFS客戶端安全密鑰緩存過時時間,以毫秒爲單位。
dfs.client.max.block.acquire.failures 3 試圖從指定的datanode獲取塊信息時容許出現的最多錯誤數。
dfs.client.read.prefetch.size   DFS客戶端在讀操做時每次從namenode讀取的字節數。默認值是dfs.blocksize屬性值的10倍。 
dfs.client.read.short.circuit.replica.stale.threshold.ms 1800000 在 short-circuit本地讀取期間,讀取entries的最大閾值,單位是毫秒。
dfs.client.read.shortcircuit.buffer.size 1048576 用於本地短路讀取的緩衝區大小。
dfs.client.replica.accessor.builder.classes   用於構建ReplicaAccessor的類,用逗號分隔。 
dfs.client.retry.interval-ms.get-last-block-length 4000 在從datanode獲取塊長度時,再次重試間的時間間隔,單位是毫秒。
dfs.client.retry.max.attempts 10 DFS客戶端嘗試與namenode會話的最大重試次數。
dfs.client.retry.policy.enabled FALSE 當爲true時,則開啓DFS客戶端的重試策略。
dfs.client.retry.policy.spec 10000,6,60000,10 DFS客戶端的超時時間和重試次數的數值對。
dfs.client.retry.times.get-last-block-length 3 調用fetchLocatedBlocksAndGetLastBlockLength()的最大重試次數。
dfs.client.retry.window.base 3000 用於DFS客戶端重試的MS的基本時間窗口。對於每一個重試嘗試,該值線性擴展(例如,第一次嘗試3000毫秒,第二次重試6000毫秒,第三次重試9000毫秒等)。
dfs.client.socket-timeout 60000 全部socket的默認超時時間,單位爲毫秒。
dfs.client.socketcache.capacity 16 用於短路讀取的socket緩存容量。
dfs.client.socketcache.expiryMsec 3000 用於短路讀取的socket緩存過時時間,單位爲毫秒。
dfs.client.test.drop.namenode.response.number 0 每一個RPC調用由DFS客戶端刪除的namenode響應的數目。用於測試namenode重試緩存。
dfs.client.hedged.read.threadpool.size 0 支持DFS客戶端的hedged讀取。若要啓用此特性,須要將參數設置爲正數。
dfs.client.hedged.read.threshold.millis 500 配置DFS客戶端的hedged讀取。屬性值爲啓動hedged讀取前的等待時間。
dfs.client.use.legacy.blockreader FALSE 當爲true時,則本地短路讀取使用RemoteBlockReader類,當爲false時,則使用RemoteBlockReader2類。
dfs.client.write.byte-array-manager.count-limit 2048 每一個數組長度容許的最大數組數。
dfs.client.write.byte-array-manager.count-reset-time-period-ms 10000 分配每一個數組長度的時間間隔,若是沒有增量,則爲0。
dfs.client.write.byte-array-manager.count-threshold 128 每一個數組長度的計數閾值,使得只有在分配計數超過閾值後才建立管理器。
dfs.client.write.byte-array-manager.enabled FALSE 若是爲true,則啓用DFSOutputStream流使用的字節數組管理器。
dfs.client.write.max-packets-in-flight 80 DFSPackets容許的最大間隔數。
dfs.content-summary.limit 5000 在一個鎖定週期中容許的最大內容摘要計數。0或負數意味着沒有限制。
dfs.content-summary.sleep-microsec 500 在內容彙總計算中,兩次請求鎖的時間。
dfs.data.transfer.client.tcpnodelay TRUE 當爲true時,則從DFS客戶端傳輸時,設置socket爲TCP_NODELAY。
dfs.datanode.balance.max.concurrent.moves 50 作balance時每一個dn移動塊的最大並行線程數。
dfs.datanode.fsdataset.factory   爲datanode存儲副本的基礎存儲的類名。默認爲org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.FsDatasetFactory。
dfs.datanode.fsdataset.volume.choosing.policy   目錄列表中選擇卷的策略的類名。默認爲org.apache.hadoop.hdfs.server.datanode.fsdataset.RoundRobinVolumeChoosingPolicy。
dfs.datanode.hostname   可選的。包含此配置文件的datanode的主機名。每一個機器都會不一樣。默認爲當前主機名。
dfs.datanode.lazywriter.interval.sec 60 惰性持久化寫入datanode的時間間隔。
dfs.datanode.network.counts.cache.max.size 2147483647 每一個主機網絡錯誤計數緩存的datanode可能包含的條目的最大數量。
dfs.datanode.oob.timeout-ms 1500,0,0,0 爲每一個OOB類型發送OOB響應時的超時值,分別爲OOB_RESTART、OOB_RESERVED一、OOB_RESERVED二、OOB_RESERVED3。目前只有OOB_RESTART被用到。
dfs.datanode.parallel.volumes.load.threads.num   用於升級數據目錄的最大線程數。默認值是datanode中存儲目錄的數量。
dfs.datanode.ram.disk.replica.tracker   實現RamDiskReplicaTracker接口的類的名稱。默認爲org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.RamDiskReplicaLruTracker。
dfs.datanode.restart.replica.expiration 50 在從新啓動關機期間,爲datanode從新啓動的預算時間,單位爲秒。
dfs.datanode.socket.reuse.keepalive 4000 在DataXceiver關閉單個請求的套接字之間的時間窗口。若是在該窗口內出現第二個請求,則能夠從新使用套接字。
dfs.datanode.socket.write.timeout 480000 寫入danode的客戶端socket超時時間,單位爲毫秒。
dfs.datanode.sync.behind.writes.in.background FALSE 若是設置爲true,那麼sync_file_range()系統調用將異步發生。
dfs.datanode.transferTo.allowed TRUE 當爲false時,則在32位機器上,將大於等於2GB的塊分紅較小的塊。
dfs.ha.fencing.methods   在故障轉移期間,用於激活namenode的腳本或類名列表。
dfs.ha.standby.checkpoints TRUE 若是爲true,則在待機狀態下的NAMENODE週期性地採起命名空間的檢查點,將其保存到本地存儲,而後上載到遠程NAMENODE。
dfs.ha.zkfc.port 8019 zookeeper故障轉移控制器RPC服務器綁定的端口號。
dfs.http.port   Hftp、HttpFS、WebHdfs的http端口。
dfs.https.port   Hftp、HttpFS、WebHdfs的https端口。
dfs.journalnode.edits.dir /tmp/hadoop/dfs/journalnode/ 存儲 journal edit文件的目錄。
dfs.journalnode.kerberos.internal.spnego.principal   journal節點使用的Kerberos SPNEGO主體名稱。
dfs.journalnode.kerberos.principal   journal節點使用的Kerberos主體名稱。
dfs.journalnode.keytab.file   journal節點keytab文件。
dfs.ls.limit 1000 限制ls打印的文件數。若是小於或等於零,最多將打印 DFS_LIST_LIMIT_DEFAULT (= 1000)。
dfs.mover.movedWinWidth 5400000 一個塊能夠再次移動到另外一個位置的最小時間間隔,以毫秒爲單位。
dfs.mover.moverThreads 1000 配置均衡器的移動線程池大小。 
dfs.mover.retry.max.attempts 10 在移動者認爲移動失敗以前重試的最大次數。 
dfs.mover.max-no-move-interval 60000 若是指定的時間量已通過去,而且沒有塊已經從源datanode中移出,則將更加努力地將塊移到當前MOVER迭代中的該datanode以外。
dfs.namenode.audit.log.async FALSE 若是爲true,啓用異步審計日誌。
dfs.namenode.audit.log.token.tracking.id FALSE 若是爲true,則爲全部審計日誌事件添加跟蹤ID。 
dfs.namenode.available-space-block-placement-policy.balanced-space-preference-fraction 0.6 只有當dfs.block.replicator.classname設置爲org.apache.hadoop.hdfs.server.blockmanagement.AvailableSpaceBlockPlacementPolicy時使用。值在0和1之間。
dfs.namenode.backup.dnrpc-address   用於備份NAMENODE的服務RPC地址。
dfs.namenode.delegation.token.always-use FALSE 用於測試。設置爲TRUE時老是容許使用DT祕密管理器,即便安全被禁用。
dfs.namenode.edits.asynclogging TRUE 若是設置爲true,則啓用NAMENODE中的異步編輯日誌。若是設置爲false,NAMENODE使用傳統的同步編輯日誌。
dfs.namenode.edits.dir.minimum 1 dfs.namenode.edits.dir同時須要的目錄。
dfs.namenode.edits.journal-plugin   當FSEditLog正在從dfs.namenode.edits.dir建立日記管理器時,它遇到一個與「文件」不一樣的模式的URI,它從「dfs.namenode.edits.journal-plugin.[schema]」中加載實現類的名稱。這個類必須實現日誌管理器,並有一個構造函數。
dfs.namenode.file.close.num-committed-allowed 0 一般,只能當全部塊都提交後,才能關閉文件。當該值設置爲正整數N時,當N個塊被提交而且其他部分完成時,文件能夠被關閉。 
dfs.namenode.inode.attributes.provider.class   用於委派HDFS受權的類的名稱。
dfs.namenode.inode.attributes.provider.bypass.users   將爲全部操做繞過外部屬性提供程序的用戶主體或用戶名的列表。
dfs.namenode.max-num-blocks-to-log 1000 對塊報告後由NAMENODE打印到日誌塊的數量進行限制。
dfs.namenode.max.op.size 52428800 最大操做碼大小,以字節爲單位。
dfs.namenode.name.cache.threshold 10 常常訪問的文件訪問次數超過了這個閾值,緩存在FSDirectory nameCache中。
dfs.namenode.replication.max-streams 2 最高優先級複製流的數量的硬限制。 
dfs.namenode.replication.max-streams-hard-limit 4 全部複製流的硬限制。
dfs.namenode.replication.pending.timeout-sec -1 塊複製的超時秒數。若是這個值是0或更少,那麼它將默認爲5分鐘。
dfs.namenode.stale.datanode.minimum.interval 3 用NAMENODE標記datanode的數據丟失間隔的最小次數。
dfs.namenode.snapshot.capture.openfiles FALSE 若是爲true,則獲取的快照將具備具備有效租約的打開文件的不可變共享副本。即便在打開的文件增加或縮小的大小,快照老是會有之前的時間點打開文件的版本,就像全部其餘封閉的文件。默認爲false。
dfs.namenode.snapshot.skip.capture.accesstime-only-change FALSE 若是文件/目錄的訪問時間發生了更改,但沒有對文件/目錄進行其餘修改,則在下一個快照中不會捕獲更改後的訪問時間。可是,若是對文件/目錄進行了其餘修改,則最新的訪問時間將與下一快照中的修改一塊兒捕獲。
dfs.pipeline.ecn FALSE 若是爲true,則容許來自datanode的ECN(顯式擁塞通知)。
dfs.qjournal.accept-recovery.timeout.ms 120000 在特定段的恢復/同步接受階段中的仲裁超時時間,以毫秒爲單位。
dfs.qjournal.finalize-segment.timeout.ms 120000 在特定片斷的最終肯定過程當中的仲裁超時時間,以毫秒爲單位。
dfs.qjournal.get-journal-state.timeout.ms 120000 調用 getJournalState()的超時時間。
dfs.qjournal.new-epoch.timeout.ms 120000 得到對日誌節點的寫入訪問的opoch數時的超時時間,以毫秒爲單位。
dfs.qjournal.prepare-recovery.timeout.ms 120000 在特定段的恢復/同步準備階段的仲裁超時時間,以毫秒爲單位。
dfs.qjournal.queued-edits.limit.mb 10 quorum journal edits的隊列大小,單位是MB。
dfs.qjournal.select-input-streams.timeout.ms 20000 從日記管理器接受流時的超時時間,以毫秒爲單位。
dfs.qjournal.start-segment.timeout.ms 20000 啓動日誌段的超時時間,以毫秒爲單位。
dfs.qjournal.write-txns.timeout.ms 20000 定稿遠程journal的超時時間,以毫秒爲單位。
dfs.quota.by.storage.type.enabled TRUE 若是爲true,則啓用基於存儲類型的配額。
dfs.secondary.namenode.kerberos.principal   Secondary NameNode的Kerberos主體名稱。
dfs.secondary.namenode.keytab.file   Secondary NameNode的Kerberos keytab文件。
dfs.support.append TRUE 啓用NAMENODE上的append支持。 
dfs.web.authentication.filter org.apache.hadoop.hdfs.web.AuthFilter 用於WebHDFS的身份驗證篩選器類。 
dfs.web.authentication.simple.anonymous.allowed   若是爲true,容許匿名用戶訪問WebHDFS。設置爲false以禁用匿名身份驗證。
dfs.web.ugi   dfs.web.ugi被棄用,建議用hadoop.http.staticuser.user代替。
dfs.webhdfs.netty.high.watermark 65535 Datanode WebHdfs的Netty高水印配置。
dfs.webhdfs.netty.low.watermark 32768 Datanode WebHdfs的Netty低水印配置。
dfs.webhdfs.oauth2.access.token.provider   使用OAuth2訪問WebHDFS的令牌提供者類。默認爲org.apache.hadoop.hdfs.web.oauth2.ConfCredentialBasedAccessTokenProvider。
dfs.webhdfs.oauth2.client.id   客戶端ID,用於獲取憑據或刷新令牌的訪問令牌。
dfs.webhdfs.oauth2.enabled FALSE 若是爲true,則啓用WebHDFS中的OAuth2 。
dfs.webhdfs.oauth2.refresh.url   用以得到帶有憑證或刷新令牌的承載令牌的URL。
ssl.server.keystore.keypassword   HTTPS-SSL配置的密鑰存儲密鑰密碼。
ssl.server.keystore.location   HTTPS-SSL配置的密鑰存儲位置。
ssl.server.keystore.password   HTTPS-SSL配置的密鑰存儲密碼。
dfs.balancer.keytab.enabled FALSE 設置爲true以啓用Kerberized Hadoop的keytab的登陸。
dfs.balancer.address 0.0.0.0:0 基於Kerberos登陸時,用於keytab的主機名。
dfs.balancer.keytab.file   平衡器使用的keytab文件做爲其服務主體登陸。
dfs.balancer.kerberos.principal   平衡器主體,一般爲balancer/_HOST@REALM.TLD。
ssl.server.truststore.location   HTTPS-SSL配置的信任存儲位置。
ssl.server.truststore.password   HTTPS-SSL配置的信任存儲密碼。
dfs.lock.suppress.warning.interval 10s 報告長臨界段的instrumentation在設置的時間間隔內,將掛起警告。
dfs.webhdfs.use.ipc.callq TRUE 經過經過rpc調用的webhdfs路由。
httpfs.buffer.size 4096 建立或打開HTTPFS文件系統IO流時使用的緩衝區大小。
dfs.datanode.disk.check.min.gap 15m 同一datanode卷的兩次連續檢查之間的最小間隔。
dfs.datanode.disk.check.timeout 10m 在DataNode啓動期間,磁盤檢查完成的最大容許時間。若是在該時間間隔內沒有完成檢查,則將磁盤聲明爲失敗。此設置支持多個時間單位後綴,如 dfs.heartbeat.interval中所描述的。若是沒有指定後綴,則假設爲毫秒。
dfs.use.dfs.network.topology TRUE 啓用DFSNetworkTopology選擇放置副本的節點。
dfs.qjm.operations.timeout 60s QuorumJournalManager爲相關操做設置超時的公共密鑰。
dfs.reformat.disabled FALSE 禁用NAMENODE的從新格式化。
dfs.federation.router.default.nameserviceId   要監視的默認子集羣的Nameservice標識符。
dfs.federation.router.rpc.enable TRUE 若是爲true,則啓用在路由器中處理客戶端請求的RPC服務。 
dfs.federation.router.rpc-address 0.0.0.0:8888 處理全部客戶端請求的RPC地址。此屬性的值將採用 router-host1:rpc-port端口的形式。 
dfs.federation.router.rpc-bind-host   RPC服務器將綁定到的實際地址。若是設置了這個可選地址,它只覆蓋dfs.federation.router.rpc-address的主機名部分。
dfs.federation.router.handler.count 10 路由器用於處理來自客戶端的RPC請求的服務器線程數。
dfs.federation.router.handler.queue.size 100 處理RPC客戶端請求的處理數的隊列大小。
dfs.federation.router.reader.count 1 路由器處理RPC客戶端請求的讀數。 
dfs.federation.router.reader.queue.size 100 路由器處理RPC客戶端請求的讀數的隊列大小。
dfs.federation.router.connection.pool-size 1 從路由器到NAMENODE的鏈接池的大小。
dfs.federation.router.connection.clean.ms 10000 時間間隔,以毫秒爲單位,檢查鏈接池是否應該刪除未使用的鏈接。 
dfs.federation.router.connection.pool.clean.ms 60000 時間間隔,以毫秒爲單位,檢查鏈接管理器是否應該刪除未使用的鏈接池。 
dfs.federation.router.metrics.enable TRUE 是否啓用了路由器中的度量。 
dfs.federation.router.metrics.class org.apache.hadoop.hdfs.server.federation.metrics.FederationRPCPerformanceMonitor 類來監視路由器中的RPC系統。它必須實現RouterRpcMonitor接口。
dfs.federation.router.admin.enable TRUE 若是爲true,則啓用在路由器中處理客戶端請求的RPC管理服務。
dfs.federation.router.admin-address 0.0.0.0:8111 處理管理請求的RPC地址。此屬性的值將採用router-host1:rpc-port的形式。
dfs.federation.router.admin-bind-host   RPC管理服務器將綁定到的實際地址。若是設置了這個可選地址,它只覆蓋 dfs.federation.router.admin-address地址的主機名部分。
dfs.federation.router.admin.handler.count 1 路由器的服務器線程數,以處理來自管理員的RPC請求。 
dfs.federation.router.http-address 0.0.0.0:50071 處理Web請求到路由器的HTTP地址。此屬性的值將採用router-host1:http-port端口的形式。
dfs.federation.router.http-bind-host   HTTP服務器將綁定到的實際地址。若是設置了這個可選地址,它只覆蓋dfs.federation.router.http-address地址的主機名部分。
dfs.federation.router.https-address 0.0.0.0:50072 處理Web請求到路由器的HTTPS地址。此屬性的值將採用router-host1:https-port端口的形式。
dfs.federation.router.https-bind-host   HTTPS服務器將綁定到的實際地址。若是設置了這個可選地址,它只覆蓋dfs.federation.router.https-address地址的主機名部分。
dfs.federation.router.http.enable TRUE 是否啓用了在路由器中處理客戶端請求的HTTP服務。
dfs.federation.router.metrics.enable TRUE 是否啓用了路由器中的度量服務。
dfs.federation.router.file.resolver.client.class org.apache.hadoop.hdfs.server.federation.MockResolver 文件解析爲子集羣的類。
dfs.federation.router.namenode.resolver.client.class org.apache.hadoop.hdfs.server.federation.resolver.MembershipNamenodeResolver 解析子集羣的NAMENODE的類。
dfs.federation.router.store.enable TRUE 若是爲TRUE,路由器鏈接到狀態存儲。
dfs.federation.router.store.serializer org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreSerializerPBImpl 序列化狀態存儲記錄的類。
dfs.federation.router.store.driver.class org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreFileImpl 實現狀態存儲的類。默認狀況下,它使用本地磁盤。
dfs.federation.router.store.connection.test 60000 在毫秒內檢查鏈接到狀態存儲的頻率。
dfs.federation.router.cache.ttl 60000 在毫秒內刷新狀態存儲緩存的頻率。
dfs.federation.router.store.membership.expiration 300000 membership記錄的過時時間,單位爲毫秒。
dfs.federation.router.heartbeat.enable TRUE 若是爲true,路由器心跳進入狀態存儲。
dfs.federation.router.heartbeat.interval 5000 路由器進入狀態存儲的心跳頻率,單位爲毫秒。
dfs.federation.router.monitor.namenode   NAMENODE的標識符以監視和心跳。
dfs.federation.router.monitor.localnamenode.enable TRUE 若是爲true,路由器應監視本地機器中的NAMENODE。
相關文章
相關標籤/搜索