hdfs-site.xml 基本配置參考


配置參數:

1、dfs.nameservices

說明:為namenode集群定義一個services name

默認值:null

比如設置為:ns1

2、dfs.ha.namenodes.<dfs.nameservices>

說明:nameservice 包含哪些namenode,為各個namenode起名

默認值:null

比如設置為nn1, nn2

3、dfs.namenode.rpc-address.ns1.nn1

說明:名為nn1的namenode 的rpc地址和端口號,rpc用來和datanode通訊

默認值:9000,可以設置為8020

如何設置:host:port

4、dfs.namenode.http-address.ns1.nn1

說明:名為nn1的namenode 的http地址和端口號,web客戶端 

默認值:50070

如何設置:host:port

 

5、dfs.namenode.shared.edits.dir

說明:namenode間用於共享編輯日志的journal節點列表

示例:qjournal://master:8485;slave1:8485;slave2:8485/ns1

 

6、dfs.journalnode.edits.dir

說明:journalnode 上用於存放edits日志的目錄

默認值:/tmp/hadoop/dfs/journalnode/

 

7、dfs.client.failover.proxy.provider.ns1

說明:客戶端連接可用狀態的NameNode所用的代理類

默認值:org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider

 

8、dfs.ha.fencing.methods

說明:HDFS的HA功能的防腦裂方法。可以是內建的方法(例如shell和sshfence)或者用戶定義的方法。
建議使用sshfence(hadoop:9922),括號內的是用戶名和端口,注意,這需要NN的2台機器之間能夠免密碼登陸
fences是防止腦裂的方法,保證NN中僅一個是Active的,如果2者都是Active的,新的會把舊的強制Kill

值:

sshfence
shell(/bin/true)

 

9、dfs.ha.fencing.ssh.private-key-files

說明:失效轉移時使用的秘鑰文件。

 

10、dfs.ha.automatic-failover.enabled

說明:故障轉移功能,建議開啟

value:true

 

11、dfs.webhdfs.enabled

說明:是否開啟webhdfs

value:true

 

12、dfs.journalnode.http-address

說明:JournalNode RPC服務地址和端口

value:0.0.0.0:8485

 

13、ha.zookeeper.quorum

說明:zookeeper隊列地址

 

14、dfs.permissions.enabled

說明:是否開啟權限檢查,建議開啟

value:true

 

15、dfs.namenode.acls.enabled

說明:是否在hdfs開啟acl,默認是為false,建議開啟

value:true

 

 常用配置:(以下配置基於hadoop3.x)

<property>
<name>dfs.nameservices</name>
<value>my-hadoop</value>
</property>

<property>
<name>dfs.ha.namenodes.my-hadoop</name>
<value>nna,nns,nnj</value>
</property>
<property>
<name>dfs.namenode.rpc-address.my-hadoop.nna</name>
<value>master:9000</value>
</property>
<property>
<name>dfs.namenode.rpc-address.my-hadoop.nns</name>
<value>slave1:9000</value>
</property>

<property>
<name>dfs.namenode.rpc-address.my-hadoop.nnj</name>
<value>slave2:9000</value>
</property>

<property>
<name>dfs.namenode.http-address.my-hadoop.nna</name>
<value>master:50070</value>
</property>

<property>
<name>dfs.namenode.http-address.my-hadoop.nns</name>
<value>slave1:50070</value>
</property>

<property>
<name>dfs.namenode.http-address.my-hadoop.nnj</name>
<value>slave2:50070</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://master:8485;slave1:8485;slave2:8485/my-hadoop</value>
</property>

<property>
<name>dfs.client.failover.proxy.provider.my-hadoop</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence
shell(/bin/true)
</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/home/hadoop/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/data1/hadoop/data/tmp/journal</value>
</property>
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/data1/hadoop/data/dfs/nn</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/data2/hadoop/data/dn,/data3/hadoop/data/dn,/data4/hadoop/data/dn</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>

<property>
<name>dfs.journalnode.http-address</name>
<value>0.0.0.0:8480</value>
</property>
<property>
<name>dfs.journalnode.rpc-address</name>
<value>0.0.0.0:8485</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>master:2181,slave1:2181,slave2:2181</value>
</property>
<property>
<name>dfs.datanode.shared.file.descriptor.paths</name>
<value>/dev/shm,/data1/hadoop/data/tmp/tmp</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.namenode.acls.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.datanode.max.transfer.threads</name>
<value>8192</value>
</property>
<property>
<name>dfs.client.socket-timeout</name>
<value>1800000</value>
</property>
<property>
<name>dfs.namenode.acls.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.qjournal.write-txns.timeout.ms</name>
<value>600000</value>
</property>
<property>
<name>dfs.datanode.du.reserved</name>
<value>107374182400</value>
</property>

<property>
<name>dfs.datanode.balance.bandwidthPerSec</name>
<value>512m</value>
</property>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM