hdfs-default.xml 73 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149
  1. <?xml version="1.0"?>
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
  3. <!--
  4. Licensed to the Apache Software Foundation (ASF) under one or more
  5. contributor license agreements. See the NOTICE file distributed with
  6. this work for additional information regarding copyright ownership.
  7. The ASF licenses this file to You under the Apache License, Version 2.0
  8. (the "License"); you may not use this file except in compliance with
  9. the License. You may obtain a copy of the License at
  10. http://www.apache.org/licenses/LICENSE-2.0
  11. Unless required by applicable law or agreed to in writing, software
  12. distributed under the License is distributed on an "AS IS" BASIS,
  13. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. See the License for the specific language governing permissions and
  15. limitations under the License.
  16. -->
  17. <!-- Do not modify this file directly. Instead, copy entries that you -->
  18. <!-- wish to modify from this file into hdfs-site.xml and change them -->
  19. <!-- there. If hdfs-site.xml does not already exist, create it. -->
  20. <configuration xmlns:xi="http://www.w3.org/2001/XInclude">
  21. <xi:include href="blockStoragePolicy-default.xml" />
  22. <property>
  23. <name>hadoop.hdfs.configuration.version</name>
  24. <value>1</value>
  25. <description>version of this configuration file</description>
  26. </property>
  27. <property>
  28. <name>dfs.namenode.logging.level</name>
  29. <value>info</value>
  30. <description>
  31. The logging level for dfs namenode. Other values are "dir" (trace
  32. namespace mutations), "block" (trace block under/over replications
  33. and block creations/deletions), or "all".
  34. </description>
  35. </property>
  36. <property>
  37. <name>dfs.namenode.rpc-address</name>
  38. <value></value>
  39. <description>
  40. RPC address that handles all clients requests. In the case of HA/Federation where multiple namenodes exist,
  41. the name service id is added to the name e.g. dfs.namenode.rpc-address.ns1
  42. dfs.namenode.rpc-address.EXAMPLENAMESERVICE
  43. The value of this property will take the form of nn-host1:rpc-port.
  44. </description>
  45. </property>
  46. <property>
  47. <name>dfs.namenode.rpc-bind-host</name>
  48. <value></value>
  49. <description>
  50. The actual address the RPC server will bind to. If this optional address is
  51. set, it overrides only the hostname portion of dfs.namenode.rpc-address.
  52. It can also be specified per name node or name service for HA/Federation.
  53. This is useful for making the name node listen on all interfaces by
  54. setting it to 0.0.0.0.
  55. </description>
  56. </property>
  57. <property>
  58. <name>dfs.namenode.servicerpc-address</name>
  59. <value></value>
  60. <description>
  61. RPC address for HDFS Services communication. BackupNode, Datanodes and all other services should be
  62. connecting to this address if it is configured. In the case of HA/Federation where multiple namenodes exist,
  63. the name service id is added to the name e.g. dfs.namenode.servicerpc-address.ns1
  64. dfs.namenode.rpc-address.EXAMPLENAMESERVICE
  65. The value of this property will take the form of nn-host1:rpc-port.
  66. If the value of this property is unset the value of dfs.namenode.rpc-address will be used as the default.
  67. </description>
  68. </property>
  69. <property>
  70. <name>dfs.namenode.servicerpc-bind-host</name>
  71. <value></value>
  72. <description>
  73. The actual address the service RPC server will bind to. If this optional address is
  74. set, it overrides only the hostname portion of dfs.namenode.servicerpc-address.
  75. It can also be specified per name node or name service for HA/Federation.
  76. This is useful for making the name node listen on all interfaces by
  77. setting it to 0.0.0.0.
  78. </description>
  79. </property>
  80. <property>
  81. <name>dfs.namenode.secondary.http-address</name>
  82. <value>0.0.0.0:50090</value>
  83. <description>
  84. The secondary namenode http server address and port.
  85. </description>
  86. </property>
  87. <property>
  88. <name>dfs.namenode.secondary.https-address</name>
  89. <value>0.0.0.0:50091</value>
  90. <description>
  91. The secondary namenode HTTPS server address and port.
  92. </description>
  93. </property>
  94. <property>
  95. <name>dfs.datanode.address</name>
  96. <value>0.0.0.0:50010</value>
  97. <description>
  98. The datanode server address and port for data transfer.
  99. </description>
  100. </property>
  101. <property>
  102. <name>dfs.datanode.http.address</name>
  103. <value>0.0.0.0:50075</value>
  104. <description>
  105. The datanode http server address and port.
  106. </description>
  107. </property>
  108. <property>
  109. <name>dfs.datanode.ipc.address</name>
  110. <value>0.0.0.0:50020</value>
  111. <description>
  112. The datanode ipc server address and port.
  113. </description>
  114. </property>
  115. <property>
  116. <name>dfs.datanode.handler.count</name>
  117. <value>10</value>
  118. <description>The number of server threads for the datanode.</description>
  119. </property>
  120. <property>
  121. <name>dfs.namenode.http-address</name>
  122. <value>0.0.0.0:50070</value>
  123. <description>
  124. The address and the base port where the dfs namenode web ui will listen on.
  125. </description>
  126. </property>
  127. <property>
  128. <name>dfs.namenode.http-bind-host</name>
  129. <value></value>
  130. <description>
  131. The actual adress the HTTP server will bind to. If this optional address
  132. is set, it overrides only the hostname portion of dfs.namenode.http-address.
  133. It can also be specified per name node or name service for HA/Federation.
  134. This is useful for making the name node HTTP server listen on all
  135. interfaces by setting it to 0.0.0.0.
  136. </description>
  137. </property>
  138. <property>
  139. <name>dfs.https.enable</name>
  140. <value>false</value>
  141. <description>
  142. Deprecated. Use "dfs.http.policy" instead.
  143. </description>
  144. </property>
  145. <property>
  146. <name>dfs.http.policy</name>
  147. <value>HTTP_ONLY</value>
  148. <description>Decide if HTTPS(SSL) is supported on HDFS
  149. This configures the HTTP endpoint for HDFS daemons:
  150. The following values are supported:
  151. - HTTP_ONLY : Service is provided only on http
  152. - HTTPS_ONLY : Service is provided only on https
  153. - HTTP_AND_HTTPS : Service is provided both on http and https
  154. </description>
  155. </property>
  156. <property>
  157. <name>dfs.client.https.need-auth</name>
  158. <value>false</value>
  159. <description>Whether SSL client certificate authentication is required
  160. </description>
  161. </property>
  162. <property>
  163. <name>dfs.client.cached.conn.retry</name>
  164. <value>3</value>
  165. <description>The number of times the HDFS client will pull a socket from the
  166. cache. Once this number is exceeded, the client will try to create a new
  167. socket.
  168. </description>
  169. </property>
  170. <property>
  171. <name>dfs.https.server.keystore.resource</name>
  172. <value>ssl-server.xml</value>
  173. <description>Resource file from which ssl server keystore
  174. information will be extracted
  175. </description>
  176. </property>
  177. <property>
  178. <name>dfs.client.https.keystore.resource</name>
  179. <value>ssl-client.xml</value>
  180. <description>Resource file from which ssl client keystore
  181. information will be extracted
  182. </description>
  183. </property>
  184. <property>
  185. <name>dfs.datanode.https.address</name>
  186. <value>0.0.0.0:50475</value>
  187. <description>The datanode secure http server address and port.</description>
  188. </property>
  189. <property>
  190. <name>dfs.namenode.https-address</name>
  191. <value>0.0.0.0:50470</value>
  192. <description>The namenode secure http server address and port.</description>
  193. </property>
  194. <property>
  195. <name>dfs.namenode.https-bind-host</name>
  196. <value></value>
  197. <description>
  198. The actual adress the HTTPS server will bind to. If this optional address
  199. is set, it overrides only the hostname portion of dfs.namenode.https-address.
  200. It can also be specified per name node or name service for HA/Federation.
  201. This is useful for making the name node HTTPS server listen on all
  202. interfaces by setting it to 0.0.0.0.
  203. </description>
  204. </property>
  205. <property>
  206. <name>dfs.datanode.dns.interface</name>
  207. <value>default</value>
  208. <description>The name of the Network Interface from which a data node should
  209. report its IP address.
  210. </description>
  211. </property>
  212. <property>
  213. <name>dfs.datanode.dns.nameserver</name>
  214. <value>default</value>
  215. <description>The host name or IP address of the name server (DNS)
  216. which a DataNode should use to determine the host name used by the
  217. NameNode for communication and display purposes.
  218. </description>
  219. </property>
  220. <property>
  221. <name>dfs.namenode.backup.address</name>
  222. <value>0.0.0.0:50100</value>
  223. <description>
  224. The backup node server address and port.
  225. If the port is 0 then the server will start on a free port.
  226. </description>
  227. </property>
  228. <property>
  229. <name>dfs.namenode.backup.http-address</name>
  230. <value>0.0.0.0:50105</value>
  231. <description>
  232. The backup node http server address and port.
  233. If the port is 0 then the server will start on a free port.
  234. </description>
  235. </property>
  236. <property>
  237. <name>dfs.namenode.replication.considerLoad</name>
  238. <value>true</value>
  239. <description>Decide if chooseTarget considers the target's load or not
  240. </description>
  241. </property>
  242. <property>
  243. <name>dfs.default.chunk.view.size</name>
  244. <value>32768</value>
  245. <description>The number of bytes to view for a file on the browser.
  246. </description>
  247. </property>
  248. <property>
  249. <name>dfs.datanode.du.reserved</name>
  250. <value>0</value>
  251. <description>Reserved space in bytes per volume. Always leave this much space free for non dfs use.
  252. </description>
  253. </property>
  254. <property>
  255. <name>dfs.namenode.name.dir</name>
  256. <value>file://${hadoop.tmp.dir}/dfs/name</value>
  257. <description>Determines where on the local filesystem the DFS name node
  258. should store the name table(fsimage). If this is a comma-delimited list
  259. of directories then the name table is replicated in all of the
  260. directories, for redundancy. </description>
  261. </property>
  262. <property>
  263. <name>dfs.namenode.name.dir.restore</name>
  264. <value>false</value>
  265. <description>Set to true to enable NameNode to attempt recovering a
  266. previously failed dfs.namenode.name.dir. When enabled, a recovery of any
  267. failed directory is attempted during checkpoint.</description>
  268. </property>
  269. <property>
  270. <name>dfs.namenode.fs-limits.max-component-length</name>
  271. <value>255</value>
  272. <description>Defines the maximum number of bytes in UTF-8 encoding in each
  273. component of a path. A value of 0 will disable the check.</description>
  274. </property>
  275. <property>
  276. <name>dfs.namenode.fs-limits.max-directory-items</name>
  277. <value>1048576</value>
  278. <description>Defines the maximum number of items that a directory may
  279. contain. A value of 0 will disable the check.</description>
  280. </property>
  281. <property>
  282. <name>dfs.namenode.fs-limits.min-block-size</name>
  283. <value>1048576</value>
  284. <description>Minimum block size in bytes, enforced by the Namenode at create
  285. time. This prevents the accidental creation of files with tiny block
  286. sizes (and thus many blocks), which can degrade
  287. performance.</description>
  288. </property>
  289. <property>
  290. <name>dfs.namenode.fs-limits.max-blocks-per-file</name>
  291. <value>1048576</value>
  292. <description>Maximum number of blocks per file, enforced by the Namenode on
  293. write. This prevents the creation of extremely large files which can
  294. degrade performance.</description>
  295. </property>
  296. <property>
  297. <name>dfs.namenode.edits.dir</name>
  298. <value>${dfs.namenode.name.dir}</value>
  299. <description>Determines where on the local filesystem the DFS name node
  300. should store the transaction (edits) file. If this is a comma-delimited list
  301. of directories then the transaction file is replicated in all of the
  302. directories, for redundancy. Default value is same as dfs.namenode.name.dir
  303. </description>
  304. </property>
  305. <property>
  306. <name>dfs.namenode.shared.edits.dir</name>
  307. <value></value>
  308. <description>A directory on shared storage between the multiple namenodes
  309. in an HA cluster. This directory will be written by the active and read
  310. by the standby in order to keep the namespaces synchronized. This directory
  311. does not need to be listed in dfs.namenode.edits.dir above. It should be
  312. left empty in a non-HA cluster.
  313. </description>
  314. </property>
  315. <property>
  316. <name>dfs.namenode.edits.journal-plugin.qjournal</name>
  317. <value>org.apache.hadoop.hdfs.qjournal.client.QuorumJournalManager</value>
  318. </property>
  319. <property>
  320. <name>dfs.permissions.enabled</name>
  321. <value>true</value>
  322. <description>
  323. If "true", enable permission checking in HDFS.
  324. If "false", permission checking is turned off,
  325. but all other behavior is unchanged.
  326. Switching from one parameter value to the other does not change the mode,
  327. owner or group of files or directories.
  328. </description>
  329. </property>
  330. <property>
  331. <name>dfs.permissions.superusergroup</name>
  332. <value>supergroup</value>
  333. <description>The name of the group of super-users.</description>
  334. </property>
  335. <!--
  336. <property>
  337. <name>dfs.cluster.administrators</name>
  338. <value>ACL for the admins</value>
  339. <description>This configuration is used to control who can access the
  340. default servlets in the namenode, etc.
  341. </description>
  342. </property>
  343. -->
  344. <property>
  345. <name>dfs.namenode.acls.enabled</name>
  346. <value>false</value>
  347. <description>
  348. Set to true to enable support for HDFS ACLs (Access Control Lists). By
  349. default, ACLs are disabled. When ACLs are disabled, the NameNode rejects
  350. all RPCs related to setting or getting ACLs.
  351. </description>
  352. </property>
  353. <property>
  354. <name>dfs.block.access.token.enable</name>
  355. <value>false</value>
  356. <description>
  357. If "true", access tokens are used as capabilities for accessing datanodes.
  358. If "false", no access tokens are checked on accessing datanodes.
  359. </description>
  360. </property>
  361. <property>
  362. <name>dfs.block.access.key.update.interval</name>
  363. <value>600</value>
  364. <description>
  365. Interval in minutes at which namenode updates its access keys.
  366. </description>
  367. </property>
  368. <property>
  369. <name>dfs.block.access.token.lifetime</name>
  370. <value>600</value>
  371. <description>The lifetime of access tokens in minutes.</description>
  372. </property>
  373. <property>
  374. <name>dfs.datanode.data.dir</name>
  375. <value>file://${hadoop.tmp.dir}/dfs/data</value>
  376. <description>Determines where on the local filesystem an DFS data node
  377. should store its blocks. If this is a comma-delimited
  378. list of directories, then data will be stored in all named
  379. directories, typically on different devices.
  380. Directories that do not exist are ignored.
  381. </description>
  382. </property>
  383. <property>
  384. <name>dfs.datanode.data.dir.perm</name>
  385. <value>700</value>
  386. <description>Permissions for the directories on on the local filesystem where
  387. the DFS data node store its blocks. The permissions can either be octal or
  388. symbolic.</description>
  389. </property>
  390. <property>
  391. <name>dfs.replication</name>
  392. <value>3</value>
  393. <description>Default block replication.
  394. The actual number of replications can be specified when the file is created.
  395. The default is used if replication is not specified in create time.
  396. </description>
  397. </property>
  398. <property>
  399. <name>dfs.replication.max</name>
  400. <value>512</value>
  401. <description>Maximal block replication.
  402. </description>
  403. </property>
  404. <property>
  405. <name>dfs.namenode.replication.min</name>
  406. <value>1</value>
  407. <description>Minimal block replication.
  408. </description>
  409. </property>
  410. <property>
  411. <name>dfs.blocksize</name>
  412. <value>134217728</value>
  413. <description>
  414. The default block size for new files, in bytes.
  415. You can use the following suffix (case insensitive):
  416. k(kilo), m(mega), g(giga), t(tera), p(peta), e(exa) to specify the size (such as 128k, 512m, 1g, etc.),
  417. Or provide complete size in bytes (such as 134217728 for 128 MB).
  418. </description>
  419. </property>
  420. <property>
  421. <name>dfs.client.block.write.retries</name>
  422. <value>3</value>
  423. <description>The number of retries for writing blocks to the data nodes,
  424. before we signal failure to the application.
  425. </description>
  426. </property>
  427. <property>
  428. <name>dfs.client.block.write.replace-datanode-on-failure.enable</name>
  429. <value>true</value>
  430. <description>
  431. If there is a datanode/network failure in the write pipeline,
  432. DFSClient will try to remove the failed datanode from the pipeline
  433. and then continue writing with the remaining datanodes. As a result,
  434. the number of datanodes in the pipeline is decreased. The feature is
  435. to add new datanodes to the pipeline.
  436. This is a site-wide property to enable/disable the feature.
  437. When the cluster size is extremely small, e.g. 3 nodes or less, cluster
  438. administrators may want to set the policy to NEVER in the default
  439. configuration file or disable this feature. Otherwise, users may
  440. experience an unusually high rate of pipeline failures since it is
  441. impossible to find new datanodes for replacement.
  442. See also dfs.client.block.write.replace-datanode-on-failure.policy
  443. </description>
  444. </property>
  445. <property>
  446. <name>dfs.client.block.write.replace-datanode-on-failure.policy</name>
  447. <value>DEFAULT</value>
  448. <description>
  449. This property is used only if the value of
  450. dfs.client.block.write.replace-datanode-on-failure.enable is true.
  451. ALWAYS: always add a new datanode when an existing datanode is removed.
  452. NEVER: never add a new datanode.
  453. DEFAULT:
  454. Let r be the replication number.
  455. Let n be the number of existing datanodes.
  456. Add a new datanode only if r is greater than or equal to 3 and either
  457. (1) floor(r/2) is greater than or equal to n; or
  458. (2) r is greater than n and the block is hflushed/appended.
  459. </description>
  460. </property>
  461. <property>
  462. <name>dfs.client.block.write.replace-datanode-on-failure.best-effort</name>
  463. <value>false</value>
  464. <description>
  465. This property is used only if the value of
  466. dfs.client.block.write.replace-datanode-on-failure.enable is true.
  467. Best effort means that the client will try to replace a failed datanode
  468. in write pipeline (provided that the policy is satisfied), however, it
  469. continues the write operation in case that the datanode replacement also
  470. fails.
  471. Suppose the datanode replacement fails.
  472. false: An exception should be thrown so that the write will fail.
  473. true : The write should be resumed with the remaining datandoes.
  474. Note that setting this property to true allows writing to a pipeline
  475. with a smaller number of datanodes. As a result, it increases the
  476. probability of data loss.
  477. </description>
  478. </property>
  479. <property>
  480. <name>dfs.blockreport.intervalMsec</name>
  481. <value>21600000</value>
  482. <description>Determines block reporting interval in milliseconds.</description>
  483. </property>
  484. <property>
  485. <name>dfs.blockreport.initialDelay</name> <value>0</value>
  486. <description>Delay for first block report in seconds.</description>
  487. </property>
  488. <property>
  489. <name>dfs.blockreport.split.threshold</name>
  490. <value>1000000</value>
  491. <description>If the number of blocks on the DataNode is below this
  492. threshold then it will send block reports for all Storage Directories
  493. in a single message.
  494. If the number of blocks exceeds this threshold then the DataNode will
  495. send block reports for each Storage Directory in separate messages.
  496. Set to zero to always split.
  497. </description>
  498. </property>
  499. <property>
  500. <name>dfs.datanode.directoryscan.interval</name>
  501. <value>21600</value>
  502. <description>Interval in seconds for Datanode to scan data directories and
  503. reconcile the difference between blocks in memory and on the disk.
  504. </description>
  505. </property>
  506. <property>
  507. <name>dfs.datanode.directoryscan.threads</name>
  508. <value>1</value>
  509. <description>How many threads should the threadpool used to compile reports
  510. for volumes in parallel have.
  511. </description>
  512. </property>
  513. <property>
  514. <name>dfs.heartbeat.interval</name>
  515. <value>3</value>
  516. <description>Determines datanode heartbeat interval in seconds.</description>
  517. </property>
  518. <property>
  519. <name>dfs.namenode.handler.count</name>
  520. <value>10</value>
  521. <description>The number of server threads for the namenode.</description>
  522. </property>
  523. <property>
  524. <name>dfs.namenode.safemode.threshold-pct</name>
  525. <value>0.999f</value>
  526. <description>
  527. Specifies the percentage of blocks that should satisfy
  528. the minimal replication requirement defined by dfs.namenode.replication.min.
  529. Values less than or equal to 0 mean not to wait for any particular
  530. percentage of blocks before exiting safemode.
  531. Values greater than 1 will make safe mode permanent.
  532. </description>
  533. </property>
  534. <property>
  535. <name>dfs.namenode.safemode.min.datanodes</name>
  536. <value>0</value>
  537. <description>
  538. Specifies the number of datanodes that must be considered alive
  539. before the name node exits safemode.
  540. Values less than or equal to 0 mean not to take the number of live
  541. datanodes into account when deciding whether to remain in safe mode
  542. during startup.
  543. Values greater than the number of datanodes in the cluster
  544. will make safe mode permanent.
  545. </description>
  546. </property>
  547. <property>
  548. <name>dfs.namenode.safemode.extension</name>
  549. <value>30000</value>
  550. <description>
  551. Determines extension of safe mode in milliseconds
  552. after the threshold level is reached.
  553. </description>
  554. </property>
  555. <property>
  556. <name>dfs.datanode.balance.bandwidthPerSec</name>
  557. <value>1048576</value>
  558. <description>
  559. Specifies the maximum amount of bandwidth that each datanode
  560. can utilize for the balancing purpose in term of
  561. the number of bytes per second.
  562. </description>
  563. </property>
  564. <property>
  565. <name>dfs.hosts</name>
  566. <value></value>
  567. <description>Names a file that contains a list of hosts that are
  568. permitted to connect to the namenode. The full pathname of the file
  569. must be specified. If the value is empty, all hosts are
  570. permitted.</description>
  571. </property>
  572. <property>
  573. <name>dfs.hosts.exclude</name>
  574. <value></value>
  575. <description>Names a file that contains a list of hosts that are
  576. not permitted to connect to the namenode. The full pathname of the
  577. file must be specified. If the value is empty, no hosts are
  578. excluded.</description>
  579. </property>
  580. <property>
  581. <name>dfs.namenode.max.objects</name>
  582. <value>0</value>
  583. <description>The maximum number of files, directories and blocks
  584. dfs supports. A value of zero indicates no limit to the number
  585. of objects that dfs supports.
  586. </description>
  587. </property>
  588. <property>
  589. <name>dfs.namenode.datanode.registration.ip-hostname-check</name>
  590. <value>true</value>
  591. <description>
  592. If true (the default), then the namenode requires that a connecting
  593. datanode's address must be resolved to a hostname. If necessary, a reverse
  594. DNS lookup is performed. All attempts to register a datanode from an
  595. unresolvable address are rejected.
  596. It is recommended that this setting be left on to prevent accidental
  597. registration of datanodes listed by hostname in the excludes file during a
  598. DNS outage. Only set this to false in environments where there is no
  599. infrastructure to support reverse DNS lookup.
  600. </description>
  601. </property>
  602. <property>
  603. <name>dfs.namenode.decommission.interval</name>
  604. <value>30</value>
  605. <description>Namenode periodicity in seconds to check if decommission is
  606. complete.</description>
  607. </property>
  608. <property>
  609. <name>dfs.namenode.decommission.nodes.per.interval</name>
  610. <value>5</value>
  611. <description>The number of nodes namenode checks if decommission is complete
  612. in each dfs.namenode.decommission.interval.</description>
  613. </property>
  614. <property>
  615. <name>dfs.namenode.replication.interval</name>
  616. <value>3</value>
  617. <description>The periodicity in seconds with which the namenode computes
  618. repliaction work for datanodes. </description>
  619. </property>
  620. <property>
  621. <name>dfs.namenode.accesstime.precision</name>
  622. <value>3600000</value>
  623. <description>The access time for HDFS file is precise upto this value.
  624. The default value is 1 hour. Setting a value of 0 disables
  625. access times for HDFS.
  626. </description>
  627. </property>
  628. <property>
  629. <name>dfs.datanode.plugins</name>
  630. <value></value>
  631. <description>Comma-separated list of datanode plug-ins to be activated.
  632. </description>
  633. </property>
  634. <property>
  635. <name>dfs.namenode.plugins</name>
  636. <value></value>
  637. <description>Comma-separated list of namenode plug-ins to be activated.
  638. </description>
  639. </property>
  640. <property>
  641. <name>dfs.stream-buffer-size</name>
  642. <value>4096</value>
  643. <description>The size of buffer to stream files.
  644. The size of this buffer should probably be a multiple of hardware
  645. page size (4096 on Intel x86), and it determines how much data is
  646. buffered during read and write operations.</description>
  647. </property>
  648. <property>
  649. <name>dfs.bytes-per-checksum</name>
  650. <value>512</value>
  651. <description>The number of bytes per checksum. Must not be larger than
  652. dfs.stream-buffer-size</description>
  653. </property>
  654. <property>
  655. <name>dfs.client-write-packet-size</name>
  656. <value>65536</value>
  657. <description>Packet size for clients to write</description>
  658. </property>
  659. <property>
  660. <name>dfs.client.write.exclude.nodes.cache.expiry.interval.millis</name>
  661. <value>600000</value>
  662. <description>The maximum period to keep a DN in the excluded nodes list
  663. at a client. After this period, in milliseconds, the previously excluded node(s) will
  664. be removed automatically from the cache and will be considered good for block allocations
  665. again. Useful to lower or raise in situations where you keep a file open for very long
  666. periods (such as a Write-Ahead-Log (WAL) file) to make the writer tolerant to cluster maintenance
  667. restarts. Defaults to 10 minutes.</description>
  668. </property>
  669. <property>
  670. <name>dfs.namenode.checkpoint.dir</name>
  671. <value>file://${hadoop.tmp.dir}/dfs/namesecondary</value>
  672. <description>Determines where on the local filesystem the DFS secondary
  673. name node should store the temporary images to merge.
  674. If this is a comma-delimited list of directories then the image is
  675. replicated in all of the directories for redundancy.
  676. </description>
  677. </property>
  678. <property>
  679. <name>dfs.namenode.checkpoint.edits.dir</name>
  680. <value>${dfs.namenode.checkpoint.dir}</value>
  681. <description>Determines where on the local filesystem the DFS secondary
  682. name node should store the temporary edits to merge.
  683. If this is a comma-delimited list of directoires then teh edits is
  684. replicated in all of the directoires for redundancy.
  685. Default value is same as dfs.namenode.checkpoint.dir
  686. </description>
  687. </property>
  688. <property>
  689. <name>dfs.namenode.checkpoint.period</name>
  690. <value>3600</value>
  691. <description>The number of seconds between two periodic checkpoints.
  692. </description>
  693. </property>
  694. <property>
  695. <name>dfs.namenode.checkpoint.txns</name>
  696. <value>1000000</value>
  697. <description>The Secondary NameNode or CheckpointNode will create a checkpoint
  698. of the namespace every 'dfs.namenode.checkpoint.txns' transactions, regardless
  699. of whether 'dfs.namenode.checkpoint.period' has expired.
  700. </description>
  701. </property>
  702. <property>
  703. <name>dfs.namenode.checkpoint.check.period</name>
  704. <value>60</value>
  705. <description>The SecondaryNameNode and CheckpointNode will poll the NameNode
  706. every 'dfs.namenode.checkpoint.check.period' seconds to query the number
  707. of uncheckpointed transactions.
  708. </description>
  709. </property>
  710. <property>
  711. <name>dfs.namenode.checkpoint.max-retries</name>
  712. <value>3</value>
  713. <description>The SecondaryNameNode retries failed checkpointing. If the
  714. failure occurs while loading fsimage or replaying edits, the number of
  715. retries is limited by this variable.
  716. </description>
  717. </property>
  718. <property>
  719. <name>dfs.namenode.num.checkpoints.retained</name>
  720. <value>2</value>
  721. <description>The number of image checkpoint files that will be retained by
  722. the NameNode and Secondary NameNode in their storage directories. All edit
  723. logs necessary to recover an up-to-date namespace from the oldest retained
  724. checkpoint will also be retained.
  725. </description>
  726. </property>
  727. <property>
  728. <name>dfs.namenode.num.extra.edits.retained</name>
  729. <value>1000000</value>
  730. <description>The number of extra transactions which should be retained
  731. beyond what is minimally necessary for a NN restart. This can be useful for
  732. audit purposes or for an HA setup where a remote Standby Node may have
  733. been offline for some time and need to have a longer backlog of retained
  734. edits in order to start again.
  735. Typically each edit is on the order of a few hundred bytes, so the default
  736. of 1 million edits should be on the order of hundreds of MBs or low GBs.
  737. NOTE: Fewer extra edits may be retained than value specified for this setting
  738. if doing so would mean that more segments would be retained than the number
  739. configured by dfs.namenode.max.extra.edits.segments.retained.
  740. </description>
  741. </property>
  742. <property>
  743. <name>dfs.namenode.max.extra.edits.segments.retained</name>
  744. <value>10000</value>
  745. <description>The maximum number of extra edit log segments which should be retained
  746. beyond what is minimally necessary for a NN restart. When used in conjunction with
  747. dfs.namenode.num.extra.edits.retained, this configuration property serves to cap
  748. the number of extra edits files to a reasonable value.
  749. </description>
  750. </property>
  751. <property>
  752. <name>dfs.namenode.delegation.key.update-interval</name>
  753. <value>86400000</value>
  754. <description>The update interval for master key for delegation tokens
  755. in the namenode in milliseconds.
  756. </description>
  757. </property>
  758. <property>
  759. <name>dfs.namenode.delegation.token.max-lifetime</name>
  760. <value>604800000</value>
  761. <description>The maximum lifetime in milliseconds for which a delegation
  762. token is valid.
  763. </description>
  764. </property>
  765. <property>
  766. <name>dfs.namenode.delegation.token.renew-interval</name>
  767. <value>86400000</value>
  768. <description>The renewal interval for delegation token in milliseconds.
  769. </description>
  770. </property>
  771. <property>
  772. <name>dfs.datanode.failed.volumes.tolerated</name>
  773. <value>0</value>
  774. <description>The number of volumes that are allowed to
  775. fail before a datanode stops offering service. By default
  776. any volume failure will cause a datanode to shutdown.
  777. </description>
  778. </property>
  779. <property>
  780. <name>dfs.image.compress</name>
  781. <value>false</value>
  782. <description>Should the dfs image be compressed?
  783. </description>
  784. </property>
  785. <property>
  786. <name>dfs.image.compression.codec</name>
  787. <value>org.apache.hadoop.io.compress.DefaultCodec</value>
  788. <description>If the dfs image is compressed, how should they be compressed?
  789. This has to be a codec defined in io.compression.codecs.
  790. </description>
  791. </property>
  792. <property>
  793. <name>dfs.image.transfer.timeout</name>
  794. <value>60000</value>
  795. <description>
  796. Socket timeout for image transfer in milliseconds. This timeout and the related
  797. dfs.image.transfer.bandwidthPerSec parameter should be configured such
  798. that normal image transfer can complete successfully.
  799. This timeout prevents client hangs when the sender fails during
  800. image transfer. This is socket timeout during image tranfer.
  801. </description>
  802. </property>
  803. <property>
  804. <name>dfs.image.transfer.bandwidthPerSec</name>
  805. <value>0</value>
  806. <description>
  807. Maximum bandwidth used for image transfer in bytes per second.
  808. This can help keep normal namenode operations responsive during
  809. checkpointing. The maximum bandwidth and timeout in
  810. dfs.image.transfer.timeout should be set such that normal image
  811. transfers can complete successfully.
  812. A default value of 0 indicates that throttling is disabled.
  813. </description>
  814. </property>
  815. <property>
  816. <name>dfs.image.transfer.chunksize</name>
  817. <value>65536</value>
  818. <description>
  819. Chunksize in bytes to upload the checkpoint.
  820. Chunked streaming is used to avoid internal buffering of contents
  821. of image file of huge size.
  822. </description>
  823. </property>
  824. <property>
  825. <name>dfs.namenode.support.allow.format</name>
  826. <value>true</value>
  827. <description>Does HDFS namenode allow itself to be formatted?
  828. You may consider setting this to false for any production
  829. cluster, to avoid any possibility of formatting a running DFS.
  830. </description>
  831. </property>
  832. <property>
  833. <name>dfs.datanode.max.transfer.threads</name>
  834. <value>4096</value>
  835. <description>
  836. Specifies the maximum number of threads to use for transferring data
  837. in and out of the DN.
  838. </description>
  839. </property>
  840. <property>
  841. <name>dfs.datanode.readahead.bytes</name>
  842. <value>4193404</value>
  843. <description>
  844. While reading block files, if the Hadoop native libraries are available,
  845. the datanode can use the posix_fadvise system call to explicitly
  846. page data into the operating system buffer cache ahead of the current
  847. reader's position. This can improve performance especially when
  848. disks are highly contended.
  849. This configuration specifies the number of bytes ahead of the current
  850. read position which the datanode will attempt to read ahead. This
  851. feature may be disabled by configuring this property to 0.
  852. If the native libraries are not available, this configuration has no
  853. effect.
  854. </description>
  855. </property>
  856. <property>
  857. <name>dfs.datanode.drop.cache.behind.reads</name>
  858. <value>false</value>
  859. <description>
  860. In some workloads, the data read from HDFS is known to be significantly
  861. large enough that it is unlikely to be useful to cache it in the
  862. operating system buffer cache. In this case, the DataNode may be
  863. configured to automatically purge all data from the buffer cache
  864. after it is delivered to the client. This behavior is automatically
  865. disabled for workloads which read only short sections of a block
  866. (e.g HBase random-IO workloads).
  867. This may improve performance for some workloads by freeing buffer
  868. cache spage usage for more cacheable data.
  869. If the Hadoop native libraries are not available, this configuration
  870. has no effect.
  871. </description>
  872. </property>
  873. <property>
  874. <name>dfs.datanode.drop.cache.behind.writes</name>
  875. <value>false</value>
  876. <description>
  877. In some workloads, the data written to HDFS is known to be significantly
  878. large enough that it is unlikely to be useful to cache it in the
  879. operating system buffer cache. In this case, the DataNode may be
  880. configured to automatically purge all data from the buffer cache
  881. after it is written to disk.
  882. This may improve performance for some workloads by freeing buffer
  883. cache spage usage for more cacheable data.
  884. If the Hadoop native libraries are not available, this configuration
  885. has no effect.
  886. </description>
  887. </property>
  888. <property>
  889. <name>dfs.datanode.sync.behind.writes</name>
  890. <value>false</value>
  891. <description>
  892. If this configuration is enabled, the datanode will instruct the
  893. operating system to enqueue all written data to the disk immediately
  894. after it is written. This differs from the usual OS policy which
  895. may wait for up to 30 seconds before triggering writeback.
  896. This may improve performance for some workloads by smoothing the
  897. IO profile for data written to disk.
  898. If the Hadoop native libraries are not available, this configuration
  899. has no effect.
  900. </description>
  901. </property>
  902. <property>
  903. <name>dfs.client.failover.max.attempts</name>
  904. <value>15</value>
  905. <description>
  906. Expert only. The number of client failover attempts that should be
  907. made before the failover is considered failed.
  908. </description>
  909. </property>
  910. <property>
  911. <name>dfs.client.failover.sleep.base.millis</name>
  912. <value>500</value>
  913. <description>
  914. Expert only. The time to wait, in milliseconds, between failover
  915. attempts increases exponentially as a function of the number of
  916. attempts made so far, with a random factor of +/- 50%. This option
  917. specifies the base value used in the failover calculation. The
  918. first failover will retry immediately. The 2nd failover attempt
  919. will delay at least dfs.client.failover.sleep.base.millis
  920. milliseconds. And so on.
  921. </description>
  922. </property>
  923. <property>
  924. <name>dfs.client.failover.sleep.max.millis</name>
  925. <value>15000</value>
  926. <description>
  927. Expert only. The time to wait, in milliseconds, between failover
  928. attempts increases exponentially as a function of the number of
  929. attempts made so far, with a random factor of +/- 50%. This option
  930. specifies the maximum value to wait between failovers.
  931. Specifically, the time between two failover attempts will not
  932. exceed +/- 50% of dfs.client.failover.sleep.max.millis
  933. milliseconds.
  934. </description>
  935. </property>
  936. <property>
  937. <name>dfs.client.failover.connection.retries</name>
  938. <value>0</value>
  939. <description>
  940. Expert only. Indicates the number of retries a failover IPC client
  941. will make to establish a server connection.
  942. </description>
  943. </property>
  944. <property>
  945. <name>dfs.client.failover.connection.retries.on.timeouts</name>
  946. <value>0</value>
  947. <description>
  948. Expert only. The number of retry attempts a failover IPC client
  949. will make on socket timeout when establishing a server connection.
  950. </description>
  951. </property>
  952. <property>
  953. <name>dfs.client.datanode-restart.timeout</name>
  954. <value>30</value>
  955. <description>
  956. Expert only. The time to wait, in seconds, from reception of an
  957. datanode shutdown notification for quick restart, until declaring
  958. the datanode dead and invoking the normal recovery mechanisms.
  959. The notification is sent by a datanode when it is being shutdown
  960. using the shutdownDatanode admin command with the upgrade option.
  961. </description>
  962. </property>
  963. <property>
  964. <name>dfs.nameservices</name>
  965. <value></value>
  966. <description>
  967. Comma-separated list of nameservices.
  968. </description>
  969. </property>
  970. <property>
  971. <name>dfs.nameservice.id</name>
  972. <value></value>
  973. <description>
  974. The ID of this nameservice. If the nameservice ID is not
  975. configured or more than one nameservice is configured for
  976. dfs.nameservices it is determined automatically by
  977. matching the local node's address with the configured address.
  978. </description>
  979. </property>
  980. <property>
  981. <name>dfs.internal.nameservices</name>
  982. <value></value>
  983. <description>
  984. Comma-separated list of nameservices that belong to this cluster.
  985. Datanode will report to all the nameservices in this list. By default
  986. this is set to the value of dfs.nameservices.
  987. </description>
  988. </property>
  989. <property>
  990. <name>dfs.ha.namenodes.EXAMPLENAMESERVICE</name>
  991. <value></value>
  992. <description>
  993. The prefix for a given nameservice, contains a comma-separated
  994. list of namenodes for a given nameservice (eg EXAMPLENAMESERVICE).
  995. </description>
  996. </property>
  997. <property>
  998. <name>dfs.ha.namenode.id</name>
  999. <value></value>
  1000. <description>
  1001. The ID of this namenode. If the namenode ID is not configured it
  1002. is determined automatically by matching the local node's address
  1003. with the configured address.
  1004. </description>
  1005. </property>
  1006. <property>
  1007. <name>dfs.ha.log-roll.period</name>
  1008. <value>120</value>
  1009. <description>
  1010. How often, in seconds, the StandbyNode should ask the active to
  1011. roll edit logs. Since the StandbyNode only reads from finalized
  1012. log segments, the StandbyNode will only be as up-to-date as how
  1013. often the logs are rolled. Note that failover triggers a log roll
  1014. so the StandbyNode will be up to date before it becomes active.
  1015. </description>
  1016. </property>
  1017. <property>
  1018. <name>dfs.ha.tail-edits.period</name>
  1019. <value>60</value>
  1020. <description>
  1021. How often, in seconds, the StandbyNode should check for new
  1022. finalized log segments in the shared edits log.
  1023. </description>
  1024. </property>
  1025. <property>
  1026. <name>dfs.ha.automatic-failover.enabled</name>
  1027. <value>false</value>
  1028. <description>
  1029. Whether automatic failover is enabled. See the HDFS High
  1030. Availability documentation for details on automatic HA
  1031. configuration.
  1032. </description>
  1033. </property>
  1034. <property>
  1035. <name>dfs.support.append</name>
  1036. <value>true</value>
  1037. <description>
  1038. Does HDFS allow appends to files?
  1039. </description>
  1040. </property>
  1041. <property>
  1042. <name>dfs.client.use.datanode.hostname</name>
  1043. <value>false</value>
  1044. <description>Whether clients should use datanode hostnames when
  1045. connecting to datanodes.
  1046. </description>
  1047. </property>
  1048. <property>
  1049. <name>dfs.datanode.use.datanode.hostname</name>
  1050. <value>false</value>
  1051. <description>Whether datanodes should use datanode hostnames when
  1052. connecting to other datanodes for data transfer.
  1053. </description>
  1054. </property>
  1055. <property>
  1056. <name>dfs.client.local.interfaces</name>
  1057. <value></value>
  1058. <description>A comma separated list of network interface names to use
  1059. for data transfer between the client and datanodes. When creating
  1060. a connection to read from or write to a datanode, the client
  1061. chooses one of the specified interfaces at random and binds its
  1062. socket to the IP of that interface. Individual names may be
  1063. specified as either an interface name (eg "eth0"), a subinterface
  1064. name (eg "eth0:0"), or an IP address (which may be specified using
  1065. CIDR notation to match a range of IPs).
  1066. </description>
  1067. </property>
  1068. <property>
  1069. <name>dfs.datanode.shared.file.descriptor.paths</name>
  1070. <value>/dev/shm,/tmp</value>
  1071. <description>
  1072. A comma-separated list of paths to use when creating file descriptors that
  1073. will be shared between the DataNode and the DFSClient. Typically we use
  1074. /dev/shm, so that the file descriptors will not be written to disk.
  1075. Systems that don't have /dev/shm will fall back to /tmp by default.
  1076. </description>
  1077. </property>
  1078. <property>
  1079. <name>dfs.short.circuit.shared.memory.watcher.interrupt.check.ms</name>
  1080. <value>60000</value>
  1081. <description>
  1082. The length of time in milliseconds that the short-circuit shared memory
  1083. watcher will go between checking for java interruptions sent from other
  1084. threads. This is provided mainly for unit tests.
  1085. </description>
  1086. </property>
  1087. <property>
  1088. <name>dfs.namenode.kerberos.internal.spnego.principal</name>
  1089. <value>${dfs.web.authentication.kerberos.principal}</value>
  1090. </property>
  1091. <property>
  1092. <name>dfs.secondary.namenode.kerberos.internal.spnego.principal</name>
  1093. <value>${dfs.web.authentication.kerberos.principal}</value>
  1094. </property>
  1095. <property>
  1096. <name>dfs.namenode.avoid.read.stale.datanode</name>
  1097. <value>false</value>
  1098. <description>
  1099. Indicate whether or not to avoid reading from &quot;stale&quot; datanodes whose
  1100. heartbeat messages have not been received by the namenode
  1101. for more than a specified time interval. Stale datanodes will be
  1102. moved to the end of the node list returned for reading. See
  1103. dfs.namenode.avoid.write.stale.datanode for a similar setting for writes.
  1104. </description>
  1105. </property>
  1106. <property>
  1107. <name>dfs.namenode.avoid.write.stale.datanode</name>
  1108. <value>false</value>
  1109. <description>
  1110. Indicate whether or not to avoid writing to &quot;stale&quot; datanodes whose
  1111. heartbeat messages have not been received by the namenode
  1112. for more than a specified time interval. Writes will avoid using
  1113. stale datanodes unless more than a configured ratio
  1114. (dfs.namenode.write.stale.datanode.ratio) of datanodes are marked as
  1115. stale. See dfs.namenode.avoid.read.stale.datanode for a similar setting
  1116. for reads.
  1117. </description>
  1118. </property>
  1119. <property>
  1120. <name>dfs.namenode.stale.datanode.interval</name>
  1121. <value>30000</value>
  1122. <description>
  1123. Default time interval for marking a datanode as "stale", i.e., if
  1124. the namenode has not received heartbeat msg from a datanode for
  1125. more than this time interval, the datanode will be marked and treated
  1126. as "stale" by default. The stale interval cannot be too small since
  1127. otherwise this may cause too frequent change of stale states.
  1128. We thus set a minimum stale interval value (the default value is 3 times
  1129. of heartbeat interval) and guarantee that the stale interval cannot be less
  1130. than the minimum value. A stale data node is avoided during lease/block
  1131. recovery. It can be conditionally avoided for reads (see
  1132. dfs.namenode.avoid.read.stale.datanode) and for writes (see
  1133. dfs.namenode.avoid.write.stale.datanode).
  1134. </description>
  1135. </property>
  1136. <property>
  1137. <name>dfs.namenode.write.stale.datanode.ratio</name>
  1138. <value>0.5f</value>
  1139. <description>
  1140. When the ratio of number stale datanodes to total datanodes marked
  1141. is greater than this ratio, stop avoiding writing to stale nodes so
  1142. as to prevent causing hotspots.
  1143. </description>
  1144. </property>
  1145. <property>
  1146. <name>dfs.namenode.invalidate.work.pct.per.iteration</name>
  1147. <value>0.32f</value>
  1148. <description>
  1149. *Note*: Advanced property. Change with caution.
  1150. This determines the percentage amount of block
  1151. invalidations (deletes) to do over a single DN heartbeat
  1152. deletion command. The final deletion count is determined by applying this
  1153. percentage to the number of live nodes in the system.
  1154. The resultant number is the number of blocks from the deletion list
  1155. chosen for proper invalidation over a single heartbeat of a single DN.
  1156. Value should be a positive, non-zero percentage in float notation (X.Yf),
  1157. with 1.0f meaning 100%.
  1158. </description>
  1159. </property>
  1160. <property>
  1161. <name>dfs.namenode.replication.work.multiplier.per.iteration</name>
  1162. <value>2</value>
  1163. <description>
  1164. *Note*: Advanced property. Change with caution.
  1165. This determines the total amount of block transfers to begin in
  1166. parallel at a DN, for replication, when such a command list is being
  1167. sent over a DN heartbeat by the NN. The actual number is obtained by
  1168. multiplying this multiplier with the total number of live nodes in the
  1169. cluster. The result number is the number of blocks to begin transfers
  1170. immediately for, per DN heartbeat. This number can be any positive,
  1171. non-zero integer.
  1172. </description>
  1173. </property>
  1174. <property>
  1175. <name>nfs.server.port</name>
  1176. <value>2049</value>
  1177. <description>
  1178. Specify the port number used by Hadoop NFS.
  1179. </description>
  1180. </property>
  1181. <property>
  1182. <name>nfs.mountd.port</name>
  1183. <value>4242</value>
  1184. <description>
  1185. Specify the port number used by Hadoop mount daemon.
  1186. </description>
  1187. </property>
  1188. <property>
  1189. <name>nfs.dump.dir</name>
  1190. <value>/tmp/.hdfs-nfs</value>
  1191. <description>
  1192. This directory is used to temporarily save out-of-order writes before
  1193. writing to HDFS. For each file, the out-of-order writes are dumped after
  1194. they are accumulated to exceed certain threshold (e.g., 1MB) in memory.
  1195. One needs to make sure the directory has enough space.
  1196. </description>
  1197. </property>
  1198. <property>
  1199. <name>nfs.rtmax</name>
  1200. <value>1048576</value>
  1201. <description>This is the maximum size in bytes of a READ request
  1202. supported by the NFS gateway. If you change this, make sure you
  1203. also update the nfs mount's rsize(add rsize= # of bytes to the
  1204. mount directive).
  1205. </description>
  1206. </property>
  1207. <property>
  1208. <name>nfs.wtmax</name>
  1209. <value>1048576</value>
  1210. <description>This is the maximum size in bytes of a WRITE request
  1211. supported by the NFS gateway. If you change this, make sure you
  1212. also update the nfs mount's wsize(add wsize= # of bytes to the
  1213. mount directive).
  1214. </description>
  1215. </property>
  1216. <property>
  1217. <name>nfs.keytab.file</name>
  1218. <value></value>
  1219. <description>
  1220. *Note*: Advanced property. Change with caution.
  1221. This is the path to the keytab file for the hdfs-nfs gateway.
  1222. This is required when the cluster is kerberized.
  1223. </description>
  1224. </property>
  1225. <property>
  1226. <name>nfs.kerberos.principal</name>
  1227. <value></value>
  1228. <description>
  1229. *Note*: Advanced property. Change with caution.
  1230. This is the name of the kerberos principal. This is required when
  1231. the cluster is kerberized.It must be of this format:
  1232. nfs-gateway-user/nfs-gateway-host@kerberos-realm
  1233. </description>
  1234. </property>
  1235. <property>
  1236. <name>nfs.allow.insecure.ports</name>
  1237. <value>true</value>
  1238. <description>
  1239. When set to false, client connections originating from unprivileged ports
  1240. (those above 1023) will be rejected. This is to ensure that clients
  1241. connecting to this NFS Gateway must have had root privilege on the machine
  1242. where they're connecting from.
  1243. </description>
  1244. </property>
  1245. <property>
  1246. <name>dfs.webhdfs.enabled</name>
  1247. <value>true</value>
  1248. <description>
  1249. Enable WebHDFS (REST API) in Namenodes and Datanodes.
  1250. </description>
  1251. </property>
  1252. <property>
  1253. <name>hadoop.fuse.connection.timeout</name>
  1254. <value>300</value>
  1255. <description>
  1256. The minimum number of seconds that we'll cache libhdfs connection objects
  1257. in fuse_dfs. Lower values will result in lower memory consumption; higher
  1258. values may speed up access by avoiding the overhead of creating new
  1259. connection objects.
  1260. </description>
  1261. </property>
  1262. <property>
  1263. <name>hadoop.fuse.timer.period</name>
  1264. <value>5</value>
  1265. <description>
  1266. The number of seconds between cache expiry checks in fuse_dfs. Lower values
  1267. will result in fuse_dfs noticing changes to Kerberos ticket caches more
  1268. quickly.
  1269. </description>
  1270. </property>
  1271. <property>
  1272. <name>dfs.metrics.percentiles.intervals</name>
  1273. <value></value>
  1274. <description>
  1275. Comma-delimited set of integers denoting the desired rollover intervals
  1276. (in seconds) for percentile latency metrics on the Namenode and Datanode.
  1277. By default, percentile latency metrics are disabled.
  1278. </description>
  1279. </property>
  1280. <property>
  1281. <name>dfs.encrypt.data.transfer</name>
  1282. <value>false</value>
  1283. <description>
  1284. Whether or not actual block data that is read/written from/to HDFS should
  1285. be encrypted on the wire. This only needs to be set on the NN and DNs,
  1286. clients will deduce this automatically. It is possible to override this setting
  1287. per connection by specifying custom logic via dfs.trustedchannel.resolver.class.
  1288. </description>
  1289. </property>
  1290. <property>
  1291. <name>dfs.encrypt.data.transfer.algorithm</name>
  1292. <value></value>
  1293. <description>
  1294. This value may be set to either "3des" or "rc4". If nothing is set, then
  1295. the configured JCE default on the system is used (usually 3DES.) It is
  1296. widely believed that 3DES is more cryptographically secure, but RC4 is
  1297. substantially faster.
  1298. </description>
  1299. </property>
  1300. <property>
  1301. <name>dfs.trustedchannel.resolver.class</name>
  1302. <value></value>
  1303. <description>
  1304. TrustedChannelResolver is used to determine whether a channel
  1305. is trusted for plain data transfer. The TrustedChannelResolver is
  1306. invoked on both client and server side. If the resolver indicates
  1307. that the channel is trusted, then the data transfer will not be
  1308. encrypted even if dfs.encrypt.data.transfer is set to true. The
  1309. default implementation returns false indicating that the channel
  1310. is not trusted.
  1311. </description>
  1312. </property>
  1313. <property>
  1314. <name>dfs.data.transfer.protection</name>
  1315. <value></value>
  1316. <description>
  1317. A comma-separated list of SASL protection values used for secured
  1318. connections to the DataNode when reading or writing block data. Possible
  1319. values are authentication, integrity and privacy. authentication means
  1320. authentication only and no integrity or privacy; integrity implies
  1321. authentication and integrity are enabled; and privacy implies all of
  1322. authentication, integrity and privacy are enabled. If
  1323. dfs.encrypt.data.transfer is set to true, then it supersedes the setting for
  1324. dfs.data.transfer.protection and enforces that all connections must use a
  1325. specialized encrypted SASL handshake. This property is ignored for
  1326. connections to a DataNode listening on a privileged port. In this case, it
  1327. is assumed that the use of a privileged port establishes sufficient trust.
  1328. </description>
  1329. </property>
  1330. <property>
  1331. <name>dfs.data.transfer.saslproperties.resolver.class</name>
  1332. <value></value>
  1333. <description>
  1334. SaslPropertiesResolver used to resolve the QOP used for a connection to the
  1335. DataNode when reading or writing block data. If not specified, the value of
  1336. hadoop.security.saslproperties.resolver.class is used as the default value.
  1337. </description>
  1338. </property>
  1339. <property>
  1340. <name>dfs.datanode.hdfs-blocks-metadata.enabled</name>
  1341. <value>false</value>
  1342. <description>
  1343. Boolean which enables backend datanode-side support for the experimental DistributedFileSystem#getFileVBlockStorageLocations API.
  1344. </description>
  1345. </property>
  1346. <property>
  1347. <name>dfs.client.file-block-storage-locations.num-threads</name>
  1348. <value>10</value>
  1349. <description>
  1350. Number of threads used for making parallel RPCs in DistributedFileSystem#getFileBlockStorageLocations().
  1351. </description>
  1352. </property>
  1353. <property>
  1354. <name>dfs.client.file-block-storage-locations.timeout.millis</name>
  1355. <value>1000</value>
  1356. <description>
  1357. Timeout (in milliseconds) for the parallel RPCs made in DistributedFileSystem#getFileBlockStorageLocations().
  1358. </description>
  1359. </property>
  1360. <property>
  1361. <name>dfs.journalnode.rpc-address</name>
  1362. <value>0.0.0.0:8485</value>
  1363. <description>
  1364. The JournalNode RPC server address and port.
  1365. </description>
  1366. </property>
  1367. <property>
  1368. <name>dfs.journalnode.http-address</name>
  1369. <value>0.0.0.0:8480</value>
  1370. <description>
  1371. The address and port the JournalNode HTTP server listens on.
  1372. If the port is 0 then the server will start on a free port.
  1373. </description>
  1374. </property>
  1375. <property>
  1376. <name>dfs.journalnode.https-address</name>
  1377. <value>0.0.0.0:8481</value>
  1378. <description>
  1379. The address and port the JournalNode HTTPS server listens on.
  1380. If the port is 0 then the server will start on a free port.
  1381. </description>
  1382. </property>
  1383. <property>
  1384. <name>dfs.namenode.audit.loggers</name>
  1385. <value>default</value>
  1386. <description>
  1387. List of classes implementing audit loggers that will receive audit events.
  1388. These should be implementations of org.apache.hadoop.hdfs.server.namenode.AuditLogger.
  1389. The special value "default" can be used to reference the default audit
  1390. logger, which uses the configured log system. Installing custom audit loggers
  1391. may affect the performance and stability of the NameNode. Refer to the custom
  1392. logger's documentation for more details.
  1393. </description>
  1394. </property>
  1395. <property>
  1396. <name>dfs.datanode.available-space-volume-choosing-policy.balanced-space-threshold</name>
  1397. <value>10737418240</value> <!-- 10 GB -->
  1398. <description>
  1399. Only used when the dfs.datanode.fsdataset.volume.choosing.policy is set to
  1400. org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicy.
  1401. This setting controls how much DN volumes are allowed to differ in terms of
  1402. bytes of free disk space before they are considered imbalanced. If the free
  1403. space of all the volumes are within this range of each other, the volumes
  1404. will be considered balanced and block assignments will be done on a pure
  1405. round robin basis.
  1406. </description>
  1407. </property>
  1408. <property>
  1409. <name>dfs.datanode.available-space-volume-choosing-policy.balanced-space-preference-fraction</name>
  1410. <value>0.75f</value>
  1411. <description>
  1412. Only used when the dfs.datanode.fsdataset.volume.choosing.policy is set to
  1413. org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicy.
  1414. This setting controls what percentage of new block allocations will be sent
  1415. to volumes with more available disk space than others. This setting should
  1416. be in the range 0.0 - 1.0, though in practice 0.5 - 1.0, since there should
  1417. be no reason to prefer that volumes with less available disk space receive
  1418. more block allocations.
  1419. </description>
  1420. </property>
  1421. <property>
  1422. <name>dfs.namenode.edits.noeditlogchannelflush</name>
  1423. <value>false</value>
  1424. <description>
  1425. Specifies whether to flush edit log file channel. When set, expensive
  1426. FileChannel#force calls are skipped and synchronous disk writes are
  1427. enabled instead by opening the edit log file with RandomAccessFile("rws")
  1428. flags. This can significantly improve the performance of edit log writes
  1429. on the Windows platform.
  1430. Note that the behavior of the "rws" flags is platform and hardware specific
  1431. and might not provide the same level of guarantees as FileChannel#force.
  1432. For example, the write will skip the disk-cache on SAS and SCSI devices
  1433. while it might not on SATA devices. This is an expert level setting,
  1434. change with caution.
  1435. </description>
  1436. </property>
  1437. <property>
  1438. <name>dfs.client.cache.drop.behind.writes</name>
  1439. <value></value>
  1440. <description>
  1441. Just like dfs.datanode.drop.cache.behind.writes, this setting causes the
  1442. page cache to be dropped behind HDFS writes, potentially freeing up more
  1443. memory for other uses. Unlike dfs.datanode.drop.cache.behind.writes, this
  1444. is a client-side setting rather than a setting for the entire datanode.
  1445. If present, this setting will override the DataNode default.
  1446. If the native libraries are not available to the DataNode, this
  1447. configuration has no effect.
  1448. </description>
  1449. </property>
  1450. <property>
  1451. <name>dfs.client.cache.drop.behind.reads</name>
  1452. <value></value>
  1453. <description>
  1454. Just like dfs.datanode.drop.cache.behind.reads, this setting causes the
  1455. page cache to be dropped behind HDFS reads, potentially freeing up more
  1456. memory for other uses. Unlike dfs.datanode.drop.cache.behind.reads, this
  1457. is a client-side setting rather than a setting for the entire datanode. If
  1458. present, this setting will override the DataNode default.
  1459. If the native libraries are not available to the DataNode, this
  1460. configuration has no effect.
  1461. </description>
  1462. </property>
  1463. <property>
  1464. <name>dfs.client.cache.readahead</name>
  1465. <value></value>
  1466. <description>
  1467. When using remote reads, this setting causes the datanode to
  1468. read ahead in the block file using posix_fadvise, potentially decreasing
  1469. I/O wait times. Unlike dfs.datanode.readahead.bytes, this is a client-side
  1470. setting rather than a setting for the entire datanode. If present, this
  1471. setting will override the DataNode default.
  1472. When using local reads, this setting determines how much readahead we do in
  1473. BlockReaderLocal.
  1474. If the native libraries are not available to the DataNode, this
  1475. configuration has no effect.
  1476. </description>
  1477. </property>
  1478. <property>
  1479. <name>dfs.namenode.enable.retrycache</name>
  1480. <value>true</value>
  1481. <description>
  1482. This enables the retry cache on the namenode. Namenode tracks for
  1483. non-idempotent requests the corresponding response. If a client retries the
  1484. request, the response from the retry cache is sent. Such operations
  1485. are tagged with annotation @AtMostOnce in namenode protocols. It is
  1486. recommended that this flag be set to true. Setting it to false, will result
  1487. in clients getting failure responses to retried request. This flag must
  1488. be enabled in HA setup for transparent fail-overs.
  1489. The entries in the cache have expiration time configurable
  1490. using dfs.namenode.retrycache.expirytime.millis.
  1491. </description>
  1492. </property>
  1493. <property>
  1494. <name>dfs.namenode.retrycache.expirytime.millis</name>
  1495. <value>600000</value>
  1496. <description>
  1497. The time for which retry cache entries are retained.
  1498. </description>
  1499. </property>
  1500. <property>
  1501. <name>dfs.namenode.retrycache.heap.percent</name>
  1502. <value>0.03f</value>
  1503. <description>
  1504. This parameter configures the heap size allocated for retry cache
  1505. (excluding the response cached). This corresponds to approximately
  1506. 4096 entries for every 64MB of namenode process java heap size.
  1507. Assuming retry cache entry expiration time (configured using
  1508. dfs.namenode.retrycache.expirytime.millis) of 10 minutes, this
  1509. enables retry cache to support 7 operations per second sustained
  1510. for 10 minutes. As the heap size is increased, the operation rate
  1511. linearly increases.
  1512. </description>
  1513. </property>
  1514. <property>
  1515. <name>dfs.client.mmap.enabled</name>
  1516. <value>true</value>
  1517. <description>
  1518. If this is set to false, the client won't attempt to perform memory-mapped reads.
  1519. </description>
  1520. </property>
  1521. <property>
  1522. <name>dfs.client.mmap.cache.size</name>
  1523. <value>256</value>
  1524. <description>
  1525. When zero-copy reads are used, the DFSClient keeps a cache of recently used
  1526. memory mapped regions. This parameter controls the maximum number of
  1527. entries that we will keep in that cache.
  1528. The larger this number is, the more file descriptors we will potentially
  1529. use for memory-mapped files. mmaped files also use virtual address space.
  1530. You may need to increase your ulimit virtual address space limits before
  1531. increasing the client mmap cache size.
  1532. Note that you can still do zero-copy reads when this size is set to 0.
  1533. </description>
  1534. </property>
  1535. <property>
  1536. <name>dfs.client.mmap.cache.timeout.ms</name>
  1537. <value>3600000</value>
  1538. <description>
  1539. The minimum length of time that we will keep an mmap entry in the cache
  1540. between uses. If an entry is in the cache longer than this, and nobody
  1541. uses it, it will be removed by a background thread.
  1542. </description>
  1543. </property>
  1544. <property>
  1545. <name>dfs.client.mmap.retry.timeout.ms</name>
  1546. <value>300000</value>
  1547. <description>
  1548. The minimum amount of time that we will wait before retrying a failed mmap
  1549. operation.
  1550. </description>
  1551. </property>
  1552. <property>
  1553. <name>dfs.client.short.circuit.replica.stale.threshold.ms</name>
  1554. <value>1800000</value>
  1555. <description>
  1556. The maximum amount of time that we will consider a short-circuit replica to
  1557. be valid, if there is no communication from the DataNode. After this time
  1558. has elapsed, we will re-fetch the short-circuit replica even if it is in
  1559. the cache.
  1560. </description>
  1561. </property>
  1562. <property>
  1563. <name>dfs.namenode.path.based.cache.block.map.allocation.percent</name>
  1564. <value>0.25</value>
  1565. <description>
  1566. The percentage of the Java heap which we will allocate to the cached blocks
  1567. map. The cached blocks map is a hash map which uses chained hashing.
  1568. Smaller maps may be accessed more slowly if the number of cached blocks is
  1569. large; larger maps will consume more memory.
  1570. </description>
  1571. </property>
  1572. <property>
  1573. <name>dfs.datanode.max.locked.memory</name>
  1574. <value>0</value>
  1575. <description>
  1576. The amount of memory in bytes to use for caching of block replicas in
  1577. memory on the datanode. The datanode's maximum locked memory soft ulimit
  1578. (RLIMIT_MEMLOCK) must be set to at least this value, else the datanode
  1579. will abort on startup.
  1580. By default, this parameter is set to 0, which disables in-memory caching.
  1581. If the native libraries are not available to the DataNode, this
  1582. configuration has no effect.
  1583. </description>
  1584. </property>
  1585. <property>
  1586. <name>dfs.namenode.list.cache.directives.num.responses</name>
  1587. <value>100</value>
  1588. <description>
  1589. This value controls the number of cache directives that the NameNode will
  1590. send over the wire in response to a listDirectives RPC.
  1591. </description>
  1592. </property>
  1593. <property>
  1594. <name>dfs.namenode.list.cache.pools.num.responses</name>
  1595. <value>100</value>
  1596. <description>
  1597. This value controls the number of cache pools that the NameNode will
  1598. send over the wire in response to a listPools RPC.
  1599. </description>
  1600. </property>
  1601. <property>
  1602. <name>dfs.namenode.path.based.cache.refresh.interval.ms</name>
  1603. <value>30000</value>
  1604. <description>
  1605. The amount of milliseconds between subsequent path cache rescans. Path
  1606. cache rescans are when we calculate which blocks should be cached, and on
  1607. what datanodes.
  1608. By default, this parameter is set to 30 seconds.
  1609. </description>
  1610. </property>
  1611. <property>
  1612. <name>dfs.namenode.path.based.cache.retry.interval.ms</name>
  1613. <value>30000</value>
  1614. <description>
  1615. When the NameNode needs to uncache something that is cached, or cache
  1616. something that is not cached, it must direct the DataNodes to do so by
  1617. sending a DNA_CACHE or DNA_UNCACHE command in response to a DataNode
  1618. heartbeat. This parameter controls how frequently the NameNode will
  1619. resend these commands.
  1620. </description>
  1621. </property>
  1622. <property>
  1623. <name>dfs.datanode.fsdatasetcache.max.threads.per.volume</name>
  1624. <value>4</value>
  1625. <description>
  1626. The maximum number of threads per volume to use for caching new data
  1627. on the datanode. These threads consume both I/O and CPU. This can affect
  1628. normal datanode operations.
  1629. </description>
  1630. </property>
  1631. <property>
  1632. <name>dfs.cachereport.intervalMsec</name>
  1633. <value>10000</value>
  1634. <description>
  1635. Determines cache reporting interval in milliseconds. After this amount of
  1636. time, the DataNode sends a full report of its cache state to the NameNode.
  1637. The NameNode uses the cache report to update its map of cached blocks to
  1638. DataNode locations.
  1639. This configuration has no effect if in-memory caching has been disabled by
  1640. setting dfs.datanode.max.locked.memory to 0 (which is the default).
  1641. If the native libraries are not available to the DataNode, this
  1642. configuration has no effect.
  1643. </description>
  1644. </property>
  1645. <property>
  1646. <name>dfs.namenode.edit.log.autoroll.multiplier.threshold</name>
  1647. <value>2.0</value>
  1648. <description>
  1649. Determines when an active namenode will roll its own edit log.
  1650. The actual threshold (in number of edits) is determined by multiplying
  1651. this value by dfs.namenode.checkpoint.txns.
  1652. This prevents extremely large edit files from accumulating on the active
  1653. namenode, which can cause timeouts during namenode startup and pose an
  1654. administrative hassle. This behavior is intended as a failsafe for when
  1655. the standby or secondary namenode fail to roll the edit log by the normal
  1656. checkpoint threshold.
  1657. </description>
  1658. </property>
  1659. <property>
  1660. <name>dfs.namenode.edit.log.autoroll.check.interval.ms</name>
  1661. <value>300000</value>
  1662. <description>
  1663. How often an active namenode will check if it needs to roll its edit log,
  1664. in milliseconds.
  1665. </description>
  1666. </property>
  1667. <property>
  1668. <name>dfs.webhdfs.user.provider.user.pattern</name>
  1669. <value>^[A-Za-z_][A-Za-z0-9._-]*[$]?$</value>
  1670. <description>
  1671. Valid pattern for user and group names for webhdfs, it must be a valid java regex.
  1672. </description>
  1673. </property>
  1674. <property>
  1675. <name>dfs.client.context</name>
  1676. <value>default</value>
  1677. <description>
  1678. The name of the DFSClient context that we should use. Clients that share
  1679. a context share a socket cache and short-circuit cache, among other things.
  1680. You should only change this if you don't want to share with another set of
  1681. threads.
  1682. </description>
  1683. </property>
  1684. <property>
  1685. <name>dfs.client.read.shortcircuit</name>
  1686. <value>false</value>
  1687. <description>
  1688. This configuration parameter turns on short-circuit local reads.
  1689. </description>
  1690. </property>
  1691. <property>
  1692. <name>dfs.domain.socket.path</name>
  1693. <value></value>
  1694. <description>
  1695. Optional. This is a path to a UNIX domain socket that will be used for
  1696. communication between the DataNode and local HDFS clients.
  1697. If the string "_PORT" is present in this path, it will be replaced by the
  1698. TCP port of the DataNode.
  1699. </description>
  1700. </property>
  1701. <property>
  1702. <name>dfs.client.read.shortcircuit.skip.checksum</name>
  1703. <value>false</value>
  1704. <description>
  1705. If this configuration parameter is set,
  1706. short-circuit local reads will skip checksums.
  1707. This is normally not recommended,
  1708. but it may be useful for special setups.
  1709. You might consider using this
  1710. if you are doing your own checksumming outside of HDFS.
  1711. </description>
  1712. </property>
  1713. <property>
  1714. <name>dfs.client.read.shortcircuit.streams.cache.size</name>
  1715. <value>256</value>
  1716. <description>
  1717. The DFSClient maintains a cache of recently opened file descriptors.
  1718. This parameter controls the size of that cache.
  1719. Setting this higher will use more file descriptors,
  1720. but potentially provide better performance on workloads
  1721. involving lots of seeks.
  1722. </description>
  1723. </property>
  1724. <property>
  1725. <name>dfs.client.read.shortcircuit.streams.cache.expiry.ms</name>
  1726. <value>300000</value>
  1727. <description>
  1728. This controls the minimum amount of time
  1729. file descriptors need to sit in the client cache context
  1730. before they can be closed for being inactive for too long.
  1731. </description>
  1732. </property>
  1733. <property>
  1734. <name>dfs.datanode.shared.file.descriptor.paths</name>
  1735. <value>/dev/shm,/tmp</value>
  1736. <description>
  1737. Comma separated paths to the directory on which
  1738. shared memory segments are created.
  1739. The client and the DataNode exchange information via
  1740. this shared memory segment.
  1741. It tries paths in order until creation of shared memory segment succeeds.
  1742. </description>
  1743. </property>
  1744. <property>
  1745. <name>dfs.client.use.legacy.blockreader.local</name>
  1746. <value>false</value>
  1747. <description>
  1748. Legacy short-circuit reader implementation based on HDFS-2246 is used
  1749. if this configuration parameter is true.
  1750. This is for the platforms other than Linux
  1751. where the new implementation based on HDFS-347 is not available.
  1752. </description>
  1753. </property>
  1754. <property>
  1755. <name>dfs.block.local-path-access.user</name>
  1756. <value></value>
  1757. <description>
  1758. Comma separated list of the users allowd to open block files
  1759. on legacy short-circuit local read.
  1760. </description>
  1761. </property>
  1762. <property>
  1763. <name>dfs.client.domain.socket.data.traffic</name>
  1764. <value>false</value>
  1765. <description>
  1766. This control whether we will try to pass normal data traffic
  1767. over UNIX domain socket rather than over TCP socket
  1768. on node-local data transfer.
  1769. This is currently experimental and turned off by default.
  1770. </description>
  1771. </property>
  1772. <property>
  1773. <name>dfs.namenode.reject-unresolved-dn-topology-mapping</name>
  1774. <value>false</value>
  1775. <description>
  1776. If the value is set to true, then namenode will reject datanode
  1777. registration if the topology mapping for a datanode is not resolved and
  1778. NULL is returned (script defined by net.topology.script.file.name fails
  1779. to execute). Otherwise, datanode will be registered and the default rack
  1780. will be assigned as the topology path. Topology paths are important for
  1781. data resiliency, since they define fault domains. Thus it may be unwanted
  1782. behavior to allow datanode registration with the default rack if the
  1783. resolving topology failed.
  1784. </description>
  1785. </property>
  1786. <property>
  1787. <name>dfs.namenode.xattrs.enabled</name>
  1788. <value>true</value>
  1789. <description>
  1790. Whether support for extended attributes is enabled on the NameNode.
  1791. </description>
  1792. </property>
  1793. <property>
  1794. <name>dfs.namenode.fs-limits.max-xattrs-per-inode</name>
  1795. <value>32</value>
  1796. <description>
  1797. Maximum number of extended attributes per inode.
  1798. </description>
  1799. </property>
  1800. <property>
  1801. <name>dfs.namenode.fs-limits.max-xattr-size</name>
  1802. <value>16384</value>
  1803. <description>
  1804. The maximum combined size of the name and value of an extended attribute in bytes.
  1805. </description>
  1806. </property>
  1807. <property>
  1808. <name>dfs.client.slow.io.warning.threshold.ms</name>
  1809. <value>30000</value>
  1810. <description>The threshold in milliseconds at which we will log a slow
  1811. io warning in a dfsclient. By default, this parameter is set to 30000
  1812. milliseconds (30 seconds).
  1813. </description>
  1814. </property>
  1815. <property>
  1816. <name>dfs.datanode.slow.io.warning.threshold.ms</name>
  1817. <value>300</value>
  1818. <description>The threshold in milliseconds at which we will log a slow
  1819. io warning in a datanode. By default, this parameter is set to 300
  1820. milliseconds.
  1821. </description>
  1822. </property>
  1823. <property>
  1824. <name>dfs.namenode.startup.delay.block.deletion.sec</name>
  1825. <value>0</value>
  1826. <description>The delay in seconds at which we will pause the blocks deletion
  1827. after Namenode startup. By default it's disabled.
  1828. In the case a directory has large number of directories and files are
  1829. deleted, suggested delay is one hour to give the administrator enough time
  1830. to notice large number of pending deletion blocks and take corrective
  1831. action.
  1832. </description>
  1833. </property>
  1834. <property>
  1835. <name>dfs.namenode.randomize-block-locations-per-block</name>
  1836. <value>false</value>
  1837. <description>When fetching replica locations of a block, the replicas
  1838. are sorted based on network distance. This configuration parameter
  1839. determines whether the replicas at the same network distance are randomly
  1840. shuffled. By default, this is false, such that repeated requests for a block's
  1841. replicas always result in the same order. This potentially improves page cache
  1842. behavior. However, for some network topologies, it is desirable to shuffle this
  1843. order for better load balancing.
  1844. </description>
  1845. </property>
  1846. <property>
  1847. <name>dfs.datanode.block.id.layout.upgrade.threads</name>
  1848. <value>12</value>
  1849. <description>The number of threads to use when creating hard links from
  1850. current to previous blocks during upgrade of a DataNode to block ID-based
  1851. block layout (see HDFS-6482 for details on the layout).</description>
  1852. </property>
  1853. <property>
  1854. <name>dfs.namenode.list.encryption.zones.num.responses</name>
  1855. <value>100</value>
  1856. <description>When listing encryption zones, the maximum number of zones
  1857. that will be returned in a batch. Fetching the list incrementally in
  1858. batches improves namenode performance.
  1859. </description>
  1860. </property>
  1861. <property>
  1862. <name>dfs.namenode.inotify.max.events.per.rpc</name>
  1863. <value>1000</value>
  1864. <description>Maximum number of events that will be sent to an inotify client
  1865. in a single RPC response. The default value attempts to amortize away
  1866. the overhead for this RPC while avoiding huge memory requirements for the
  1867. client and NameNode (1000 events should consume no more than 1 MB.)
  1868. </description>
  1869. </property>
  1870. <property>
  1871. <name>dfs.user.home.dir.prefix</name>
  1872. <value>/user</value>
  1873. <description>The directory to prepend to user name to get the user's
  1874. home direcotry.
  1875. </description>
  1876. </property>
  1877. <property>
  1878. <name>dfs.datanode.cache.revocation.timeout.ms</name>
  1879. <value>900000</value>
  1880. <description>When the DFSClient reads from a block file which the DataNode is
  1881. caching, the DFSClient can skip verifying checksums. The DataNode will
  1882. keep the block file in cache until the client is done. If the client takes
  1883. an unusually long time, though, the DataNode may need to evict the block
  1884. file from the cache anyway. This value controls how long the DataNode will
  1885. wait for the client to release a replica that it is reading without
  1886. checksums.
  1887. </description>
  1888. </property>
  1889. <property>
  1890. <name>dfs.datanode.cache.revocation.polling.ms</name>
  1891. <value>500</value>
  1892. <description>How often the DataNode should poll to see if the clients have
  1893. stopped using a replica that the DataNode wants to uncache.
  1894. </description>
  1895. </property>
  1896. <property>
  1897. <name>dfs.encryption.key.provider.uri</name>
  1898. <description>
  1899. The KeyProvider to use when interacting with encryption keys used
  1900. when reading and writing to an encryption zone.
  1901. </description>
  1902. </property>
  1903. </configuration>