日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Hadoop参数汇总

發(fā)布時(shí)間:2025/7/14 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hadoop参数汇总 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Hadoop參數(shù)匯總

@(hadoop)[配置]

linux參數(shù)

以下參數(shù)最好優(yōu)化一下:

  • 文件描述符ulimit -n
  • 用戶最大進(jìn)程 nproc (hbase需要 hbse book)
  • 關(guān)閉swap分區(qū)
  • 設(shè)置合理的預(yù)讀取緩沖區(qū)
  • Linux的內(nèi)核的IO調(diào)度器
  • JVM參數(shù)

    JVM方面的優(yōu)化項(xiàng)Hadoop Performance Tuning Guide

    Hadoop參數(shù)大全

    適用版本:4.3.0

    主要配置文件:

    • core
    • hdfs
    • yarn
    • mapred

    重要性表示如下:

    • 重要
    • 一般
    • 不重要

    core-default.xml

    • hadoop.common.configuration.version

      配置文件的版本。

    • hadoop.tmp.dir=/tmp/hadoop-${user.name}

      Hadoop的臨時(shí)目錄,其它目錄會(huì)基于此路徑。本地目錄。

      只可以設(shè)置一個(gè)值;建議設(shè)置到一個(gè)足夠空間的地方,而不是默認(rèn)的/tmp下
      服務(wù)端參數(shù),修改需重啟

    • hadoop.security.authorization=false

      是否開啟安全服務(wù)驗(yàn)證。

      建議不開啟。認(rèn)證操作比較復(fù)雜,在公司內(nèi)部網(wǎng)絡(luò)下,重要性沒那么高

    • io.file.buffer.size=4096

      在讀寫文件時(shí)使用的緩存大小。這個(gè)大小應(yīng)該是內(nèi)存Page的倍數(shù)。

      建議1M

    • io.compression.codecs=null

      壓縮和解壓縮編碼類列表,用逗號(hào)分隔。這些類是使用Java ServiceLoader加載。

    • fs.defaultFS=file:///

      默認(rèn)文件系統(tǒng)的名稱。URI形式。uri's的scheme需要由(fs.SCHEME.impl)指定文件系統(tǒng)實(shí)現(xiàn)類。 uri's的authority部分用來指定host, port等。默認(rèn)是本地文件系統(tǒng)。

      HA方式,這里設(shè)置服務(wù)名,例如:hdfs://mycluster1
      HDFS的客戶端訪問HDFS需要此參數(shù)。

    • fs.trash.interval=0

      以分鐘為單位的垃圾回收時(shí)間,垃圾站中數(shù)據(jù)超過此時(shí)間,會(huì)被刪除。如果是0,垃圾回收機(jī)制關(guān)閉??梢耘渲迷诜?wù)器端和客戶端。如果在服務(wù)器端配置trash無效,會(huì)檢查客戶端配置。如果服務(wù)器端配置有效,客戶端配置會(huì)忽略。

      建議開啟,建議4320(3天)
      垃圾回收站,如有同名文件被刪除,會(huì)給文件順序編號(hào),例如:a.txt,a.txt(1)

    • fs.trash.checkpoint.interval=0

      以分鐘為單位的垃圾回收檢查間隔。應(yīng)該小于或等于fs.trash.interval。如果是0,值等同于fs.trash.interval。每次檢查器運(yùn)行,會(huì)創(chuàng)建新的檢查點(diǎn)。

      建議設(shè)置為60(1小時(shí))

    • dfs.ha.fencing.methods=null

      HDFS的HA功能的防腦裂方法。可以是內(nèi)建的方法(例如shell和sshfence)或者用戶定義的方法。建議使用sshfence(hadoop:9922),括號(hào)內(nèi)的是用戶名和端口,注意,這需要NN的2臺(tái)機(jī)器之間能夠免密碼登陸

      fences是防止腦裂的方法,保證NN中僅一個(gè)是Active的,如果2者都是Active的,新的會(huì)把舊的強(qiáng)制Kill。

    • dfs.ha.fencing.ssh.private-key-files=null

      使用sshfence時(shí),SSH的私鑰文件。?使用了sshfence,這個(gè)必須指定

    • ha.zookeeper.quorum=null

      Ha功能,需要一組zk地址,用逗號(hào)分隔。被ZKFailoverController使用于自動(dòng)失效備援failover。

    • ha.zookeeper.session-timeout.ms=5000

      ZK連接超時(shí)。ZKFC連接ZK時(shí)用。設(shè)置一個(gè)小值可以更快的探測(cè)到服務(wù)器崩潰(crash),但也會(huì)更頻繁的觸發(fā)失效備援,在傳輸錯(cuò)誤或者網(wǎng)絡(luò)不暢時(shí)。建議10s-30s

    • hadoop.http.staticuser.user=dr.who

      在網(wǎng)頁界面訪問數(shù)據(jù)使用的用戶名。默認(rèn)值是一個(gè)不真實(shí)存在的用戶,此用戶權(quán)限很小,不能訪問不同用戶的數(shù)據(jù)。這保證了數(shù)據(jù)安全。也可以設(shè)置為hdfs和hadoop等具有較高權(quán)限的用戶,但會(huì)導(dǎo)致能夠登陸網(wǎng)頁界面的人能看到其它用戶數(shù)據(jù)。實(shí)際設(shè)置請(qǐng)綜合考慮。如無特殊需求。使用默認(rèn)值就好

    • fs.permissions.umask-mode=22

      在創(chuàng)建文件和目錄時(shí)使用此umask值(用戶掩碼)。類linux上的文件權(quán)限掩碼??梢允褂?進(jìn)制數(shù)字也可以使用符號(hào),例如:"022" (8進(jìn)制,等同于以符號(hào)表示的u=rwx,g=r-x,o=r-x),或者"u=rwx,g=rwx,o="(符號(hào)法,等同于8進(jìn)制的007)。注意,8進(jìn)制的掩碼,和實(shí)際權(quán)限設(shè)置值正好相反,建議使用符號(hào)表示法,描述更清晰

    • io.native.lib.available=true

      是否啟動(dòng)Hadoop的本地庫,默認(rèn)啟用。本地庫可以加快基本操作,例如IO,壓縮等。

    • hadoop.http.filter.initializers=org.apache.hadoop.http.lib.StaticUserWebFilter

      Hadoop的Http服務(wù)中,用逗號(hào)分隔的一組過濾器類名,每個(gè)類必須擴(kuò)展自org.apache.hadoop.http.FilterInitializer。 這些組件被初始化,應(yīng)用于全部用戶的JSP和Servlet頁面。 列表中定義的順序就是過濾器被調(diào)用的順序。

    • hadoop.security.authentication

      安全驗(yàn)證規(guī)則,可以是simple和kerberos。simple意味著不驗(yàn)證。

    • hadoop.security.group.mapping=org.apache.hadoop.security.JniBasedUnixGroupsMappingWithFallback

      user到group的映射類。ACL用它以給定user獲取group。默認(rèn)實(shí)現(xiàn)是 org.apache.hadoop.security.JniBasedUnixGroupsMappingWithFallback, 如果JNI有效,它將發(fā)揮作用,使用Hadoop的API去獲取user的groups列表。如果JNI無效,會(huì)使用另一個(gè)基于shell的實(shí)現(xiàn), ShellBasedUnixGroupsMapping。這個(gè)實(shí)現(xiàn)是基于Linux、Unix的shell的環(huán)境。

    • hadoop.security.groups.cache.secs=300

      user到gourp映射緩存的有效時(shí)間。如果超時(shí),會(huì)再次調(diào)用去獲取新的映射關(guān)系然后緩存起來。

    • hadoop.security.service.user.name.key=null

      如果相同的RPC協(xié)議被多個(gè)Server實(shí)現(xiàn),這個(gè)配置是用來指定在客戶端進(jìn)行RPC調(diào)用時(shí),使用哪個(gè)principal name去聯(lián)系服務(wù)器。不建議使用

    • hadoop.security.uid.cache.secs=14400

      安全選項(xiàng)。不建議使用

    • hadoop.rpc.protection=authentication

      rpc連接保護(hù)??扇〉闹涤衋uthentication(認(rèn)證), integrity(完整) and privacy(隱私)。不建議使用

    • hadoop.work.around.non.threadsafe.getpwuid=false

      一些系統(tǒng)已知在調(diào)用getpwuid_r和getpwgid_r有問題,這些調(diào)用是非線程安全的。這個(gè)問題的主要表現(xiàn)特征是JVM崩潰。如果你的系統(tǒng)有這些問題,開啟這個(gè)選項(xiàng)。默認(rèn)是關(guān)閉的。

    • hadoop.kerberos.kinit.command=kinit

      用來定期的向Hadoop提供新的Kerberos證書。所提供命令需要能夠在運(yùn)行Hadoop客戶端的用戶路徑中查找到,否則,請(qǐng)指定絕對(duì)路徑。不建議使用

    • hadoop.security.auth_to_local=null

      映射kerberos principals(代理人)到本地用戶名

    • io.bytes.per.checksum=512

      每次進(jìn)行校驗(yàn)和檢查的字節(jié)數(shù)。一定不能大于io.file.buffer.size.

    • io.skip.checksum.errors=FALSE

      是否跳過校驗(yàn)和錯(cuò)誤,默認(rèn)是否,校驗(yàn)和異常時(shí)會(huì)拋出錯(cuò)誤。

    • io.serializations=org.apache.hadoop.io.serializer.WritableSerialization,org.apache.hadoop.io.serializer.avro.AvroSpecificSerialization,org.apache.hadoop.io.serializer.avro.AvroReflectSerialization

      序列化類列表,可以被用來獲取序列化器和反序列化器(serializers and deserializers)。

    • io.seqfile.local.dir=${hadoop.tmp.dir}/io/local

      本地文件目錄。sequence file在merge過程中存儲(chǔ)內(nèi)部數(shù)據(jù)的地方??梢允嵌禾?hào)分隔的一組目錄。最好在不同磁盤以分散IO。實(shí)際不存在的目錄會(huì)被忽略。

    • io.map.index.skip=0

      跳過的索引實(shí)體數(shù)量在entry之間。默認(rèn)是0。設(shè)置大于0的值可以用更少的內(nèi)存打開大MapFiles。注意:MpaFile是一組Sequence文件,是排序后的,帶內(nèi)部索引的文件

    • io.map.index.interval=128

      MapFile包含兩個(gè)文件,數(shù)據(jù)文件和索引文件。每io.map.index.interval個(gè)記錄寫入數(shù)據(jù)文件,一條記錄(行key,數(shù)據(jù)文件位置)寫入索引文件。

    • fs.default.name=file:///

      過時(shí)。使用(fs.defaultFS)代替

    • fs.AbstractFileSystem.file.impl=org.apache.hadoop.fs.local.LocalFs

      文件系統(tǒng)實(shí)現(xiàn)類:file

    • fs.AbstractFileSystem.hdfs.impl=org.apache.hadoop.fs.Hdfs

      文件系統(tǒng)實(shí)現(xiàn)類:hdfs

    • fs.AbstractFileSystem.viewfs.impl=org.apache.hadoop.fs.viewfs.ViewFs

      文件系統(tǒng)實(shí)現(xiàn)類:viewfs (例如客戶端掛載表)。

      在實(shí)現(xiàn)federation特性時(shí),客戶端可以部署此系統(tǒng),方便同時(shí)訪問多個(gè)nameservice

    • fs.ftp.host=0.0.0.0

      非Hdfs文件系統(tǒng)設(shè)置。暫不關(guān)注

    • fs.ftp.host.port=21

      非Hdfs文件系統(tǒng)設(shè)置。暫不關(guān)注

    • fs.df.interval=60000

      磁盤使用統(tǒng)計(jì)刷新間隔,以毫秒為單位

    • fs.s3.block.size=67108864

      非Hdfs文件系統(tǒng)設(shè)置。暫不關(guān)注

    • fs.s3.buffer.dir=${hadoop.tmp.dir}/s3

      非Hdfs文件系統(tǒng)設(shè)置。暫不關(guān)注

    • fs.s3.maxRetries=4

      非Hdfs文件系統(tǒng)設(shè)置。暫不關(guān)注

    • fs.s3.sleepTimeSeconds=10

      非Hdfs文件系統(tǒng)設(shè)置。暫不關(guān)注

    • fs.automatic.close=true

      默認(rèn)的,文件系統(tǒng)實(shí)例在程序退出時(shí)自動(dòng)關(guān)閉,通過JVM shutdown hook方式??梢园汛藢傩栽O(shè)置為false取消這種操作。這是一個(gè)高級(jí)選項(xiàng),需要使用者特別關(guān)注關(guān)閉順序。不要關(guān)閉

    • fs.s3n.block.size=67108864

      非Hdfs文件系統(tǒng)設(shè)置。暫不關(guān)注

    • io.seqfile.compress.blocksize=1000000

      SequenceFiles以塊壓縮方式壓縮時(shí),塊大小大于此值時(shí)才啟動(dòng)壓縮。

    • io.seqfile.lazydecompress=TRUE

      懶惰解壓,僅在必要時(shí)解壓,僅對(duì)塊壓縮的SequenceFiles有效。

    • io.seqfile.sorter.recordlimit=1000000

      在SequenceFiles.Sorter spill過程中,保存在內(nèi)存中的記錄數(shù)

    • io.mapfile.bloom.size=1048576

      在BloomMapFile使用的布隆過濾器內(nèi)存大小。

    • io.mapfile.bloom.error.rate=0.005

      BloomMapFile中使用布隆過濾器失敗比率. 如果減少這個(gè)值,使用的內(nèi)存會(huì)成指數(shù)增長(zhǎng)。

    • hadoop.util.hash.type=murmur

      默認(rèn)Hash算法實(shí)現(xiàn). 'murmur':MurmurHash, 'jenkins':JenkinsHash.

    • ipc.client.idlethreshold=4000

      連接數(shù)閥值,超過此值,需要進(jìn)行空閑連接檢查

    • ipc.client.kill.max=10

      定義客戶端最大數(shù)量,超過會(huì)被斷開連接

    • ipc.client.connection.maxidletime=10000

      毫秒,最大時(shí)間,超過后客戶端會(huì)斷開和服務(wù)器的連接。

    • ipc.client.connect.max.retries=10

      客戶端連接重試次數(shù)。

    • ipc.client.connect.max.retries.on.timeouts=45

      在連接超時(shí)后,客戶端連接重試次數(shù)

    • ipc.server.listen.queue.size=128

      定義服務(wù)器端接收客戶端連接的監(jiān)聽隊(duì)列長(zhǎng)度

    • ipc.server.tcpnodelay=false

      在服務(wù)器端開啟/關(guān)閉Nagle's算法,此算法可以延遲小數(shù)據(jù)包發(fā)送,從而達(dá)到網(wǎng)絡(luò)流量更有效利用。但是這對(duì)小數(shù)據(jù)包是不利的。默認(rèn)關(guān)閉。建議false,即開啟Nagle算法

    • ipc.client.tcpnodelay=false

      參考ipc.server.tcpnodelay,客戶端參數(shù)。或許可以考慮關(guān)閉Nagle算法,增加客戶端響應(yīng)速度

    • hadoop.rpc.socket.factory.class.default=org.apache.hadoop.net.StandardSocketFactory

      高級(jí)選項(xiàng),暫不考慮

    • hadoop.rpc.socket.factory.class.ClientProtocol=null

      高級(jí)選項(xiàng),暫不考慮

    • hadoop.socks.server=null

      高級(jí)選項(xiàng),暫不考慮

    • net.topology.node.switch.mapping.impl=org.apache.hadoop.net.ScriptBasedMapping

      機(jī)架感知實(shí)現(xiàn)類。

    • net.topology.script.file.name=null

      配合ScriptBasedMapping使用。腳本文件。此腳本文件,輸入是ip地址,輸出是機(jī)架路徑。

    • net.topology.script.number.args=100

      機(jī)架感知腳本文件的參數(shù)最大數(shù)量。腳本每次運(yùn)行被傳遞的參數(shù),每個(gè)參數(shù)是一個(gè)ip地址

    • net.topology.table.file.name=null

      在net.topology.script.file.name被設(shè)置為 org.apache.hadoop.net.TableMapping時(shí),可以使用此配置。文件格式是一個(gè)有兩個(gè)列的文本文件,使用空白字符分隔。第一列是DNS或IP地址,第二列是機(jī)架路徑。如無指定,使用默認(rèn)機(jī)架(/default-rack)

    • file.stream-buffer-size=4096

      非hdfs文件系統(tǒng),暫不關(guān)注

    • s3.stream-buffer-size=4096

      非hdfs文件系統(tǒng),暫不關(guān)注

    • kfs.stream-buffer-size=4096

      非hdfs文件系統(tǒng),暫不關(guān)注

    • ftp.stream-buffer-size=4096

      非hdfs文件系統(tǒng),暫不關(guān)注

    • tfile.io.chunk.size=1048576

      非hdfs文件系統(tǒng),暫不關(guān)注

    • hadoop.http.authentication.type=simple

      Oozie Http終端安全驗(yàn)證。可選值:simple | kerberos |#AUTHENTICATION_HANDLER_CLASSNAME#

      建議simple,關(guān)閉驗(yàn)證

    • hadoop.http.authentication.token.validity=36000

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.http.authentication.signature.secret.file=${user.home}/hadoop-http-auth-signature-secret

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.http.authentication.cookie.domain=null

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.http.authentication.simple.anonymous.allowed=TRUE

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.http.authentication.kerberos.principal=HTTP/_HOST@LOCALHOST

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.http.authentication.kerberos.keytab=${user.home}/hadoop.keytab

      安全選項(xiàng)。暫不關(guān)注

    • dfs.ha.fencing.ssh.connect-timeout=30000

      SSH連接超時(shí),毫秒,僅適用于內(nèi)建的sshfence fencer。

    • ha.zookeeper.parent-znode=/hadoop-ha

      ZK失效備援功能,需要在ZK上創(chuàng)建節(jié)點(diǎn),這里是根節(jié)點(diǎn)的名稱。ZKFC會(huì)在這下面工作。注意,NameService ID會(huì) 被寫到此節(jié)點(diǎn)下,所以即便是開啟federation功能,也僅需要指定一個(gè)值。

    • ha.zookeeper.acl=world:anyone:rwcda

      ZKFC創(chuàng)建的ZK節(jié)點(diǎn)的訪問控制權(quán)限設(shè)置??梢远鄠€(gè),逗號(hào)分隔。此設(shè)置和ZK的CLI使用相同的格式。

    • ha.zookeeper.auth=null

      ZK操作時(shí)的權(quán)限驗(yàn)證。

    • hadoop.ssl.keystores.factory.class=org.apache.hadoop.security.ssl.FileBasedKeyStoresFactory

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.ssl.require.client.cert=FALSE

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.ssl.hostname.verifier=DEFAULT

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.ssl.server.conf=ssl-server.xml

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.ssl.client.conf=ssl-client.xml

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.ssl.enabled=FALSE

      安全選項(xiàng)。暫不關(guān)注

    • hadoop.jetty.logs.serve.aliases=TRUE

      是否允許在Jetty中使用別名服務(wù)。

    • ha.health-monitor.connect-retry-interval.ms=1000

      HA功能的健康監(jiān)控連接重試間隔

    • ha.health-monitor.check-interval.ms=1000

      HA功能的健康監(jiān)控連接間隔

    • ha.health-monitor.sleep-after-disconnect.ms=1000

      HA功能的健康監(jiān)控,在因網(wǎng)絡(luò)問題失去連接后休眠多久。用于避免立即重試,此時(shí)網(wǎng)絡(luò)問題仍在,沒有意義

    • ha.health-monitor.rpc-timeout.ms=45000

      HA功能健康監(jiān)控的超時(shí)時(shí)間,毫秒

    • ha.failover-controller.new-active.rpc-timeout.ms=60000

      FC等待新的NN變成active狀態(tài)的超時(shí)時(shí)間。

    • ha.failover-controller.graceful-fence.rpc-timeout.ms=5000

      FC等待舊的active變成standby的超時(shí)時(shí)間。

    • ha.failover-controller.graceful-fence.connection.retries=1

      FC在做完美隔離是的連接重試次數(shù)(graceful fencing)

    • ha.failover-controller.cli-check.rpc-timeout.ms=20000

      手動(dòng)運(yùn)行的FC功能(從CLI)等待健康檢查、服務(wù)狀態(tài)的超時(shí)時(shí)間。

    hdfs-default.xml

    • hadoop.hdfs.configuration.version=1

      配置文件的版本

    • dfs.datanode.address=0.0.0.0:50010

      DN服務(wù)地址和端口,用于數(shù)據(jù)傳輸。0表示任意空閑端口。

      xferPort dfs.datanode.address 50010 數(shù)據(jù)流地址 數(shù)據(jù)傳輸 infoPort dfs.datanode.http.address 50075 ipcPort dfs.datanode.ipc.address 50020 命令
    • dfs.datanode.http.address=0.0.0.0:50075

      DN的HTTP服務(wù)地址和端口。0表示任意空閑端口。

    • dfs.datanode.ipc.address=0.0.0.0:50020

      DN的IPC地址和端口。0表示任意空閑端口。

    • dfs.namenode.rpc-address=0.0.0.0:50090

      NN的RPC地址和端口

    • dfs.namenode.http-address=0.0.0.0:50070

      NN的HTTP地址和端口。0表示任意空閑端口。

    • dfs.datanode.du.reserved=0

      每個(gè)磁盤(volume)的保留空間,字節(jié)。要注意留足夠的空間給非HDFS文件使用。建議保留磁盤容量的5%或者50G以上

    • dfs.namenode.name.dir.restore=FALSE

      設(shè)置為true,允許NN嘗試恢復(fù)之前失敗的dfs.namenode.name.dir目錄。在創(chuàng)建checkpoint是做此嘗試。如果設(shè)置多個(gè)磁盤,建議允許

    • dfs.namenode.edits.dir=${dfs.namenode.name.dir}

      本地文件,NN存放edits文件的目錄??梢允嵌禾?hào)分隔的目錄列表。edits文件會(huì)存儲(chǔ)在每個(gè)目錄,冗余安全。

    • dfs.namenode.shared.edits.dir=null

      在多個(gè)NN中共享存儲(chǔ)目錄,用于存放edits文件。這個(gè)目錄,由active寫,由standby讀,以保持命名空間數(shù)據(jù)一致。此目錄不需要是dfs.namenode.edits.dir中列出的。在非HA集群中,它不會(huì)使用。建議使用qj方式,可以不關(guān)注這個(gè)選項(xiàng)

    • dfs.namenode.edits.journal-plugin.qjournal=org.apache.hadoop.hdfs.qjournal.client.QuorumJournalManager

      qj方式共享edits。建議使用此方式

    • dfs.permissions.enabled=true

      是否在HDFS中開啟權(quán)限檢查。

    • dfs.permissions.superusergroup=supergroup

      超級(jí)用戶組。僅能設(shè)置一個(gè)。

    • dfs.datanode.data.dir=file://${hadoop.tmp.dir}/dfs/data

      本地磁盤目錄,HDFS數(shù)據(jù)應(yīng)該存儲(chǔ)Block的地方??梢允嵌禾?hào)分隔的目錄列表(典型的,每個(gè)目錄在不同的磁盤)。這些目錄被輪流使用,一個(gè)塊存儲(chǔ)在這個(gè)目錄,下一個(gè)塊存儲(chǔ)在下一個(gè)目錄,依次循環(huán)。每個(gè)塊在同一個(gè)機(jī)器上僅存儲(chǔ)一份。不存在的目錄被忽略。必須創(chuàng)建文件夾,否則被視為不存在。

    • dfs.replication=3

      數(shù)據(jù)塊副本數(shù)。此值可以在創(chuàng)建文件是設(shè)定,客戶端可以只有設(shè)定,也可以在命令行修改。不同文件可以有不同的副本數(shù)。默認(rèn)值用于未指定時(shí)。

    • dfs.replication.max=512

      最大塊副本數(shù),不要大于節(jié)點(diǎn)總數(shù)。

    • dfs.namenode.replication.min=1

      最小塊副本數(shù)。在上傳文件時(shí),達(dá)到最小副本數(shù),就認(rèn)為上傳是成功的

    • dfs.blocksize=67108864

      塊大小,字節(jié)??梢允褂煤缶Y: k(kilo), m(mega), g(giga), t(tera), p(peta), e(exa)指定大小 (就像128k, 512m, 1g, 等待)。

    • dfs.client.block.write.retries=3

      客戶端寫數(shù)據(jù)到DN時(shí),最大重試次數(shù)。超過重試次數(shù)就會(huì)報(bào)出錯(cuò)誤。

    • dfs.client.block.write.replace-datanode-on-failure.enable=true

      在進(jìn)行pipeline寫數(shù)據(jù)(上傳數(shù)據(jù)的方式)時(shí),如果DN或者磁盤故障,客戶端將嘗試移除失敗的DN,然后寫到剩下的磁盤。一個(gè)結(jié)果是,pipeline中的DN減少了。這個(gè)特性是添加新的DN到pipeline。這是一個(gè)站點(diǎn)范圍的選項(xiàng)。當(dāng)集群規(guī)模非常小時(shí),例如3個(gè)或者更小,集群管理者可能想要禁止掉此特性。

    • dfs.client.block.write.replace-datanode-on-failure.policy=DEFAULT

      此屬性僅在dfs.client.block.write.replace-datanode-on-failure.enable設(shè)置為true時(shí)有效。

      • ALWAYS: 總是添加新的DN
        • NEVER: 從不添加新的DN
        • DEFAULT: 設(shè)r是副本數(shù),n是要寫的DN數(shù)。在r>=3并且floor(r/2)>=n或者r>n(前提是文件是hflushed/appended)時(shí)添加新的DN。
    • dfs.heartbeat.interval=3

      DN的心跳間隔,秒

    • dfs.namenode.handler.count=10

      NN的服務(wù)線程數(shù)。用于處理RPC請(qǐng)求。

    • dfs.namenode.safemode.threshold-pct=0.999f

      數(shù)據(jù)進(jìn)入安全模式閥值,百分比,float形式,數(shù)據(jù)塊達(dá)到最小副本數(shù)(dfs.namenode.replication.min)的百分比。值小于等于0意味著在退出安全模式前不等待數(shù)據(jù)修復(fù)。大于1的值將導(dǎo)致無法離開安全模式。

    • dfs.namenode.safemode.extension=30000

      安全模式擴(kuò)展存在時(shí)間,在需要的閥值達(dá)到后,毫秒。可以設(shè)置為0,或者比較短的一個(gè)時(shí)間,例如3秒

    • dfs.datanode.balance.bandwidthPerSec=1048576

      在做數(shù)據(jù)平衡時(shí),每個(gè)DN最大帶寬占用,每秒字節(jié)。默認(rèn)值是1M。建議可以到10M

    • dfs.hosts=null

      文件名,包含了一個(gè)host列表,允許列表內(nèi)機(jī)器連到NN。必須指定完整路徑。如果值為空,全部hosts都允許連入。

    • dfs.hosts.exclude=null

      文件名,包含了一個(gè)hosts列表,不允許列表內(nèi)機(jī)器連到NN。必須指定完整路徑。如果值為空。沒有host被禁止。如果上述2個(gè)都設(shè)置并且有重合,dfs.hosts中優(yōu)先級(jí)高。

    • dfs.stream-buffer-size=4096

      文件流緩存大小。需要是硬件page大小的整數(shù)倍。在讀寫操作時(shí),數(shù)據(jù)緩存大小。注意和core-default.xml中指定文件類型的緩存是不同的,這個(gè)是dfs共用的

    • dfs.namenode.num.extra.edits.retained=1000000

      除最小的必須的editlog之外,額外保留的editlog文件數(shù)量。這是有用的,可以用于審核目的,或者HA設(shè)置一個(gè)遠(yuǎn)程Standby節(jié)點(diǎn)并且有時(shí)可能離線時(shí),都需要保留一個(gè)較長(zhǎng)的backlog。


      典型的,每個(gè)edit大約幾百字節(jié),默認(rèn)的1百萬editlog大約有百兆到1G。注意:早先的extra edits文件可能操作這里設(shè)置的值,因?yàn)檫€有其它選項(xiàng),例如dfs.namenode.max.extra.edits.segments.retained

      建議值:2200,約3天的

    • dfs.datanode.handler.count=10

      DN的服務(wù)線程數(shù)。這些線程僅用于接收請(qǐng)求,處理業(yè)務(wù)命令

    • dfs.datanode.failed.volumes.tolerated=0

      可以接受的卷的失敗數(shù)量。默認(rèn)值0表示,任一個(gè)卷失敗都會(huì)導(dǎo)致DN關(guān)閉。

      建議設(shè)置此值,避免個(gè)別磁盤問題。如果此值超過真實(shí)磁盤數(shù),將會(huì)報(bào)錯(cuò),啟動(dòng)失敗

    • dfs.namenode.support.allow.format=true

      NN是否允許被格式化?在生產(chǎn)系統(tǒng),把它設(shè)置為false,阻止任何格式化操作在一個(gè)運(yùn)行的DFS上。

      建議初次格式化后,修改配置禁止

    • dfs.client.failover.max.attempts=15

      專家設(shè)置??蛻舳耸≈卦嚧螖?shù)。

    • dfs.client.failover.connection.retries=0

      專家設(shè)置。IPC客戶端失敗重試次數(shù)。在網(wǎng)絡(luò)不穩(wěn)定時(shí)建議加大此值

    • dfs.client.failover.connection.retries.on.timeouts=0

      專家設(shè)置。IPC客戶端失敗重試次數(shù),此失敗僅指超時(shí)失敗。在網(wǎng)絡(luò)不穩(wěn)定時(shí)建議加大此值

    • dfs.nameservices=null

      nameservices列表。逗號(hào)分隔。

      我們常用的僅配置一個(gè),啟動(dòng)federation功能需要配置多個(gè)

    • dfs.nameservice.id=null

      nameservice id,如果沒有配置或者配置多個(gè),由匹配到的本地節(jié)點(diǎn)地址配置的IP地址決定。我們進(jìn)配置一個(gè)NS的情況下,建議這里不配置

    • dfs.ha.namenodes.EXAMPLENAMESERVICE=null

      包含一個(gè)NN列表。EXAMPLENAMESERVICE是指具體的nameservice名稱,通常就是dfs.nameservices中配置的。值是預(yù)備配置的NN的ID。

      ID是自己取的,不重復(fù)就可以,例如nn1,nn2

    • dfs.ha.namenode.id=null

      NN的ID,如果沒有配置,由系統(tǒng)決定。通過匹配本地節(jié)點(diǎn)地址和配置的地址。

      這里設(shè)置的是本機(jī)的NN的ID(此配置僅對(duì)NN生效),由于要配置2個(gè)NN,建議沒有特殊需要,這里不進(jìn)行配置

    • dfs.ha.automatic-failover.enabled=FALSE

      是否開啟自動(dòng)故障轉(zhuǎn)移。建議開啟,true

    • dfs.namenode.avoid.write.stale.datanode=FALSE

      決定是否避開在臟DN上寫數(shù)據(jù)。寫操作將會(huì)避開臟DN,除非超過一個(gè)配置的比率 (dfs.namenode.write.stale.datanode.ratio)。

      嘗試開啟

    • dfs.journalnode.rpc-address=0.0.0.0:8485

      JournalNode RPC服務(wù)地址和端口

    • dfs.journalnode.http-address=0.0.0.0:8480

      JournalNode的HTTP地址和端口。端口設(shè)置為0表示隨機(jī)選擇。

    • dfs.namenode.audit.loggers=default

      審查日志的實(shí)現(xiàn)類列表,能夠接收audit事件。它們需要實(shí)現(xiàn) org.apache.hadoop.hdfs.server.namenode.AuditLogger接口。默認(rèn)值"default"可以用于引用默認(rèn)的audit logger, 它使用配置的日志系統(tǒng)。安裝客戶自己的audit loggers可能影響NN的穩(wěn)定性和性能。

      建議default,開啟

    • dfs.client.socket-timeout=60*1000

    • dfs.datanode.socket.write.timeout=8*60*1000

    • dfs.datanode.socket.reuse.keepalive=1000

    • dfs.namenode.logging.level=info

      DFS的NN的日志等級(jí)。值可以是:info,dir(跟蹤命名空間變動(dòng)),"block" (跟蹤塊的創(chuàng)建刪除,replication變動(dòng)),或者"all".

    • dfs.namenode.secondary.http-address=0.0.0.0:50090

      SNN的http服務(wù)地址。如果是0,服務(wù)將隨機(jī)選擇一個(gè)空閑端口。使用了HA后,就不再使用SNN了

    • dfs.https.enable=FALSE

      允許HDFS支持HTTPS(SSL)。建議不支持

    • dfs.client.https.need-auth=FALSE

      安全選項(xiàng),暫不關(guān)注

    • dfs.https.server.keystore.resource=ssl-server.xml

      安全選項(xiàng),暫不關(guān)注

    • dfs.client.https.keystore.resource=ssl-client.xml

      安全選項(xiàng),暫不關(guān)注

    • dfs.datanode.https.address=0.0.0.0:50475

      安全選項(xiàng),暫不關(guān)注

    • dfs.namenode.https-address=0.0.0.0:50470

      安全選項(xiàng),暫不關(guān)注

    • dfs.datanode.dns.interface=default

      DN匯報(bào)它的IP地址的網(wǎng)卡。我們給DN指定了0.0.0.0之類的地址,這個(gè)地址需要被解析成對(duì)外地址,這里指定的是網(wǎng)卡名,即那個(gè)網(wǎng)卡上綁定的IP是可以對(duì)外的IP,一般的,默認(rèn)值就足夠了

    • dfs.datanode.dns.nameserver=default

      DNS的域名或者IP地址。DN用它來確定自己的域名,在對(duì)外聯(lián)系和顯示時(shí)調(diào)用。一般的,默認(rèn)值就足夠了

    • dfs.namenode.backup.address=0.0.0.0:50100

      NN的BK節(jié)點(diǎn)地址和端口,0表示隨機(jī)選用。使用HA,就不需要關(guān)注此選項(xiàng)了。建議不使用BK節(jié)點(diǎn)

    • dfs.namenode.backup.http-address=0.0.0.0:50105

      使用HA,就不需要關(guān)注此選項(xiàng)了。建議不使用BK節(jié)點(diǎn)

    • dfs.namenode.replication.considerLoad=true

      設(shè)定在選擇存放目標(biāo)時(shí)是否考慮負(fù)載。需要

    • dfs.default.chunk.view.size=32768

      在瀏覽器中查看一個(gè)文件時(shí),可以看到的字節(jié)數(shù)。

    • dfs.namenode.name.dir=file://${hadoop.tmp.dir}/dfs/name

      本地磁盤目錄,NN存儲(chǔ)fsimage文件的地方??梢允前炊禾?hào)分隔的目錄列表,fsimage文件會(huì)存儲(chǔ)在全部目錄,冗余安全。這里多個(gè)目錄設(shè)定,最好在多個(gè)磁盤,另外,如果其中一個(gè)磁盤故障,不會(huì)導(dǎo)致系統(tǒng)故障,會(huì)跳過壞磁盤。由于使用了HA,建議僅設(shè)置一個(gè)。如果特別在意安全,可以設(shè)置2個(gè)

    • dfs.namenode.fs-limits.max-component-length=0

      路徑中每個(gè)部分的最大字節(jié)長(zhǎng)度(目錄名,文件名的長(zhǎng)度)。0表示不檢查長(zhǎng)度。長(zhǎng)文件名影響性能

    • dfs.namenode.fs-limits.max-directory-items=0

      設(shè)置每個(gè)目錄最多擁有多少個(gè)子目錄或者文件。0表示無限制。同一目錄下子文件和目錄多影響性能

    • dfs.namenode.fs-limits.min-block-size=1048576

      最小的Block大小,字節(jié)。在NN創(chuàng)建時(shí)強(qiáng)制驗(yàn)證。避免用戶設(shè)定過小的Block Size,導(dǎo)致過多的Block,這非常影響性能。

    • dfs.namenode.fs-limits.max-blocks-per-file=1048576

      每個(gè)文件最大的Block數(shù)。在NN寫時(shí)強(qiáng)制檢查。用于防止創(chuàng)建超大文件。

    • dfs.block.access.token.enable=FALSE

      訪問DN時(shí)是否驗(yàn)證訪問令牌。建議false,不檢查

    • dfs.block.access.key.update.interval=600

      安全選項(xiàng),暫不關(guān)注

    • dfs.block.access.token.lifetime=600

      安全選項(xiàng),暫不關(guān)注

    • dfs.datanode.data.dir.perm=700

      本地?cái)?shù)據(jù)目錄權(quán)限設(shè)定。8進(jìn)制或者符號(hào)方式都可以。

    • dfs.blockreport.intervalMsec=21600000

      數(shù)據(jù)塊匯報(bào)間隔,毫秒,默認(rèn)是6小時(shí)。

    • dfs.blockreport.initialDelay=0

      第一次數(shù)據(jù)塊匯報(bào)時(shí)延遲,秒。目的是減輕NN壓力?

    • dfs.datanode.directoryscan.interval=21600

      DN的數(shù)據(jù)塊掃描間隔,秒。磁盤上數(shù)據(jù)和內(nèi)存中數(shù)據(jù)調(diào)整一致。

    • dfs.datanode.directoryscan.threads=1

      線程池要有多少線程用來并發(fā)的壓縮磁盤的匯報(bào)數(shù)據(jù)。

    • dfs.namenode.safemode.min.datanodes=0

      NN收到回報(bào)的DN的數(shù)量的最小值,達(dá)不到此值,NN不退出安全模式。(在系統(tǒng)啟動(dòng)時(shí)發(fā)生作用)。<=0的值表示不關(guān)心DN數(shù)量,在啟動(dòng)時(shí)。大于DN實(shí)際數(shù)量的值會(huì)導(dǎo)致無法離開安全模式。建議不設(shè)置此值

    • dfs.namenode.max.objects=0

      DFS支持的最大文件、目錄、數(shù)據(jù)塊數(shù)量。0無限制。

    • dfs.namenode.decommission.interval=30

      NN周期性檢查退役是否完成的間隔,秒。

    • dfs.namenode.decommission.nodes.per.interval=5

      NN檢查退役是否完成,每dfs.namenode.decommission.interval秒檢查的節(jié)點(diǎn)數(shù)量。

    • dfs.namenode.replication.interval=3

      NN周期性計(jì)算DN的副本情況的頻率,秒。

    • dfs.namenode.accesstime.precision=3600000

      HDFS文件的訪問時(shí)間精確到此值,默認(rèn)是1小時(shí)。0表示禁用訪問時(shí)間。

    • dfs.datanode.plugins=null

      DN上的插件列表,逗號(hào)分隔。

    • dfs.namenode.plugins=null

      NN上的插件列表,逗號(hào)分隔。

    • dfs.bytes-per-checksum=512

      每次計(jì)算校驗(yàn)和的字節(jié)數(shù)。一定不能大于dfs.stream-buffer-size。

    • dfs.client-write-packet-size=65536

      客戶端寫數(shù)據(jù)時(shí)的包的大小。包是塊中的更小單位數(shù)據(jù)集合

    • dfs.client.write.exclude.nodes.cache.expiry.interval.millis=600000

      最大周期去讓DN保持在例外節(jié)點(diǎn)隊(duì)列中。毫秒。操過此周期,先前被排除的DN將被移除緩存并被嘗試再次申請(qǐng)Block。默認(rèn)為10分鐘。

    • dfs.namenode.checkpoint.dir=file://${hadoop.tmp.dir}/dfs/namesecondary

      本地文件系統(tǒng)中,DFS SNN應(yīng)該在哪里存放臨時(shí)[用于合并|合并后](to merge)的Image。如果是逗號(hào)分隔的目錄列表,Image文件存放多份。冗余備份。建議不使用SNN功能,忽略此配置

    • dfs.namenode.checkpoint.edits.dir=${dfs.namenode.checkpoint.dir}

      建議不使用SNN功能,忽略此配置

    • dfs.namenode.checkpoint.period=3600

      建議不使用SNN功能,忽略此配置

    • dfs.namenode.checkpoint.txns=1000000

      建議不使用SNN功能,忽略此配置

    • dfs.namenode.checkpoint.check.period=60

      建議不使用SNN功能,忽略此配置

    • dfs.namenode.checkpoint.max-retries=3

      建議不使用SNN功能,忽略此配置

    • dfs.namenode.num.checkpoints.retained=2
      建議不使用SNN功能,忽略此配置

    • dfs.namenode.num.extra.edits.retained=1000000

      數(shù)量限制,額外的edits事務(wù)數(shù)。

    • dfs.namenode.max.extra.edits.segments.retained=10000

      extra edit日志文件segments的最大數(shù)量。除了用于NN重啟時(shí)的最小edits文件之外。一個(gè)segments包含多個(gè)日志文件

    • dfs.namenode.delegation.key.update-interval=86400000

      NN中更新主代理令牌的時(shí)間間隔,毫秒。安全選項(xiàng),不關(guān)注

    • dfs.namenode.delegation.token.max-lifetime=604800000

      NN中更新主代理令牌的時(shí)間間隔,毫秒。安全選項(xiàng),不關(guān)注

    • dfs.namenode.delegation.token.renew-interval=86400000

      NN中更新主代理令牌的時(shí)間間隔,毫秒。安全選項(xiàng),不關(guān)注

    • dfs.image.compress=FALSE

      Image文件要壓縮嗎?

    • dfs.image.compression.codec=org.apache.hadoop.io.compress.DefaultCodec

      Image文件壓縮編碼。必須是在io.compression.codecs中定義的編碼。

    • dfs.image.transfer.timeout=600000

      Image文件傳輸時(shí)超時(shí)。HA方式使用不到,可不關(guān)注

    • dfs.image.transfer.bandwidthPerSec=0

      Image文件傳輸時(shí)可以使用的最大帶寬,秒字節(jié)。0表示沒有限制。HA方式使用不到,可不關(guān)注

    • dfs.datanode.max.transfer.threads=4096

      = 舊參數(shù) dfs.datanode.max.xcievers
      DN上傳送數(shù)據(jù)出入的最大線程數(shù)。

    • dfs.datanode.readahead.bytes=4193404

      預(yù)讀磁盤數(shù)據(jù)。如果Hadoop本地庫生效,DN可以調(diào)用posix_fadvise系統(tǒng)獲取頁面數(shù)據(jù)到操作系統(tǒng)的緩存中。這個(gè)配置指定讀取當(dāng)前讀取位置之前的字節(jié)數(shù)。設(shè)置為0,取消此功能。無本地庫,此功能也無效。

    • dfs.datanode.drop.cache.behind.reads=FALSE

      在有些場(chǎng)景下,特別是對(duì)一些大的,并且不可能重用的數(shù)據(jù),緩存在操作系統(tǒng)的緩存區(qū)是無用的。此時(shí),DN可以配置自動(dòng)清理緩存區(qū)數(shù)據(jù),在已經(jīng)發(fā)生向客戶端之后。此功能自動(dòng)失效,在讀取小數(shù)據(jù)片時(shí)。(例如HBase的隨機(jī)讀寫場(chǎng)景)。通過釋放緩存,這在某些場(chǎng)景下可以提高性能。Hadoop本地庫無效,此功能無效。看起來是一個(gè)可以嘗試的特性

    • dfs.datanode.drop.cache.behind.writes=FALSE

      同dfs.datanode.drop.cache.behind.reads相似。

    • dfs.datanode.sync.behind.writes=FALSE

      如果是true,在寫之后,DN將指示操作系統(tǒng)把隊(duì)列中數(shù)據(jù)全部立即寫磁盤。和常用的OS策略不同,它們可能在觸發(fā)寫磁盤之前等待30秒。Hadoop本地庫無效,此功能無效。

    • dfs.client.failover.sleep.base.millis=500

      專家設(shè)置。失敗重試間的等待時(shí)間,毫秒。這里的值是個(gè)基本值,實(shí)際值會(huì)根據(jù)失敗/成功次數(shù)遞增/遞減50%。第一次失敗會(huì)立即重試。第二次將延遲至少dfs.client.failover.sleep.base.millis毫秒。依次類推。

    • dfs.client.failover.sleep.max.millis=15000

      專家設(shè)置。失敗重試見的等待時(shí)間最大值,毫秒。

    • dfs.ha.log-roll.period=120

      StandbyNode要求Active滾動(dòng)EditLog,由于StandBy只能從已經(jīng)完成的Log Segments中讀,所以Standby上的數(shù)據(jù)新鮮程度依賴于以如何的頻率滾動(dòng)日志。秒。另外,故障轉(zhuǎn)移也會(huì)觸發(fā)一次日志滾動(dòng),所以StandbyNode在Active之前,數(shù)據(jù)也會(huì)更新成最新的。秒,默認(rèn)是2分鐘。

    • dfs.ha.tail-edits.period=60

      StandbyNode以此頻率檢測(cè)共享目錄中最新的日志,秒。

    • dfs.ha.zkfc.port=8019

      zkfc的rpc端口

    • dfs.support.append=TRUE

      是否允許append。

    • dfs.client.use.datanode.hostname=FALSE

      是否客戶端應(yīng)該使用DN的HostName,在連接DN時(shí),默認(rèn)是使用IP。

    • dfs.datanode.use.datanode.hostname=FALSE

      是否DN應(yīng)該使用HostName連接其它DN,在數(shù)據(jù)傳輸時(shí)。默認(rèn)是是IP。

    • dfs.client.local.interfaces=null

      逗號(hào)分隔的網(wǎng)卡列表,用于在客戶端和DN之間傳輸數(shù)據(jù)時(shí)。當(dāng)創(chuàng)建連接時(shí),客戶端隨機(jī)選擇一個(gè)并綁定它的socket到這個(gè)網(wǎng)卡的IP上。名字可以以網(wǎng)卡名(例如 "eth0"), 子網(wǎng)卡名 (eg "eth0:0"), 或者IP地址(which may be specified using CIDR notation to match a range of IPs)。

    • dfs.namenode.kerberos.internal.spnego.principal=${dfs.web.authentication.kerberos.principal}

      安全選項(xiàng),暫不關(guān)注

    • dfs.secondary.namenode.kerberos.internal.spnego.principal=${dfs.web.authentication.kerberos.principal}

      安全選項(xiàng),暫不關(guān)注

    • dfs.namenode.avoid.read.stale.datanode=FALSE

      決定是否避開從臟DN上讀數(shù)據(jù)。臟DN指在一個(gè)指定的時(shí)間間隔內(nèi)沒有收到心跳信息。臟DN將被移到可以讀取節(jié)點(diǎn)列表的尾端。嘗試開啟

    • dfs.namenode.stale.datanode.interval=30000

      標(biāo)記一個(gè)DN是臟的時(shí)間間隔。例如,如果NN在此設(shè)定的時(shí)間內(nèi)沒有接收到來自某一個(gè)節(jié)點(diǎn)的心跳信息,此DN將被標(biāo)記為臟的。此間隔不能太小,否則容易導(dǎo)致被頻繁的標(biāo)記為臟DN。

      我們建議是1分鐘

    • dfs.namenode.write.stale.datanode.ratio=0.5f

      當(dāng)全部DN被標(biāo)記為臟DN的比率高于此閥值,停止不寫數(shù)據(jù)到臟DN的策略,以免造成熱點(diǎn)問題(有效的,可寫的DN太少,壓力太大)。

    • dfs.namenode.invalidate.work.pct.per.iteration=0.32f

      高級(jí)屬性。改變需小心。

    • dfs.namenode.replication.work.multiplier.per.iteration=2

      高級(jí)屬性。改變需小心。

    • dfs.webhdfs.enabled=FALSE

      在NN和DN上開啟WebHDFS (REST API)功能。

      可以開啟嘗試

    • hadoop.fuse.connection.timeout=300

      秒,在fuse_dfs中緩存libhdfs連接對(duì)象的超時(shí)時(shí)間。 小值使用內(nèi)存小。大值可以加快訪問,通過避開創(chuàng)建新的連接對(duì)象。

    • hadoop.fuse.timer.period=5

    • dfs.metrics.percentiles.intervals=null

      Comma-delimited set of integers denoting the desired rollover intervals (in seconds) for percentile latency metrics on the Namenode and Datanode. By default, percentile latency metrics are disabled.

    • dfs.encrypt.data.transfer=FALSE

      是否加密傳輸數(shù)據(jù)?僅需要配置在NN和DN??蛻舳丝梢宰孕信袛唷?/p>

    • dfs.encrypt.data.transfer.algorithm=null

      可以設(shè)置為"3des"或"rc4"。否則使用默認(rèn)的,通常是usually 3DES。3DES更安全,RC4更快。

    • dfs.datanode.hdfs-blocks-metadata.enabled=TRUE

      布爾值,設(shè)定后臺(tái)DN端是否支持DistributedFileSystem#getFileVBlockStorageLocations API。

    • dfs.client.file-block-storage-locations.num-threads=10

      在調(diào)用DistributedFileSystem#getFileBlockStorageLocations()的并發(fā)RPC的線程數(shù)

    • dfs.client.file-block-storage-locations.timeout=60

      Timeout (in seconds) for the parallel RPCs made in DistributedFileSystem#getFileBlockStorageLocations().

    • dfs.domain.socket.path=/var/run/hadoop-hdfs/dn._PORT

      可選選項(xiàng)。socket文件路徑,unix下。用來在DN和本地的HDFS客戶端加快網(wǎng)絡(luò)連接。如果字符串"_PORT"出現(xiàn)在路徑中,它將被DN的TCP端口替換。

    yarn-default.xml

    • yarn.app.mapreduce.am.env=null

      用戶為MR AM添加環(huán)境變量。例如:

    • A=foo 設(shè)置環(huán)境變量A為foo
    • B=$B:c 繼承并設(shè)置TT內(nèi)的B變量
    • yarn.app.mapreduce.am.command-opts=-Xmx1024m

      MR AM的Java opts。如下符號(hào)會(huì)被替換:

      • @taskid@ 被替換成當(dāng)前的TaskID。其它出現(xiàn)的'@'不會(huì)改變。例如,為了讓gc日志能夠按task打印存儲(chǔ)在/tmp目錄,可以設(shè)置'value'為:-Xmx1024m -verbose:gc -Xloggc:/tmp/@taskid@.gc
      • 如果hadoop本地庫可以使用,使用-Djava.library.path參數(shù)可能造成程序的此功能無效。這個(gè)值應(yīng)該被替換,設(shè)置在MR的JVM環(huán)境中LD_LIBRARY_PATH變量中,使用 mapreduce.map.env和mapreduce.reduce.env配置項(xiàng)。
    • yarn.app.mapreduce.am.resource.mb=1536

      AM申請(qǐng)的內(nèi)存

    • yarn.resourcemanager.address=0.0.0.0:8032

      RM地址:端口

    • yarn.resourcemanager.scheduler.address=0.0.0.0:8030

      調(diào)度器地址:端口

    • yarn.admin.acl=*

      ACL中誰可以管理YARN集群

    • yarn.resourcemanager.admin.address=0.0.0.0:8033

      RM管理接口地址:端口

    • yarn.resourcemanager.am.max-retries=1

      AM重試最大次數(shù)。服務(wù)端參數(shù)。重啟生效。

      建議4

    • yarn.resourcemanager.nodes.include-path=null

      存儲(chǔ)有效節(jié)點(diǎn)列表的文件

    • yarn.resourcemanager.nodes.exclude-path=null

      存儲(chǔ)拒絕節(jié)點(diǎn)列表的文件。如和包含文件沖突,包含文件優(yōu)先級(jí)高

    • yarn.resourcemanager.scheduler.class=org.apache.hadoop.yarn.server.resourcemanager.scheduler.fifo.FifoScheduler

      調(diào)度器實(shí)現(xiàn)類。

      建議使用公平調(diào)度器

    • yarn.scheduler.minimum-allocation-mb=1024

      每個(gè)container想RM申請(qǐng)內(nèi)存的最小大小。兆字節(jié)。內(nèi)存請(qǐng)求小于此值,實(shí)際申請(qǐng)到的是此值大小。默認(rèn)值偏大

    • yarn.scheduler.maximum-allocation-mb=8192

      每個(gè)container向RM申請(qǐng)內(nèi)存的最大大小,兆字節(jié)。申請(qǐng)值大于此值,將最多得到此值內(nèi)存。

    • yarn.resourcemanager.recovery.enabled=FALSE

      是否啟動(dòng)RM的狀態(tài)恢復(fù)功能。如果true,必須指定yarn.resourcemanager.store.class。嘗試啟用

    • yarn.resourcemanager.store.class=null

      用于持久存儲(chǔ)的類。嘗試開啟

    • yarn.resourcemanager.max-completed-applications=10000

      RM中保存的最大完成的app數(shù)量。內(nèi)存中存儲(chǔ)。

    • yarn.nodemanager.address=0.0.0.0:0

      NM中的container管理器的地址:端口

    • yarn.nodemanager.env-whitelist=JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,YARN_HOME

      container應(yīng)該覆蓋而不是使用NM的環(huán)境變量名單。允許container自己配置的環(huán)境變量

    • yarn.nodemanager.delete.debug-delay-sec=0

      秒,一個(gè)app完成后,NM刪除服務(wù)將刪除app的本地文件目錄和日志目錄。為了診斷問題,把這個(gè)選項(xiàng)設(shè)置成足夠大的值(例如,設(shè)置為10分鐘),可以繼續(xù)訪問這些目錄。設(shè)置此選項(xiàng),需要重啟NM。Yarn應(yīng)用的工作目錄根路徑是yarn.nodemanager.local-dirs,Yarn應(yīng)用日志目錄的根路徑是yarn.nodemanager.log-dirs。

      調(diào)試問題時(shí)可用

    • yarn.nodemanager.local-dirs=${hadoop.tmp.dir}/nm-local-dir

      本地文件存儲(chǔ)目錄,列表。一個(gè)應(yīng)用的本地文件目錄定位方式:${yarn.nodemanager.local-dirs}/usercache/${user}/appcache/application_${appid}。每個(gè)container的工作目錄,是此目錄的子目錄,目錄名是container_${contid}。

      非常重要,建議配置多個(gè)磁盤,平衡IO。

    • yarn.nodemanager.log-dirs=${yarn.log.dir}/userlogs

      存儲(chǔ)container日志的地方。一個(gè)應(yīng)用的本地日志目錄定位是:${yarn.nodemanager.log-dirs}/application_${appid}。每個(gè)container的日志目錄在此目錄下,名字是container_{$contid}。每個(gè)container目錄中包含stderr, stdin, and syslog等container產(chǎn)生的文件

      非常重要,建議配置多個(gè)磁盤

    • yarn.log-aggregation-enable=FALSE

      是否允許日志匯聚功能。建議開啟

    • yarn.log-aggregation.retain-seconds=-1

      保存匯聚日志時(shí)間,秒,超過會(huì)刪除,-1表示不刪除。 注意,設(shè)置的過小,將導(dǎo)致NN垃圾碎片。建議3-7天 = 7 * 86400 = 604800

    • yarn.nodemanager.log.retain-seconds=10800

      保留用戶日志的時(shí)間,秒。在日志匯聚功能關(guān)閉時(shí)生效。

      建議7天

    • yarn.nodemanager.remote-app-log-dir=/tmp/logs

      匯聚日志的地方,目錄路徑,HDFS系統(tǒng)。

      對(duì)于開了權(quán)限檢查的系統(tǒng),注意權(quán)限問題。HDFS上。

    • yarn.nodemanager.remote-app-log-dir-suffix=logs

      匯聚日志目錄路徑后綴。匯聚目錄創(chuàng)建在{yarn.nodemanager.remote-app-log-dir}/${user}/{thisParam}

    • yarn.nodemanager.resource.memory-mb=8192

      NM上可以用于container申請(qǐng)的物理內(nèi)存大小,MB。

    • yarn.nodemanager.vmem-pmem-ratio=2.1

      在設(shè)置container的內(nèi)存限制時(shí),虛擬內(nèi)存到物理內(nèi)存的比率。Container申請(qǐng)的內(nèi)存如果超過此物理內(nèi)存,可以以此比率獲取虛擬內(nèi)存用于滿足需求。虛擬地址的是物理地址的倍數(shù)上限。建議設(shè)置的大點(diǎn),例如:4.1,8.1,此虛擬內(nèi)存并非內(nèi)存,而是占用的虛擬地址。

    • yarn.nodemanager.webapp.address=0.0.0.0:8042

      NM的網(wǎng)頁界面地址和端口。

    • yarn.nodemanager.log-aggregation.compression-type=none

      匯聚日志的壓縮類型。匯聚日志是TFile格式文件。Hadoop-3315??梢允褂玫闹涤衝one,lzo,gz等。

      可以嘗試

    • yarn.nodemanager.aux-services=null

      請(qǐng)配置為:mapreduce.shuffle,在Yarn上開啟MR的必須項(xiàng)

    • yarn.nodemanager.aux-services.mapreduce.shuffle.class=org.apache.hadoop.mapred.ShuffleHandler

      對(duì)應(yīng)參考yarn.nodemanager.aux-services

    • mapreduce.job.jar=null

      Job客戶端參數(shù)。提交的job的jar文件。

    • mapreduce.job.hdfs-servers=${fs.defaultFS}

      Job客戶端參數(shù)。

    • yarn.application.classpath=$HADOOP_CONF_DIR,$HADOOP_COMMON_HOME/share/hadoop/common/,$HADOOP_COMMON_HOME/share/hadoop/common/lib/,$HADOOP_HDFS_HOME/share/hadoop/hdfs/,$HADOOP_HDFS_HOME/share/hadoop/hdfs/lib/,$YARN_HOME/share/hadoop/yarn/*,$YARN_HOME/share/hadoop/yarn/lib/*

      YARN應(yīng)用的CLASSPATH,逗號(hào)分隔列表。

    • yarn.app.mapreduce.am.job.task.listener.thread-count=30

      MR AM處理RPC調(diào)用的線程數(shù)。

    • yarn.app.mapreduce.am.job.client.port-range=null

      MR AM能夠綁定使用的端口范圍。例如:50000-50050,50100-50200。 如果你先要全部的有用端口,可以留空(默認(rèn)值null)。

    • yarn.app.mapreduce.am.job.committer.cancel-timeout=60000

      毫秒,如果job被kill了,等待output committer取消操作的時(shí)間。

    • yarn.app.mapreduce.am.scheduler.heartbeat.interval-ms=1000

      MR AM發(fā)送心跳到RM的時(shí)間間隔,毫秒

    • yarn.app.mapreduce.client-am.ipc.max-retries=3

      在重新連接RM獲取Application狀態(tài)前,客戶端重試連接AM的次數(shù)。

    • yarn.app.mapreduce.client.max-retries=3

      客戶端重連RM/HS/AM的次數(shù)。這是基于ipc接口上的規(guī)則

    • yarn.ipc.client.factory.class=null

      創(chuàng)建客戶端IPC類的工廠類

    • yarn.ipc.serializer.type=protocolbuffers

      使用哪種序列化類

    • yarn.ipc.server.factory.class=null

      創(chuàng)建IPC服務(wù)類的工廠類

    • yarn.ipc.exception.factory.class=null

      創(chuàng)建IPC異常的工廠類

    • yarn.ipc.record.factory.class=null

      創(chuàng)建序列化記錄的工廠類

    • yarn.ipc.rpc.class=org.apache.hadoop.yarn.ipc.HadoopYarnProtoRPC

      RPC類實(shí)現(xiàn)類

    • yarn.resourcemanager.client.thread-count=50

      RM用來處理客戶端請(qǐng)求的線程數(shù)

    • yarn.am.liveness-monitor.expiry-interval-ms=600000

      AM報(bào)告間隔,毫秒。?

    • yarn.resourcemanager.principal=null

      安全選項(xiàng)

    • yarn.resourcemanager.scheduler.client.thread-count=50

      調(diào)度器用于處理請(qǐng)求的線程數(shù)

    • yarn.resourcemanager.webapp.address=0.0.0.0:8088

      RM的網(wǎng)頁接口地址:端口

    • yarn.resourcemanager.resource-tracker.address=0.0.0.0:8031

    • yarn.acl.enable=TRUE

      開啟訪問控制

    • yarn.resourcemanager.admin.client.thread-count=1

      RM管理端口處理事務(wù)的線程數(shù)

    • yarn.resourcemanager.amliveliness-monitor.interval-ms=1000

      RM檢查AM存活的間隔

    • yarn.resourcemanager.container.liveness-monitor.interval-ms=600000

      檢查container存活的時(shí)間間隔,毫秒。建議短一些,例如3分鐘

    • yarn.resourcemanager.keytab=/etc/krb5.keytab

      安全選項(xiàng)

    • yarn.nm.liveness-monitor.expiry-interval-ms=600000

      RM判斷NM死亡的時(shí)間間隔。
      非主動(dòng)檢查,被動(dòng)等待,不連接時(shí)間超過此值
      10分鐘無檢查到活動(dòng),判定NM死亡

    • yarn.resourcemanager.nm.liveness-monitor.interval-ms=1000

      RM檢查NM存活的時(shí)間間隔。

    • yarn.resourcemanager.resource-tracker.client.thread-count=50

      處理資源跟蹤調(diào)用的線程數(shù)。?

    • yarn.resourcemanager.delayed.delegation-token.removal-interval-ms=30000

      安全選項(xiàng)

    • yarn.resourcemanager.application-tokens.master-key-rolling-interval-secs=86400

      安全選項(xiàng)

    • yarn.resourcemanager.container-tokens.master-key-rolling-interval-secs=86400

      安全選項(xiàng)

    • yarn.nodemanager.admin-env=MALLOC_ARENA_MAX=$MALLOC_ARENA_MAX

      應(yīng)該從NM傳送到container的環(huán)境變量

    • yarn.nodemanager.container-executor.class=org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor

      啟動(dòng)containers的類。

    • yarn.nodemanager.container-manager.thread-count=20

      用于container管理的線程數(shù)

    • yarn.nodemanager.delete.thread-count=4

    《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

    總結(jié)

    以上是生活随笔為你收集整理的Hadoop参数汇总的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 色91av| 国产高清自拍视频 | youjizz视频| 免费荫蒂添的好舒服视频 | 日韩影院一区二区 | 视频一区二区三区在线 | av电影一区二区 | 婷婷综合六月 | 成人深夜电影 | 992tv在线成人免费观看 | 精品久久久影院 | 午夜精品福利影院 | 日韩精品一区二区三区高清免费 | 在线免费福利视频 | 亚洲国产精品成人综合久久久 | 国产小视频在线播放 | 天堂在线视频免费观看 | 欧美男女动态图 | 久久yy | 中文字幕一区二区人妻在线不卡 | 欧美91成人网 | 色九九视频 | 一区二区午夜 | 国产午夜精品一区二区三区欧美 | 日本黄色片免费 | 三级av毛片 | 在线免费观看视频 | 蝌蚪av| 91精品国产综合久久精品 | caopor超碰 | 佐佐木明希电影 | 人人艹在线观看 | 中国黄色片视频 | 免费成人深夜夜行网站视频 | 日本五十肥熟交尾 | 国产理论视频在线观看 | 伊人三区 | 精品国产av色一区二区深夜久久 | 北条麻妃99精品青青久久 | 精品国产无码在线观看 | 美女被猛网站 | 加勒比久久综合 | 国产在线观看精品 | 亚洲精品免费电影 | 亚洲一二三四在线观看 | 欧美成在线观看 | 国产毛片久久 | 成人在线观看一区二区 | 夫妻啪啪呻吟x一88av | 意大利性荡欲xxxxxx | 成人免费在线观看 | 色com| 伊人www22综合色 | 啪啪小视频 | 精品一区二区在线观看视频 | 日韩另类视频 | 亚洲中字幕 | 三级视频久久 | 天堂网av中文字幕 | 日本性xxxxx| 欧美日韩在线视频一区二区三区 | 午夜av免费 | 日本一区二区三区四区五区 | 亚洲女同志亚洲女同女播放 | 国产婷婷一区二区三区 | www.999av | 黄色av小说在线观看 | 人人模人人爽 | 日韩精品一区二 | 日韩在线视频网站 | 女生扒开尿口给男生捅 | 国产99久久久久久免费看 | 午夜三级网站 | av第一福利 | 国产18一19sex性护士 | 色撸撸在线观看 | 欧美一级啪啪 | 成人av动漫在线观看 | 精品欧美一区二区精品少妇 | 亚洲第一黄 | 黄色应用在线观看 | 国产亚洲欧美一区二区三区 | 国产又爽又黄无码无遮挡在线观看 | 久久午夜鲁丝片午夜精品 | 91国偷自产一区二区三区女王 | 国语对白精彩对话 | 日韩高清影视在线观看 | 暴操白虎 | 后入内射欧美99二区视频 | 91高跟黑色丝袜呻吟在线观看 | 玖玖在线视频 | 黄色网址www | 无码人妻精品一区二区三区蜜桃91 | 欧美成人精品三级网站 | 日韩人妻无码一区二区三区 | 一区二区三区视频在线免费观看 | 精品一区二区三区四区五区六区 | 九色网址 | 成人欧美一区二区三区黑人孕妇 |