天天看點

Hadoop配置項整理(hdfs-site.xml)

續上篇整理一下hdfs相關的配置項

 name

 value

Description 

dfs.default.chunk.view.size

32768

namenode的http通路頁面中針對每個檔案的内容顯示大小,通常無需設定。

dfs.datanode.du.reserved

1073741824

每塊磁盤所保留的空間大小,需要設定一些,主要是給非hdfs檔案使用,預設是不保留,0位元組

dfs.name.dir

/opt/data1/hdfs/name,

/opt/data2/hdfs/name,

/nfs/data/hdfs/name

NN所使用的中繼資料儲存,一般建議在nfs上保留一份,作為1.0的HA方案使用,也可以在一台伺服器的多塊硬碟上使用

dfs.web.ugi

nobody,nobody

NN,JT等所使用的web tracker頁面伺服器所使用的使用者群組

dfs.permissions

true | false

dfs權限是否打開,我一般設定false,通過開發工具教育訓練别人界面操作避免誤操作,設定為true有時候會遇到資料因為權限通路不了。

dfs.permissions.supergroup

supergroup

設定hdfs超級權限的組,預設是supergroup,啟動hadoop所使用的使用者通常是superuser。

dfs.data.dir

/opt/data1/hdfs/data,

/opt/data2/hdfs/data,

/opt/data3/hdfs/data,

...

真正的datanode資料儲存路徑,可以寫多塊硬碟,逗号分隔

dfs.datanode.data.dir.perm

755

datanode所使用的本地檔案夾的路徑權限,預設755

dfs.replication

3

hdfs資料塊的複制份數,預設3,理論上份數越多跑數速度越快,但是需要的存儲空間也更多。有錢人可以調5或者6

dfs.replication.max

512

有時dn臨時故障恢複後會導緻資料超過預設備份數。複制份數的最多數,通常沒什麼用,不用寫配置檔案裡。

dfs.replication.min

1

最小份數,作用同上。

dfs.block.size

134217728

每個檔案塊的大小,我們用128M,預設是64M。這個計算需要128*1024^2,我碰上過有人直接寫128000000,十分浪漫。

dfs.df.interval

60000

磁盤用量統計自動重新整理時間,機關是毫秒。

dfs.client.block.write.retries

資料塊寫入的最多重試次數,在此次數之前不會捕獲失敗。

dfs.heartbeat.interval

DN的心跳檢測時間間隔。秒

dfs.namenode.handler.count

10

NN啟動後展開的線程數。

dfs.balance.bandwidthPerSec

1048576

做balance時所使用的每秒最大帶寬,使用位元組作為機關,而不是bit

dfs.hosts

/opt/hadoop/conf/hosts.allow

一個主機名清單檔案,這裡的主機是允許連接配接NN的,必須寫絕對路徑,檔案内容為空則認為全都可以。

dfs.hosts.exclude

/opt/hadoop/conf/hosts.deny

基本原理同上,隻不過這裡放的是禁止通路NN的主機名稱清單。這在從叢集中摘除DN會比較有用。

dfs.max.objects

dfs最大并發對象數,HDFS中的檔案,目錄塊都會被認為是一個對象。0表示不限制

dfs.replication.interval

NN計算複制塊的内部間隔時間,通常不需寫入配置檔案。預設就好

dfs.support.append

新的hadoop支援了檔案的APPEND操作,這個就是控制是否允許檔案APPEND的,但是預設是false,理由是追加還有bug。

dfs.datanode.failed.volumes.tolerated

能夠導緻DN挂掉的壞硬碟最大數,預設0就是隻要有1個硬碟壞了,DN就會shutdown。

dfs.secondary.http.address

0.0.0.0:50090

SNN的tracker頁面監聽位址和端口

dfs.datanode.address

0.0.0.0:50010

DN的服務監聽端口,端口為0的話會随機監聽端口,通過心跳通知NN

dfs.datanode.http.address

0.0.0.0:50075

DN的tracker頁面監聽位址和端口

dfs.datanode.ipc.address

0.0.0.0:50020

DN的IPC監聽端口,寫0的話監聽在随機端口通過心跳傳輸給NN

dfs.datanode.handler.count

DN啟動的服務線程數

dfs.http.address

0.0.0.0:50070

NN的tracker頁面監聽位址和端口

dfs.https.enable

NN的tracker是否監聽在HTTPS協定,預設false

dfs.datanode.https.address

0.0.0.0:50475

DN的HTTPS的tracker頁面監聽位址和端口

dfs.https.address

0.0.0.0:50470

NN的HTTPS的tracker頁面監聽位址和端口

dfs.datanode.max.xcievers

2048

相當于linux下的打開檔案最大數量,文檔中無此參數,當出現DataXceiver報錯的時候,需要調大。預設256

主要配置裡會用到的大概就是這些了,還有一些https certfile和一些internal時間配置的,不常用的就不寫了。