1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533 |
- <?xml version="1.0" encoding="UTF-8"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
- <!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
- <!-- Do not modify this file directly. Instead, copy entries that you -->
- <!-- wish to modify from this file into ozone-site.xml and change them -->
- <!-- there. If ozone-site.xml does not already exist, create it. -->
- <!--Tags supported are OZONE, CBLOCK, MANAGEMENT, SECURITY, PERFORMANCE, -->
- <!--DEBUG, CLIENT, SERVER, OM, SCM, CRITICAL, RATIS, CONTAINER, REQUIRED, -->
- <!--REST, STORAGE, PIPELINE, STANDALONE -->
- <configuration>
- <!--Container Settings used by Datanode-->
- <property>
- <name>ozone.container.cache.size</name>
- <value>1024</value>
- <tag>PERFORMANCE, CONTAINER, STORAGE</tag>
- <description>The open container is cached on the data node side. We maintain
- an LRU
- cache for caching the recently used containers. This setting controls the
- size of that cache.
- </description>
- </property>
- <property>
- <name>dfs.container.ipc</name>
- <value>9859</value>
- <tag>OZONE, CONTAINER, MANAGEMENT</tag>
- <description>The ipc port number of container.</description>
- </property>
- <property>
- <name>dfs.container.ipc.random.port</name>
- <value>false</value>
- <tag>OZONE, DEBUG, CONTAINER</tag>
- <description>Allocates a random free port for ozone container. This is used
- only while
- running unit tests.
- </description>
- </property>
- <property>
- <name>dfs.container.chunk.write.sync</name>
- <value>false</value>
- <tag>OZONE, CONTAINER, MANAGEMENT</tag>
- <description>Determines whether the chunk writes in the container happen as
- sync I/0 or buffered I/O operation.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.statemachinedata.sync.timeout</name>
- <value>10s</value>
- <tag>OZONE, DEBUG, CONTAINER, RATIS</tag>
- <description>Timeout for StateMachine data writes by Ratis.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.statemachinedata.sync.retries</name>
- <value>-1</value>
- <tag>OZONE, DEBUG, CONTAINER, RATIS</tag>
- <description>Number of times the WriteStateMachineData op will be tried
- before failing, if this value is -1, then this retries indefinitely.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.log.queue.num-elements</name>
- <value>1024</value>
- <tag>OZONE, DEBUG, CONTAINER, RATIS</tag>
- <description>Limit for the number of operations in Ratis Log Worker.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.log.queue.byte-limit</name>
- <value>4GB</value>
- <tag>OZONE, DEBUG, CONTAINER, RATIS</tag>
- <description>Byte limit for Ratis Log Worker queue.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.log.appender.queue.num-elements</name>
- <value>1</value>
- <tag>OZONE, DEBUG, CONTAINER, RATIS</tag>
- <description>Limit for number of append entries in ratis leader's
- log appender queue.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.log.appender.queue.byte-limit</name>
- <value>32MB</value>
- <tag>OZONE, DEBUG, CONTAINER, RATIS</tag>
- <description>Byte limit for ratis leader's log appender queue.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.log.purge.gap</name>
- <value>1000000000</value>
- <tag>OZONE, DEBUG, CONTAINER, RATIS</tag>
- <description>Purge gap between the last purged commit index
- and the current index, when the leader decides to purge its log.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.datanode.storage.dir</name>
- <value/>
- <tag>OZONE, CONTAINER, STORAGE, MANAGEMENT, RATIS</tag>
- <description>This directory is used for storing Ratis metadata like logs. If
- this is
- not set then default metadata dirs is used. A warning will be logged if
- this not set. Ideally, this should be mapped to a fast disk like an SSD.
- </description>
- </property>
- <property>
- <name>hdds.datanode.dir</name>
- <value/>
- <tag>OZONE, CONTAINER, STORAGE, MANAGEMENT</tag>
- <description>Determines where on the local filesystem HDDS data will be
- stored. Defaults to dfs.datanode.data.dir if not specified.
- The directories should be tagged with corresponding storage types
- ([SSD]/[DISK]/[ARCHIVE]/[RAM_DISK]) for storage policies. The default
- storage type will be DISK if the directory does not have a storage type
- tagged explicitly.
- </description>
- </property>
- <property>
- <name>hdds.datanode.volume.choosing.policy</name>
- <value/>
- <tag>OZONE, CONTAINER, STORAGE, MANAGEMENT</tag>
- <description>
- The class name of the policy for choosing volumes in the list of
- directories. Defaults to
- org.apache.hadoop.ozone.container.common.volume.RoundRobinVolumeChoosingPolicy.
- This volume choosing policy selects volumes in a round-robin order.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.enabled</name>
- <value>false</value>
- <tag>OZONE, MANAGEMENT, PIPELINE, RATIS</tag>
- <description>Ozone supports different kinds of replication pipelines. Ratis
- is one of
- the replication pipeline supported by ozone.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.ipc</name>
- <value>9858</value>
- <tag>OZONE, CONTAINER, PIPELINE, RATIS, MANAGEMENT</tag>
- <description>The ipc port number of container.</description>
- </property>
- <property>
- <name>dfs.container.ratis.ipc.random.port</name>
- <value>false</value>
- <tag>OZONE,DEBUG</tag>
- <description>Allocates a random free port for ozone ratis port for the
- container. This
- is used only while running unit tests.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.rpc.type</name>
- <value>GRPC</value>
- <tag>OZONE, RATIS, MANAGEMENT</tag>
- <description>Ratis supports different kinds of transports like netty, GRPC,
- Hadoop RPC
- etc. This picks one of those for this cluster.
- </description>
- </property>
- <property>
- <name>dfs.ratis.snapshot.threshold</name>
- <value>10000</value>
- <tag>OZONE, RATIS</tag>
- <description>Number of transactions after which a ratis snapshot should be
- taken.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.num.write.chunk.threads</name>
- <value>60</value>
- <tag>OZONE, RATIS, PERFORMANCE</tag>
- <description>Maximum number of threads in the thread pool that Ratis
- will use for writing chunks (60 by default).
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.replication.level</name>
- <value>MAJORITY</value>
- <tag>OZONE, RATIS</tag>
- <description>Replication level to be used by datanode for submitting a
- container command to ratis. Available replication levels are ALL and
- MAJORTIY, MAJORITY is used as the default replication level.
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.num.container.op.executors</name>
- <value>10</value>
- <tag>OZONE, RATIS, PERFORMANCE</tag>
- <description>Number of executors that will be used by Ratis to execute
- container ops.(10 by default).
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.segment.size</name>
- <value>1MB</value>
- <tag>OZONE, RATIS, PERFORMANCE</tag>
- <description>The size of the raft segment used by Apache Ratis on datanodes.
- (1 MB by default)
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.segment.preallocated.size</name>
- <value>16KB</value>
- <tag>OZONE, RATIS, PERFORMANCE</tag>
- <description>The size of the buffer which is preallocated for raft segment
- used by Apache Ratis on datanodes.(16 KB by default)
- </description>
- </property>
- <property>
- <name>dfs.container.ratis.statemachine.cache.expiry.interval</name>
- <value>10s</value>
- <tag>OZONE, RATIS, PERFORMANCE</tag>
- <description>The interval till which the stateMachine data in ratis
- will be cached inside the ContainerStateMachine.
- </description>
- </property>
- <property>
- <name>dfs.ratis.client.request.timeout.duration</name>
- <value>3s</value>
- <tag>OZONE, RATIS, MANAGEMENT</tag>
- <description>The timeout duration for ratis client request.It should be
- set greater than leader election timeout in Ratis.
- </description>
- </property>
- <property>
- <name>dfs.ratis.client.request.max.retries</name>
- <value>180</value>
- <tag>OZONE, RATIS, MANAGEMENT</tag>
- <description>Number of retries for ratis client request.</description>
- </property>
- <property>
- <name>dfs.ratis.client.request.retry.interval</name>
- <value>1000ms</value>
- <tag>OZONE, RATIS, MANAGEMENT</tag>
- <description>Interval between successive retries for a ratis client request.
- </description>
- </property>
- <property>
- <name>dfs.ratis.server.retry-cache.timeout.duration</name>
- <value>600000ms</value>
- <tag>OZONE, RATIS, MANAGEMENT</tag>
- <description>Retry Cache entry timeout for ratis server.</description>
- </property>
- <property>
- <name>dfs.ratis.server.request.timeout.duration</name>
- <value>3s</value>
- <tag>OZONE, RATIS, MANAGEMENT</tag>
- <description>The timeout duration for ratis server request.</description>
- </property>
- <property>
- <name>dfs.ratis.leader.election.minimum.timeout.duration</name>
- <value>1s</value>
- <tag>OZONE, RATIS, MANAGEMENT</tag>
- <description>The minimum timeout duration for ratis leader election.
- Default is 1s.
- </description>
- </property>
- <property>
- <name>dfs.ratis.server.failure.duration</name>
- <value>120s</value>
- <tag>OZONE, RATIS, MANAGEMENT</tag>
- <description>The timeout duration for ratis server failure detection,
- once the threshold has reached, the ratis state machine will be informed
- about the failure in the ratis ring
- </description>
- </property>
- <property>
- <name>hdds.node.report.interval</name>
- <value>60000ms</value>
- <tag>OZONE, CONTAINER, MANAGEMENT</tag>
- <description>Time interval of the datanode to send node report. Each
- datanode periodically send node report to SCM. Unit could be
- defined with postfix (ns,ms,s,m,h,d)</description>
- </property>
- <property>
- <name>hdds.container.report.interval</name>
- <value>60000ms</value>
- <tag>OZONE, CONTAINER, MANAGEMENT</tag>
- <description>Time interval of the datanode to send container report. Each
- datanode periodically send container report to SCM. Unit could be
- defined with postfix (ns,ms,s,m,h,d)</description>
- </property>
- <property>
- <name>hdds.command.status.report.interval</name>
- <value>60000ms</value>
- <tag>OZONE, CONTAINER, MANAGEMENT</tag>
- <description>Time interval of the datanode to send status of command
- execution. Each datanode periodically the execution status of commands
- received from SCM to SCM. Unit could be defined with postfix
- (ns,ms,s,m,h,d)</description>
- </property>
- <property>
- <name>hdds.pipeline.report.interval</name>
- <value>60000ms</value>
- <tag>OZONE, PIPELINE, MANAGEMENT</tag>
- <description>Time interval of the datanode to send pipeline report. Each
- datanode periodically send pipeline report to SCM. Unit could be
- defined with postfix (ns,ms,s,m,h,d)</description>
- </property>
- <property>
- <name>hdds.prometheus.endpoint.enabled</name>
- <value>false</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>Enable prometheus compatible metric page on the HTTP
- servers.
- </description>
- </property>
- <property>
- <name>hdds.profiler.endpoint.enabled</name>
- <value>false</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>Enable /prof java profiler servlet page on HTTP server.
- </description>
- </property>
- <!--Ozone Settings-->
- <property>
- <name>ozone.administrators</name>
- <value/>
- <tag>OZONE, SECURITY</tag>
- <description>Ozone administrator users delimited by the comma.
- If not set, only the user who launches an ozone service will be the admin
- user. This property must be set if ozone services are started by different
- users. Otherwise, the RPC layer will reject calls from other servers which
- are started by users not in the list.
- </description>
- </property>
- <property>
- <name>ozone.block.deleting.container.limit.per.interval</name>
- <value>10</value>
- <tag>OZONE, PERFORMANCE, SCM</tag>
- <description>A maximum number of containers to be scanned by block deleting
- service per
- time interval. The block deleting service spawns a thread to handle block
- deletions in a container. This property is used to throttle the number of
- threads spawned for block deletions.
- </description>
- </property>
- <property>
- <name>ozone.block.deleting.limit.per.task</name>
- <value>1000</value>
- <tag>OZONE, PERFORMANCE, SCM</tag>
- <description>A maximum number of blocks to be deleted by block deleting
- service per
- time interval. This property is used to throttle the actual number of
- block deletions on a data node per container.
- </description>
- </property>
- <property>
- <name>ozone.block.deleting.service.interval</name>
- <value>1m</value>
- <tag>OZONE, PERFORMANCE, SCM</tag>
- <description>Time interval of the block deleting service.
- The block deleting service runs on each datanode periodically and
- deletes blocks queued for deletion. Unit could be defined with
- postfix (ns,ms,s,m,h,d)
- </description>
- </property>
- <property>
- <name>ozone.block.deleting.service.timeout</name>
- <value>300000ms</value>
- <tag>OZONE, PERFORMANCE, SCM</tag>
- <description>A timeout value of block deletion service. If this is set
- greater than 0,
- the service will stop waiting for the block deleting completion after this
- time. If timeout happens to a large proportion of block deletion, this
- needs to be increased with ozone.block.deleting.limit.per.task. This
- setting supports multiple time unit suffixes as described in
- dfs.heartbeat.interval. If no suffix is specified, then milliseconds is
- assumed.
- </description>
- </property>
- <property>
- <name>ozone.UnsafeByteOperations.enabled</name>
- <value>true</value>
- <tag>OZONE, PERFORMANCE, CLIENT</tag>
- <description>It specifies whether to use unsafe or safe buffer to byteString
- copy.
- </description>
- </property>
- <property>
- <name>ozone.client.connection.timeout</name>
- <value>5000ms</value>
- <tag>OZONE, PERFORMANCE, CLIENT</tag>
- <description>Connection timeout for Ozone client in milliseconds.
- </description>
- </property>
- <property>
- <name>ozone.client.stream.buffer.flush.size</name>
- <value>64MB</value>
- <tag>OZONE, CLIENT</tag>
- <description>Size which determines at what buffer position , a partial
- flush will be initiated during write. It should be ideally a multiple
- of chunkSize.
- </description>
- </property>
- <property>
- <name>ozone.client.stream.buffer.max.size</name>
- <value>128MB</value>
- <tag>OZONE, CLIENT</tag>
- <description>Size which determines at what buffer position,
- write call be blocked till acknowledgement of the first partial flush
- happens by all servers.
- </description>
- </property>
- <property>
- <name>ozone.client.watch.request.timeout</name>
- <value>30s</value>
- <tag>OZONE, CLIENT</tag>
- <description>Timeout for the watch API in Ratis client to acknowledge
- a particular request getting replayed to all servers.
- </description>
- </property>
- <property>
- <name>ozone.client.max.retries</name>
- <value>100</value>
- <tag>OZONE, CLIENT</tag>
- <description>Maximum number of retries by Ozone Client on encountering
- exception while writing a key.
- </description>
- </property>
- <property>
- <name>ozone.client.retry.interval</name>
- <value>0ms</value>
- <tag>OZONE, CLIENT</tag>
- <description>Indicates the time duration a client will wait before
- retrying a write key request on encountering an exception. By default
- there is no wait.
- </description>
- </property>
- <property>
- <name>ozone.client.protocol</name>
- <value>org.apache.hadoop.ozone.client.rpc.RpcClient</value>
- <tag>OZONE, CLIENT, MANAGEMENT</tag>
- <description>Protocol class to be used by the client to connect to ozone
- cluster.
- The build-in implementation includes:
- org.apache.hadoop.ozone.client.rpc.RpcClient for RPC
- org.apache.hadoop.ozone.client.rest.RestClient for REST
- The default is the RpClient. Please do not change this unless you have a
- very good understanding of what you are doing.
- </description>
- </property>
- <property>
- <name>ozone.client.socket.timeout</name>
- <value>5000ms</value>
- <tag>OZONE, CLIENT</tag>
- <description>Socket timeout for Ozone client. Unit could be defined with
- postfix (ns,ms,s,m,h,d)</description>
- </property>
- <property>
- <name>ozone.enabled</name>
- <value>false</value>
- <tag>OZONE, REQUIRED</tag>
- <description>
- Status of the Ozone Object Storage service is enabled.
- Set to true to enable Ozone.
- Set to false to disable Ozone.
- Unless this value is set to true, Ozone services will not be started in
- the cluster.
- Please note: By default ozone is disabled on a hadoop cluster.
- </description>
- </property>
- <property>
- <name>ozone.key.deleting.limit.per.task</name>
- <value>1000</value>
- <tag>OM, PERFORMANCE</tag>
- <description>
- A maximum number of keys to be scanned by key deleting service
- per time interval in OM. Those keys are sent to delete metadata and
- generate transactions in SCM for next async deletion between SCM
- and DataNode.
- </description>
- </property>
- <property>
- <name>ozone.om.service.ids</name>
- <value></value>
- <tag>OM, HA</tag>
- <description>
- Comma-separated list of OM service Ids.
- If not set, the default value of "om-service-value" is assigned as the
- OM service ID.
- </description>
- </property>
- <property>
- <name>ozone.om.nodes.EXAMPLEOMSERVICEID</name>
- <value></value>
- <tag>OM, HA</tag>
- <description>
- Comma-separated list of OM node Ids for a given OM service ID (eg.
- EXAMPLEOMSERVICEID). The OM service ID should be the value (one of the
- values if there are multiple) set for the parameter ozone.om.service.ids.
- Unique identifiers for each OM Node, delimited by commas. This will be
- used by OzoneManagers in HA setup to determine all the OzoneManagers
- belonging to the same OMservice in the cluster. For example, if you
- used “omService1” as the OM service ID previously, and you wanted to
- use “om1”, “om2” and "om3" as the individual IDs of the OzoneManagers,
- you would configure a property ozone.om.nodes.omService1, and its value
- "om1,om2,om3".
- </description>
- </property>
- <property>
- <name>ozone.om.node.id</name>
- <value></value>
- <tag>OM, HA</tag>
- <description>
- The ID of this OM node. If the OM node ID is not configured it
- is determined automatically by matching the local node's address
- with the configured address.
- If node ID is not deterministic from the configuration, then it is set
- to the OmId from the OM version file.
- </description>
- </property>
- <property>
- <name>ozone.om.address</name>
- <value/>
- <tag>OM, REQUIRED</tag>
- <description>
- The address of the Ozone OM service. This allows clients to discover
- the address of the OM.
- </description>
- </property>
- <property>
- <name>ozone.om.handler.count.key</name>
- <value>20</value>
- <tag>OM, PERFORMANCE</tag>
- <description>
- The number of RPC handler threads for OM service endpoints.
- </description>
- </property>
- <property>
- <name>ozone.om.http-address</name>
- <value>0.0.0.0:9874</value>
- <tag>OM, MANAGEMENT</tag>
- <description>
- The address and the base port where the OM web UI will listen on.
- If the port is 0, then the server will start on a free port. However, it
- is best to specify a well-known port, so it is easy to connect and see
- the OM management UI.
- </description>
- </property>
- <property>
- <name>ozone.om.http-bind-host</name>
- <value>0.0.0.0</value>
- <tag>OM, MANAGEMENT</tag>
- <description>
- The actual address the OM web server will bind to. If this optional
- the address is set, it overrides only the hostname portion of
- ozone.om.http-address.
- </description>
- </property>
- <property>
- <name>ozone.om.http.enabled</name>
- <value>true</value>
- <tag>OM, MANAGEMENT</tag>
- <description>
- Property to enable or disable OM web user interface.
- </description>
- </property>
- <property>
- <name>ozone.om.https-address</name>
- <value>0.0.0.0:9875</value>
- <tag>OM, MANAGEMENT, SECURITY</tag>
- <description>
- The address and the base port where the OM web UI will listen
- on using HTTPS.
- If the port is 0 then the server will start on a free port.
- </description>
- </property>
- <property>
- <name>ozone.om.https-bind-host</name>
- <value>0.0.0.0</value>
- <tag>OM, MANAGEMENT, SECURITY</tag>
- <description>
- The actual address the OM web server will bind to using HTTPS.
- If this optional address is set, it overrides only the hostname portion of
- ozone.om.http-address.
- </description>
- </property>
- <property>
- <name>ozone.om.keytab.file</name>
- <value/>
- <tag>OM, SECURITY</tag>
- <description>
- The keytab file for Kerberos authentication in OM.
- </description>
- </property>
- <property>
- <name>ozone.om.db.cache.size.mb</name>
- <value>128</value>
- <tag>OM, PERFORMANCE</tag>
- <description>
- The size of OM DB cache in MB that used for caching files.
- This value is set to an abnormally low value in the default configuration.
- That is to make unit testing easy. Generally, this value should be set to
- something like 16GB or more, if you intend to use Ozone at scale.
- A large value for this key allows a proportionally larger amount of OM
- metadata to be cached in memory. This makes OM operations faster.
- </description>
- </property>
- <property>
- <name>ozone.om.user.max.volume</name>
- <value>1024</value>
- <tag>OM, MANAGEMENT</tag>
- <description>
- The maximum number of volumes a user can have on a cluster.Increasing or
- decreasing this number has no real impact on ozone cluster. This is
- defined only for operational purposes. Only an administrator can create a
- volume, once a volume is created there are no restrictions on the number
- of buckets or keys inside each bucket a user can create.
- </description>
- </property>
- <property>
- <name>ozone.om.db.dirs</name>
- <value/>
- <tag>OZONE, OM, STORAGE, PERFORMANCE</tag>
- <description>
- Directory where the OzoneManager stores its metadata. This should
- be specified as a single directory. If the directory does not
- exist then the OM will attempt to create it.
- If undefined, then the OM will log a warning and fallback to
- ozone.metadata.dirs. This fallback approach is not recommended for
- production environments.
- </description>
- </property>
- <property>
- <name>ozone.metadata.dirs</name>
- <value/>
- <tag>OZONE, OM, SCM, CONTAINER, STORAGE, REQUIRED</tag>
- <description>
- This setting is the fallback location for SCM, OM, Recon and DataNodes
- to store their metadata. This setting may be used only in test/PoC
- clusters to simplify configuration.
- For production clusters or any time you care about performance, it is
- recommended that ozone.om.db.dirs, ozone.scm.db.dirs and
- dfs.container.ratis.datanode.storage.dir be configured separately.
- </description>
- </property>
- <property>
- <name>ozone.metastore.impl</name>
- <value>RocksDB</value>
- <tag>OZONE, OM, SCM, CONTAINER, STORAGE</tag>
- <description>
- Ozone metadata store implementation. Ozone metadata are well
- distributed to multiple services such as ozoneManager, scm. They are stored in
- some local key-value databases. This property determines which database
- library to use. Supported value is either LevelDB or RocksDB.
- </description>
- </property>
- <property>
- <name>ozone.metastore.rocksdb.statistics</name>
- <value>OFF</value>
- <tag>OZONE, OM, SCM, STORAGE, PERFORMANCE</tag>
- <description>
- The statistics level of the rocksdb store. If you use any value from
- org.rocksdb.StatsLevel (eg. ALL or EXCEPT_DETAILED_TIMERS), the rocksdb
- statistics will be exposed over JMX bean with the choosed setting. Set
- it to OFF to not initialize rocksdb statistics at all. Please note that
- collection of statistics could have 5-10% performance penalty.
- Check the rocksdb documentation for more details.
- </description>
- </property>
- <property>
- <name>ozone.scm.db.dirs</name>
- <value/>
- <tag>OZONE, SCM, STORAGE, PERFORMANCE</tag>
- <description>
- Directory where the StorageContainerManager stores its metadata.
- This should be specified as a single directory. If the directory
- does not exist then the SCM will attempt to create it.
- If undefined, then the SCM will log a warning and fallback to
- ozone.metadata.dirs. This fallback approach is not recommended for
- production environments.
- </description>
- </property>
- <property>
- <name>ozone.scm.block.client.address</name>
- <value/>
- <tag>OZONE, SCM</tag>
- <description>The address of the Ozone SCM block client service. If not
- defined value of ozone.scm.client.address is used.
- </description>
- </property>
- <property>
- <name>ozone.scm.block.client.bind.host</name>
- <value>0.0.0.0</value>
- <tag>OZONE, SCM</tag>
- <description>
- The hostname or IP address used by the SCM block client
- endpoint to bind.
- </description>
- </property>
- <property>
- <name>ozone.scm.block.client.port</name>
- <value>9863</value>
- <tag>OZONE, SCM</tag>
- <description>
- The port number of the Ozone SCM block client service.
- </description>
- </property>
- <property>
- <name>ozone.scm.block.deletion.max.retry</name>
- <value>4096</value>
- <tag>OZONE, SCM</tag>
- <description>
- SCM wraps up many blocks in a deletion transaction and sends that to data
- node for physical deletion periodically. This property determines how many
- times SCM is going to retry sending a deletion operation to the data node.
- </description>
- </property>
- <property>
- <name>ozone.scm.block.size</name>
- <value>256MB</value>
- <tag>OZONE, SCM</tag>
- <description>
- The default size of a scm block. This is maps to the default
- Ozone block size.
- </description>
- </property>
- <property>
- <name>ozone.scm.chunk.size</name>
- <value>16MB</value>
- <tag>OZONE, SCM, CONTAINER, PERFORMANCE</tag>
- <description>
- The chunk size for reading/writing chunk operations in bytes.
- The chunk size defaults to 8MB. If the value configured is more than the
- maximum size (16MB), it will be reset to the maximum size. This maps to
- the network packet sizes and file write operations in the client to
- datanode protocol.
- </description>
- </property>
- <property>
- <name>ozone.scm.client.address</name>
- <value/>
- <tag>OZONE, SCM, REQUIRED</tag>
- <description>
- The address of the Ozone SCM client service. This is a required setting.
- It is a string in the host:port format. The port number is optional
- and defaults to 9860.
- </description>
- </property>
- <property>
- <name>ozone.scm.client.bind.host</name>
- <value>0.0.0.0</value>
- <tag>OZONE, SCM, MANAGEMENT</tag>
- <description>The hostname or IP address used by the SCM client endpoint to
- bind.
- This setting is used by the SCM only and never used by clients.
- The setting can be useful in multi-homed setups to restrict the
- availability of the SCM client service to a specific interface.
- The default is appropriate for most clusters.
- </description>
- </property>
- <property>
- <name>ozone.scm.client.port</name>
- <value>9860</value>
- <tag>OZONE, SCM, MANAGEMENT</tag>
- <description>The port number of the Ozone SCM client service.</description>
- </property>
- <property>
- <name>ozone.scm.keyvalue.container.deletion-choosing.policy</name>
- <value>
- org.apache.hadoop.ozone.container.common.impl.TopNOrderedContainerDeletionChoosingPolicy
- </value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The policy used for choosing desired keyvalue containers for block deletion.
- Datanode selects some containers to process block deletion
- in a certain interval defined by ozone.block.deleting.service.interval.
- The number of containers to process in each interval is defined
- by ozone.block.deleting.container.limit.per.interval. This property is
- used to configure the policy applied while selecting containers.
- There are two policies supporting now:
- RandomContainerDeletionChoosingPolicy and
- TopNOrderedContainerDeletionChoosingPolicy.
- org.apache.hadoop.ozone.container.common.impl.RandomContainerDeletionChoosingPolicy
- implements a simply random policy that to return a random list of
- containers.
- org.apache.hadoop.ozone.container.common.impl.TopNOrderedContainerDeletionChoosingPolicy
- implements a policy that choosing top count number of containers in a
- pending-deletion-blocks's num
- based descending order.
- </description>
- </property>
- <property>
- <name>ozone.scm.container.placement.impl</name>
- <value>
- org.apache.hadoop.hdds.scm.container.placement.algorithms.SCMContainerPlacementRackAware
- </value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The full name of class which implements org.apache.hadoop.hdds.scm.container.placement.algorithms.ContainerPlacementPolicy.
- The class decides which datanode will be used to host the container replica. If not set,
- org.apache.hadoop.hdds.scm.container.placement.algorithms.SCMContainerPlacementRackAware will be used as default value.
- </description>
- </property>
- <property>
- <name>ozone.scm.pipeline.owner.container.count</name>
- <value>3</value>
- <tag>OZONE, SCM, PIPELINE</tag>
- <description>Number of containers per owner in a pipeline.
- </description>
- </property>
- <property>
- <name>ozone.scm.container.size</name>
- <value>5GB</value>
- <tag>OZONE, PERFORMANCE, MANAGEMENT</tag>
- <description>
- Default container size used by Ozone.
- There are two considerations while picking this number. The speed at which
- a container can be replicated, determined by the network speed and the
- metadata that each container generates. So selecting a large number
- creates less SCM metadata, but recovery time will be more. 5GB is a number
- that maps to quick replication times in gigabit networks, but still
- balances the amount of metadata.
- </description>
- </property>
- <property>
- <name>ozone.scm.datanode.address</name>
- <value/>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The address of the Ozone SCM service used for internal
- communication between the DataNodes and the SCM.
- It is a string in the host:port format. The port number is optional
- and defaults to 9861.
- This setting is optional. If unspecified then the hostname portion
- is picked from the ozone.scm.client.address setting and the
- default service port of 9861 is chosen.
- </description>
- </property>
- <property>
- <name>ozone.scm.datanode.bind.host</name>
- <value/>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The hostname or IP address used by the SCM service endpoint to
- bind.
- </description>
- </property>
- <property>
- <name>ozone.scm.datanode.id.dir</name>
- <value/>
- <tag>OZONE, MANAGEMENT</tag>
- <description>The path that datanodes will use to store the datanode ID.
- If this value is not set, then datanode ID is created under the
- metadata directory.
- </description>
- </property>
- <property>
- <name>ozone.scm.datanode.port</name>
- <value>9861</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The port number of the Ozone SCM service.
- </description>
- </property>
- <property>
- <name>ozone.scm.db.cache.size.mb</name>
- <value>128</value>
- <tag>OZONE, PERFORMANCE</tag>
- <description>SCM keeps track of the Containers in the cluster. This DB holds
- the container metadata. This value is set to a small value to make the
- unit
- testing runs smooth. In production, we recommend a value of 16GB or
- higher. This allows SCM to avoid disk I/O's while looking up the container
- location.
- </description>
- </property>
- <property>
- <name>ozone.scm.dead.node.interval</name>
- <value>10m</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The interval between heartbeats before a node is tagged as dead.
- </description>
- </property>
- <property>
- <name>ozone.scm.handler.count.key</name>
- <value>10</value>
- <tag>OZONE, MANAGEMENT, PERFORMANCE</tag>
- <description>
- The number of RPC handler threads for each SCM service
- endpoint.
- The default is appropriate for small clusters (tens of nodes).
- Set a value that is appropriate for the cluster size. Generally, HDFS
- recommends RPC handler count is set to 20 * log2(Cluster Size) with an
- upper limit of 200. However, SCM will not have the same amount of
- traffic as Namenode, so a value much smaller than that will work well too.
- </description>
- </property>
- <property>
- <name>hdds.heartbeat.interval</name>
- <value>30s</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The heartbeat interval from a data node to SCM. Yes,
- it is not three but 30, since most data nodes will heart beating via Ratis
- heartbeats. If a client is not able to talk to a data node, it will notify
- OM/SCM eventually. So a 30 second HB seems to work. This assumes that
- replication strategy used is Ratis if not, this value should be set to
- something smaller like 3 seconds.
- ozone.scm.pipeline.close.timeout should also be adjusted accordingly,
- if the default value for this config is not used.
- </description>
- </property>
- <property>
- <name>ozone.scm.heartbeat.log.warn.interval.count</name>
- <value>10</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- Defines how frequently we will log the missing of a heartbeat to SCM.
- For example in the default case, we will write a warning message for each
- ten consecutive heartbeats that we miss to SCM. This helps in reducing
- clutter in a data node log, but trade off is that logs will have less of
- this statement.
- </description>
- </property>
- <property>
- <name>ozone.scm.heartbeat.rpc-timeout</name>
- <value>1s</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- Timeout value for the RPC from Datanode to SCM.
- </description>
- </property>
- <property>
- <name>ozone.scm.heartbeat.thread.interval</name>
- <value>3s</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- When a heartbeat from the data node arrives on SCM, It is queued for
- processing with the time stamp of when the heartbeat arrived. There is a
- heartbeat processing thread inside SCM that runs at a specified interval.
- This value controls how frequently this thread is run.
- There are some assumptions build into SCM such as this value should allow
- the heartbeat processing thread to run at least three times more
- frequently than heartbeats and at least five times more than stale node
- detection time. If you specify a wrong value, SCM will gracefully refuse
- to run. For more info look at the node manager tests in SCM.
- In short, you don't need to change this.
- </description>
- </property>
- <property>
- <name>ozone.scm.http-address</name>
- <value>0.0.0.0:9876</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The address and the base port where the SCM web ui will listen on.
- If the port is 0 then the server will start on a free port.
- </description>
- </property>
- <property>
- <name>ozone.scm.http-bind-host</name>
- <value>0.0.0.0</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The actual address the SCM web server will bind to. If this
- optional address is set, it overrides only the hostname portion of
- ozone.scm.http-address.
- </description>
- </property>
- <property>
- <name>ozone.scm.http.enabled</name>
- <value>true</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- Property to enable or disable SCM web ui.
- </description>
- </property>
- <property>
- <name>ozone.scm.https-address</name>
- <value>0.0.0.0:9877</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The address and the base port where the SCM web UI will listen
- on using HTTPS.
- If the port is 0 then the server will start on a free port.
- </description>
- </property>
- <property>
- <name>ozone.scm.https-bind-host</name>
- <value>0.0.0.0</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The actual address the SCM web server will bind to using HTTPS.
- If this optional address is set, it overrides only the hostname portion of
- ozone.scm.http-address.
- </description>
- </property>
- <property>
- <name>ozone.scm.names</name>
- <value/>
- <tag>OZONE, REQUIRED</tag>
- <description>
- The value of this property is a set of DNS | DNS:PORT | IP
- Address | IP:PORT. Written as a comma separated string. e.g. scm1,
- scm2:8020, 7.7.7.7:7777.
- This property allows datanodes to discover where SCM is, so that
- datanodes can send heartbeat to SCM.
- </description>
- </property>
- <property>
- <name>ozone.scm.stale.node.interval</name>
- <value>5m</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The interval for stale node flagging. Please
- see ozone.scm.heartbeat.thread.interval before changing this value.
- </description>
- </property>
- <property>
- <name>ozone.trace.enabled</name>
- <value>false</value>
- <tag>OZONE, DEBUG</tag>
- <description>
- Setting this flag to true dumps the HTTP request/ response in
- the logs. Very useful when debugging REST protocol.
- </description>
- </property>
- <!--Client Settings-->
- <property>
- <name>scm.container.client.idle.threshold</name>
- <value>10s</value>
- <tag>OZONE, PERFORMANCE</tag>
- <description>
- In the standalone pipelines, the SCM clients use netty to
- communicate with the container. It also uses connection pooling to
- reduce client side overheads. This allows a connection to stay idle for
- a while before the connection is closed.
- </description>
- </property>
- <property>
- <name>scm.container.client.max.size</name>
- <value>256</value>
- <tag>OZONE, PERFORMANCE</tag>
- <description>
- Controls the maximum number of connections that we cached via
- clientconnection pooling. If the number of connection
- exceed this count then the oldest idle connection is evicted.
- </description>
- </property>
- <property>
- <name>scm.container.client.max.outstanding.requests</name>
- <value>100</value>
- <tag>OZONE, PERFORMANCE</tag>
- <description>
- Controls the maximum number of outstanding async requests that can be
- handled by the Standalone as well as Ratis client.
- </description>
- </property>
- <property>
- <name>ozone.scm.container.creation.lease.timeout</name>
- <value>60s</value>
- <tag>OZONE, SCM</tag>
- <description>
- Container creation timeout in milliseconds to be used by SCM. When
- BEGIN_CREATE event happens the container is moved from ALLOCATED to
- CREATING state, SCM will now wait for the configured amount of time
- to get COMPLETE_CREATE event if it doesn't receive it will move the
- container to DELETING.
- </description>
- </property>
- <property>
- <name>ozone.key.preallocation.max.blocks</name>
- <value>64</value>
- <tag>OZONE, OM, PERFORMANCE</tag>
- <description>
- While allocating blocks from OM, this configuration limits the maximum
- number of blocks being allocated. This configuration ensures that the
- allocated block response do not exceed rpc payload limit. If client needs
- more space for the write, separate block allocation requests will be made.
- </description>
- </property>
- <property>
- <name>ozone.client.list.cache</name>
- <value>1000</value>
- <tag>OZONE, PERFORMANCE</tag>
- <description>
- Configuration property to configure the cache size of client list calls.
- </description>
- </property>
- <property>
- <name>ozone.replication</name>
- <value>3</value>
- <tag>OZONE, CLIENT</tag>
- <description>
- Default replication value. The actual number of replications can be
- specified when writing the key. The default is used if replication
- is not specified. Supported values: 1 and 3.
- </description>
- </property>
- <property>
- <name>ozone.replication.type</name>
- <value>RATIS</value>
- <tag>OZONE, CLIENT</tag>
- <description>
- Default replication type to be used while writing key into ozone. The
- value can be specified when writing the key, default is used when
- nothing is specified. Supported values: RATIS, STAND_ALONE and CHAINED.
- </description>
- </property>
- <property>
- <name>hdds.container.close.threshold</name>
- <value>0.9f</value>
- <tag>OZONE, DATANODE</tag>
- <description>
- This determines the threshold to be used for closing a container.
- When the container used percentage reaches this threshold,
- the container will be closed. Value should be a positive, non-zero
- percentage in float notation (X.Yf), with 1.0f meaning 100%.
- </description>
- </property>
- <property>
- <name>ozone.rest.client.http.connection.max</name>
- <value>100</value>
- <tag>OZONE, CLIENT</tag>
- <description>
- This defines the overall connection limit for the connection pool used in
- RestClient.
- </description>
- </property>
- <property>
- <name>ozone.rest.client.http.connection.per-route.max</name>
- <value>20</value>
- <tag>OZONE, CLIENT</tag>
- <description>
- This defines the connection limit per one HTTP route/host. Total max
- connection is limited by ozone.rest.client.http.connection.max property.
- </description>
- </property>
- <property>
- <name>ozone.open.key.cleanup.service.interval.seconds</name>
- <value>86400</value>
- <tag>OZONE, OM, PERFORMANCE</tag>
- <description>
- A background job periodically checks open key entries and delete the expired ones. This entry controls the
- interval of this cleanup check.
- </description>
- </property>
- <property>
- <name>ozone.open.key.expire.threshold</name>
- <value>86400</value>
- <tag>OZONE, OM, PERFORMANCE</tag>
- <description>
- Controls how long an open key operation is considered active. Specifically, if a key
- has been open longer than the value of this config entry, that open key is considered as
- expired (e.g. due to client crash). Default to 24 hours.
- </description>
- </property>
- <property>
- <name>hadoop.tags.custom</name>
- <value>OZONE,MANAGEMENT,SECURITY,PERFORMANCE,DEBUG,CLIENT,SERVER,OM,SCM,
- CRITICAL,RATIS,CONTAINER,REQUIRED,REST,STORAGE,PIPELINE,STANDALONE,S3GATEWAY,RECON</value>
- </property>
- <property>
- <name>ozone.tags.system</name>
- <value>OZONE,MANAGEMENT,SECURITY,PERFORMANCE,DEBUG,CLIENT,SERVER,OM,SCM,
- CRITICAL,RATIS,CONTAINER,REQUIRED,REST,STORAGE,PIPELINE,STANDALONE,S3GATEWAY,TOKEN,TLS,RECON</value>
- </property>
- <property>
- <name>hdds.rest.rest-csrf.enabled</name>
- <value>false</value>
- <description>
- If true, then enables Object Store REST server protection against
- cross-site request forgery (CSRF).
- </description>
- </property>
- <property>
- <name>hdds.rest.http-address</name>
- <value>0.0.0.0:9880</value>
- <description>The http address of Object Store REST server inside the
- datanode.</description>
- </property>
- <property>
- <name>hdds.rest.netty.high.watermark</name>
- <value>65535</value>
- <description>
- High watermark configuration to Netty for Object Store REST server.
- </description>
- </property>
- <property>
- <name>hdds.rest.netty.low.watermark</name>
- <value>32768</value>
- <description>
- Low watermark configuration to Netty for Object Store REST server.
- </description>
- </property>
- <property>
- <name>hdds.datanode.plugins</name>
- <value>org.apache.hadoop.ozone.web.OzoneHddsDatanodeService</value>
- <description>
- Comma-separated list of HDDS datanode plug-ins to be activated when
- HDDS service starts as part of datanode.
- </description>
- </property>
- <property>
- <name>hdds.datanode.storage.utilization.warning.threshold</name>
- <value>0.75</value>
- <tag>OZONE, SCM, MANAGEMENT</tag>
- <description>
- If a datanode overall storage utilization exceeds more than this
- value, a warning will be logged while processing the nodeReport in SCM.
- </description>
- </property>
- <property>
- <name>hdds.datanode.storage.utilization.critical.threshold</name>
- <value>0.95</value>
- <tag>OZONE, SCM, MANAGEMENT</tag>
- <description>
- If a datanode overall storage utilization exceeds more than this
- value, the datanode will be marked out of space.
- </description>
- </property>
- <property>
- <name>hdds.command.status.report.interval</name>
- <value>30s</value>
- <tag>OZONE, DATANODE, MANAGEMENT</tag>
- <description>Time interval of the datanode to send status of commands
- executed since last report. Unit could be defined with
- postfix (ns,ms,s,m,h,d)</description>
- </property>
- <property>
- <name>ozone.scm.pipeline.destroy.timeout</name>
- <value>66s</value>
- <tag>OZONE, SCM, PIPELINE</tag>
- <description>
- Once a pipeline is closed, SCM should wait for the above configured time
- before destroying a pipeline.
- </description>
- </property>
- <property>
- <name>ozone.scm.pipeline.creation.interval</name>
- <value>120s</value>
- <tag>OZONE, SCM, PIPELINE</tag>
- <description>
- SCM schedules a fixed interval job using the configured interval to
- create pipelines.
- </description>
- </property>
- <property>
- <name>hdds.scm.safemode.threshold.pct</name>
- <value>0.99</value>
- <tag>HDDS,SCM,OPERATION</tag>
- <description> % of containers which should have at least one
- reported replica before SCM comes out of safe mode.
- </description>
- </property>
- <property>
- <name>hdds.scm.wait.time.after.safemode.exit</name>
- <value>5m</value>
- <tag>HDDS,SCM,OPERATION</tag>
- <description> After exiting safemode, wait for configured interval of
- time to start replication monitor and cleanup activities of unhealthy
- pipelines.
- </description>
- </property>
- <property>
- <name>hdds.scm.safemode.enabled</name>
- <value>true</value>
- <tag>HDDS,SCM,OPERATION</tag>
- <description>Boolean value to enable or disable SCM safe mode.
- </description>
- </property>
- <property>
- <name>hdds.scm.safemode.min.datanode</name>
- <value>1</value>
- <tag>HDDS,SCM,OPERATION</tag>
- <description>Minimum DataNodes which should be registered to get SCM out of
- safe mode.
- </description>
- </property>
- <property>
- <name>hdds.scm.safemode.pipeline-availability.check</name>
- <value>false</value>
- <tag>HDDS,SCM,OPERATION</tag>
- <description>
- Boolean value to enable pipeline availability check during SCM safe mode.
- </description>
- </property>
- <property>
- <name>hdds.scm.safemode.healthy.pipelie.pct</name>
- <value>0.10</value>
- <tag>HDDS,SCM,OPERATION</tag>
- <description>
- Percentage of healthy pipelines, where all 3 datanodes are reported in the
- pipeline.
- </description>
- </property>
- <property>
- <name>hdds.scm.safemode.atleast.one.node.reported.pipeline.pct</name>
- <value>0.90</value>
- <tag>HDDS,SCM,OPERATION</tag>
- <description>
- Percentage of pipelines, where at least one datanode is reported in the
- pipeline.
- </description>
- </property>
- <property>
- <name>hdds.containerscrub.enabled</name>
- <value>false</value>
- <tag>DATANODE</tag>
- <description>
- Boolean value to enable data and metadata scrubbing in the containers
- running on each datanode.
- </description>
- </property>
- <property>
- <name>hdds.container.action.max.limit</name>
- <value>20</value>
- <tag>DATANODE</tag>
- <description>
- Maximum number of Container Actions sent by the datanode to SCM in a
- single heartbeat.
- </description>
- </property>
- <property>
- <name>hdds.pipeline.action.max.limit</name>
- <value>20</value>
- <tag>DATANODE</tag>
- <description>
- Maximum number of Pipeline Actions sent by the datanode to SCM in a
- single heartbeat.
- </description>
- </property>
- <property>
- <name>hdds.scm.watcher.timeout</name>
- <value>10m</value>
- <tag>OZONE, SCM, MANAGEMENT</tag>
- <description>
- Timeout for the watchers of the HDDS SCM CommandWatchers. After this
- duration the Copy/Delete container commands will be sent again to the
- datanode unless the datanode confirms the completion.
- </description>
- </property>
- <property>
- <name>hdds.db.profile</name>
- <value>DISK</value>
- <tag>OZONE, OM, PERFORMANCE</tag>
- <description>This property allows user to pick a configuration
- that tunes the RocksDB settings for the hardware it is running
- on. Right now, we have SSD and DISK as profile options.</description>
- </property>
- <property>
- <name>hdds.datanode.replication.work.dir</name>
- <tag>DATANODE</tag>
- <description>Temporary which is used during the container replication
- betweeen datanodes. Should have enough space to store multiple container
- (in compressed format), but doesn't require fast io access such as SSD.
- </description>
- </property>
- <property>
- <name>hdds.lock.max.concurrency</name>
- <value>100</value>
- <tag>HDDS</tag>
- <description>Locks in HDDS/Ozone uses object pool to maintain active locks
- in the system, this property defines the max limit for the locks that
- will be maintained in the pool.
- </description>
- </property>
- <property>
- <name>ozone.s3g.authentication.kerberos.principal</name>
- <value/>
- <tag>OZONE, S3GATEWAY</tag>
- <description>The server principal used by Ozone S3Gateway server. This is
- typically set to
- HTTP/_HOST@REALM.TLD The SPNEGO server principal begins with the prefix
- HTTP/ by convention.</description>
- </property>
- <property>
- <name>ozone.s3g.domain.name</name>
- <value/>
- <tag>OZONE, S3GATEWAY</tag>
- <description>List of Ozone S3Gateway domain names. If multiple
- domain names to be provided, they should be a "," seperated.
- This parameter is only required when virtual host style pattern is
- followed.</description>
- </property>
- <property>
- <name>ozone.s3g.http-address</name>
- <value>0.0.0.0:9878</value>
- <tag>OZONE, S3GATEWAY</tag>
- <description>The address and the base port where the Ozone S3Gateway
- Server will
- listen on.</description>
- </property>
- <property>
- <name>ozone.s3g.http-bind-host</name>
- <value>0.0.0.0</value>
- <tag>OZONE, S3GATEWAY</tag>
- <description>The actual address the HTTP server will bind to. If this optional address
- is set, it overrides only the hostname portion of ozone.s3g.http-address.
- This is useful for making the Ozone S3Gateway HTTP server listen on all
- interfaces by setting it to 0.0.0.0.</description>
- </property>
- <property>
- <name>ozone.s3g.http.enabled</name>
- <value>true</value>
- <tag>OZONE, S3GATEWAY</tag>
- <description>The boolean which enables the Ozone S3Gateway server
- .</description>
- </property>
- <property>
- <name>ozone.s3g.https-address</name>
- <value/>
- <tag>OZONE, S3GATEWAY</tag>
- <description>Ozone S3Gateway serverHTTPS server address and port
- .</description>
- </property>
- <property>
- <name>ozone.s3g.https-bind-host</name>
- <value/>
- <tag>OZONE, S3GATEWAY</tag>
- <description>The actual address the HTTPS server will bind to. If this optional address
- is set, it overrides only the hostname portion of ozone.s3g.https-address.
- This is useful for making the Ozone S3Gateway HTTPS server listen on all
- interfaces by setting it to 0.0.0.0.</description>
- </property>
- <property>
- <name>ozone.s3g.keytab.file</name>
- <value/>
- <tag>OZONE, S3GATEWAY</tag>
- <description>The keytab file used by the S3Gateway server to login as its
- service principal. </description>
- </property>
- <property>
- <name>ozone.om.save.metrics.interval</name>
- <value>5m</value>
- <tag>OZONE, OM</tag>
- <description>Time interval used to store the omMetrics in to a
- file. Background thread perodically stores the OM metrics in to a
- file. Unit could be defined with postfix (ns,ms,s,m,h,d)
- </description>
- </property>
- <property>
- <name>ozone.security.enabled</name>
- <value>false</value>
- <tag> OZONE, SECURITY</tag>
- <description>True if security is enabled for ozone. When this property is
- true, hadoop.security.authentication should be Kerberos.
- </description>
- </property>
- <property>
- <name>ozone.client.checksum.type</name>
- <value>CRC32</value>
- <tag>OZONE, CLIENT, MANAGEMENT</tag>
- <description>The checksum type [NONE/ CRC32/ CRC32C/ SHA256/ MD5] determines
- which algorithm would be used to compute checksum for chunk data.
- Default checksum type is SHA256.
- </description>
- </property>
- <property>
- <name>ozone.client.bytes.per.checksum</name>
- <value>1MB</value>
- <tag>OZONE, CLIENT, MANAGEMENT</tag>
- <description>Checksum will be computed for every bytes per checksum number
- of bytes and stored sequentially. The minimum value for this config is
- 256KB.
- </description>
- </property>
- <property>
- <name>ozone.client.verify.checksum</name>
- <value>true</value>
- <tag>OZONE, CLIENT, MANAGEMENT</tag>
- <description>
- Ozone client to verify checksum of the checksum blocksize data.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.enable</name>
- <value>false</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>Property to enable or disable Ratis server on OM.
- Please note - this is a temporary property to disable OM Ratis server.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.port</name>
- <value>9872</value>
- <tag>OZONE, OM, RATIS</tag>
- <description>
- The port number of the OzoneManager's Ratis server.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.rpc.type</name>
- <value>GRPC</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>Ratis supports different kinds of transports like netty, GRPC,
- Hadoop RPC etc. This picks one of those for this cluster.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.storage.dir</name>
- <value/>
- <tag>OZONE, OM, STORAGE, MANAGEMENT, RATIS</tag>
- <description>This directory is used for storing OM's Ratis metadata like
- logs. If this is not set then default metadata dirs is used. A warning
- will be logged if this not set. Ideally, this should be mapped to a
- fast disk like an SSD.
- If undefined, OM ratis storage dir will fallback to ozone.metadata.dirs.
- This fallback approach is not recommended for production environments.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.segment.size</name>
- <value>16KB</value>
- <tag>OZONE, OM, RATIS, PERFORMANCE</tag>
- <description>The size of the raft segment used by Apache Ratis on OM.
- (16 KB by default)
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.segment.preallocated.size</name>
- <value>16KB</value>
- <tag>OZONE, OM, RATIS, PERFORMANCE</tag>
- <description>The size of the buffer which is preallocated for raft segment
- used by Apache Ratis on OM.(16 KB by default)
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.log.appender.queue.num-elements</name>
- <value>1024</value>
- <tag>OZONE, DEBUG, OM, RATIS</tag>
- <description>Number of operation pending with Raft's Log Worker.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.log.appender.queue.byte-limit</name>
- <value>32MB</value>
- <tag>OZONE, DEBUG, OM, RATIS</tag>
- <description>Byte limit for Raft's Log Worker queue.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.snapshot.auto.trigger.threshold</name>
- <value>400000</value>
- <tag>OZONE, DEBUG, OM, RATIS</tag>
- <description>The log index threshold after ratis will auto trigger
- snapshot on the OM state machine.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.server.request.timeout</name>
- <value>3s</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>The timeout duration for OM's ratis server request .</description>
- </property>
- <property>
- <name>ozone.om.ratis.server.retry.cache.timeout</name>
- <value>600000ms</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>Retry Cache entry timeout for OM's ratis server.</description>
- </property>
- <property>
- <name>ozone.om.ratis.minimum.timeout</name>
- <value>1s</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>The minimum timeout duration for OM's Ratis server rpc.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.client.request.timeout.duration</name>
- <value>3s</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>The timeout duration for OM Ratis client request.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.client.request.max.retries</name>
- <value>180</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>Number of retries for OM client request.</description>
- </property>
- <property>
- <name>ozone.om.ratis.client.request.retry.interval</name>
- <value>100ms</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>Interval between successive retries for a OM client request.
- </description>
- </property>
- <property>
- <name>ozone.om.leader.election.minimum.timeout.duration</name>
- <value>1s</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>The minimum timeout duration for OM ratis leader election.
- Default is 1s.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.server.failure.timeout.duration</name>
- <value>120s</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>The timeout duration for ratis server failure detection,
- once the threshold has reached, the ratis state machine will be informed
- about the failure in the ratis ring.
- </description>
- </property>
- <property>
- <name>ozone.om.ratis.server.role.check.interval</name>
- <value>15s</value>
- <tag>OZONE, OM, RATIS, MANAGEMENT</tag>
- <description>The interval between OM leader performing a role
- check on its ratis server. Ratis server informs OM if it
- loses the leader role. The scheduled check is an secondary
- check to ensure that the leader role is updated periodically
- .</description>
- </property>
- <property>
- <name>ozone.om.ratis.snapshot.dir</name>
- <value/>
- <tag>OZONE, OM, STORAGE, MANAGEMENT, RATIS</tag>
- <description>This directory is used for storing OM's snapshot
- related files like the ratisSnapshotIndex and DB checkpoint from leader
- OM.
- If undefined, OM snapshot dir will fallback to ozone.om.ratis.storage.dir.
- This fallback approach is not recommended for production environments.
- </description>
- </property>
- <property>
- <name>ozone.om.snapshot.provider.socket.timeout</name>
- <value>5000s</value>
- <tag>OZONE, OM, HA, MANAGEMENT</tag>
- <description>
- Socket timeout for HTTP call made by OM Snapshot Provider to request
- OM snapshot from OM Leader.
- </description>
- </property>
- <property>
- <name>ozone.om.snapshot.provider.connection.timeout</name>
- <value>5000s</value>
- <tag>OZONE, OM, HA, MANAGEMENT</tag>
- <description>
- Connection timeout for HTTP call made by OM Snapshot Provider to request
- OM snapshot from OM Leader.
- </description>
- </property>
- <property>
- <name>ozone.om.snapshot.provider.request.timeout</name>
- <value>5000ms</value>
- <tag>OZONE, OM, HA, MANAGEMENT</tag>
- <description>
- Connection request timeout for HTTP call made by OM Snapshot Provider to
- request OM snapshot from OM Leader.
- </description>
- </property>
- <property>
- <name>ozone.acl.authorizer.class</name>
- <value>org.apache.hadoop.ozone.security.acl.OzoneAccessAuthorizer</value>
- <tag>OZONE, SECURITY, ACL</tag>
- <description>Acl authorizer for Ozone.
- </description>
- </property>
- <property>
- <name>ozone.acl.enabled</name>
- <value>false</value>
- <tag>OZONE, SECURITY, ACL</tag>
- <description>Key to enable/disable ozone acls.</description>
- </property>
- <property>
- <name>hdds.scm.kerberos.keytab.file</name>
- <value></value>
- <tag> OZONE, SECURITY</tag>
- <description> The keytab file used by each SCM daemon to login as its
- service principal. The principal name is configured with
- hdds.scm.kerberos.principal.
- </description>
- </property>
- <property>
- <name>hdds.scm.kerberos.principal</name>
- <value></value>
- <tag> OZONE, SECURITY</tag>
- <description>The SCM service principal. Ex scm/_HOST@REALM.COM</description>
- </property>
- <property>
- <name>ozone.om.kerberos.keytab.file</name>
- <value></value>
- <tag> OZONE, SECURITY</tag>
- <description> The keytab file used by OzoneManager daemon to login as its
- service principal. The principal name is configured with
- ozone.om.kerberos.principal.
- </description>
- </property>
- <property>
- <name>ozone.om.kerberos.principal</name>
- <value></value>
- <tag> OZONE, SECURITY</tag>
- <description>The OzoneManager service principal. Ex om/_HOST@REALM.COM</description>
- </property>
- <property>
- <name>hdds.scm.http.kerberos.principal</name>
- <value>HTTP/_HOST@EXAMPLE.COM</value>
- </property>
- <property>
- <name>hdds.scm.http.kerberos.keytab.file</name>
- <value>/etc/security/keytabs/HTTP.keytab</value>
- </property>
- <property>
- <name>ozone.om.http.kerberos.principal</name>
- <value>HTTP/_HOST@EXAMPLE.COM</value>
- <description>
- OzoneManager http server kerberos principal.
- </description>
- </property>
- <property>
- <name>ozone.om.http.kerberos.keytab.file</name>
- <value>/etc/security/keytabs/HTTP.keytab</value>
- <description>
- OzoneManager http server kerberos keytab.
- </description>
- </property>
- <property>
- <name>hdds.key.len</name>
- <value>2048</value>
- <tag>SCM, HDDS, X509, SECURITY</tag>
- <description>
- SCM CA key length. This is an algorithm-specific metric, such as modulus length, specified in number of bits.
- </description>
- </property>
- <property>
- <name>hdds.key.dir.name</name>
- <value>keys</value>
- <tag>SCM, HDDS, X509, SECURITY</tag>
- <description>
- Directory to store public/private key for SCM CA. This is relative to ozone/hdds meteadata dir.
- </description>
- </property>
- <property>
- <name>hdds.block.token.expiry.time</name>
- <value>1d</value>
- <tag>OZONE, HDDS, SECURITY, TOKEN</tag>
- <description>
- Default value for expiry time of block token. This
- setting supports multiple time unit suffixes as described in
- dfs.heartbeat.interval. If no suffix is specified, then milliseconds is
- assumed.
- </description>
- </property>
- <property>
- <name>hdds.block.token.enabled</name>
- <value>false</value>
- <tag>OZONE, HDDS, SECURITY, TOKEN</tag>
- <description>True if block tokens are enabled, else false.</description>
- </property>
- <property>
- <name>hdds.x509.file.name</name>
- <value>certificate.crt</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>Certificate file name.</description>
- </property>
- <property>
- <name>hdds.grpc.tls.provider</name>
- <value>OPENSSL</value>
- <tag>OZONE, HDDS, SECURITY, TLS</tag>
- <description>HDDS GRPC server TLS provider.</description>
- </property>
- <property>
- <name>hdds.client.cert.chain.file.name</name>
- <value>client.crt</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>Client certificate file name. It is an optional
- field only required when mutual TLS (hdds.grpc.mutual.tls.required)
- is set to true .</description>
- </property>
- <property>
- <name>hdds.grpc.mutual.tls.required</name>
- <value>false</value>
- <tag>OZONE, HDDS, SECURITY, TLS</tag>
- <description>If mutual tls check is enabled for GRPC.
- Considered only if hdds.grpc.tls.enabled is set to true.</description>
- </property>
- <property>
- <name>hdds.grpc.tls.enabled</name>
- <value>false</value>
- <tag>OZONE, HDDS, SECURITY, TLS</tag>
- <description>If HDDS GRPC server TLS is enabled.</description>
- </property>
- <property>
- <name>hdds.server.cert.chain.file.name</name>
- <value>server.crt</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>Hdds server certificate file name.</description>
- </property>
- <property>
- <name>hdds.trust.cert.collection.file.name</name>
- <value>ca.crt</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>HDDS Certificate Authority trust store file name.</description>
- </property>
- <property>
- <name>hdds.x509.default.duration</name>
- <value>P365D</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>Default duration for which x509 certificates issued by SCM are
- valid. The formats accepted are based on the ISO-8601 duration format
- PnDTnHnMn.nS</description>
- </property>
- <property>
- <name>hdds.x509.dir.name</name>
- <value>certs</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>X509 certificate directory name.</description>
- </property>
- <property>
- <name>hdds.x509.max.duration</name>
- <value>P1865D</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>Max time for which certificate issued by SCM CA are valid.
- . The formats accepted are based on the ISO-8601 duration format
- PnDTnHnMn.nS</description>
- </property>
- <property>
- <name>hdds.x509.signature.algorithm</name>
- <value>SHA256withRSA</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>X509 signature certificate.</description>
- </property>
- <property>
- <name>ozone.scm.security.handler.count.key</name>
- <value>2</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>Threads configured for SCMSecurityProtocolServer.</description>
- </property>
- <property>
- <name>ozone.scm.security.service.address</name>
- <value/>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>Address of SCMSecurityProtocolServer.</description>
- </property>
- <property>
- <name>ozone.scm.security.service.bind.host</name>
- <value>0.0.0.0</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>SCM security server host.</description>
- </property>
- <property>
- <name>ozone.scm.security.service.port</name>
- <value>9961</value>
- <tag>OZONE, HDDS, SECURITY</tag>
- <description>SCM security server port.</description>
- </property>
- <property>
- <name>hdds.metadata.dir</name>
- <value/>
- <tag>X509, SECURITY</tag>
- <description>
- Absolute path to HDDS metadata dir.
- </description>
- </property>
- <property>
- <name>hdds.priv.key.file.name</name>
- <value>private.pem</value>
- <tag>X509, SECURITY</tag>
- <description>
- Name of file which stores private key generated for SCM CA.
- </description>
- </property>
- <property>
- <name>hdds.public.key.file.name</name>
- <value>public.pem</value>
- <tag>X509, SECURITY</tag>
- <description>
- Name of file which stores public key generated for SCM CA.
- </description>
- </property>
- <property>
- <name>ozone.manager.delegation.remover.scan.interval</name>
- <value>3600000</value>
- <description>
- Time interval after which ozone secret manger scans for expired
- delegation token.
- </description>
- </property>
- <property>
- <name>ozone.manager.delegation.token.renew-interval</name>
- <value>1d</value>
- <description>
- Default time interval after which ozone delegation token will
- require renewal before any further use.
- </description>
- </property>
- <property>
- <name>ozone.manager.delegation.token.max-lifetime</name>
- <value>7d</value>
- <description>
- Default max time interval after which ozone delegation token will
- not be renewed.
- </description>
- </property>
- <property>
- <name>ozone.fs.isolated-classloader</name>
- <value></value>
- <tag>OZONE, OZONEFS</tag>
- <description>
- Enable it for older hadoops to separate the classloading of all the
- Ozone classes. With 'true' value, ozonefs can be used with older
- hadoop versions as the hadoop3/ozone related classes are loaded by
- an isolated classloader.
- Default depends from the used jar. true for ozone-filesystem-lib-legacy
- jar and false for the ozone-filesystem-lib-current.jar
- </description>
- </property>
- <property>
- <name>ozone.manager.db.checkpoint.transfer.bandwidthPerSec</name>
- <value>0</value>
- <tag>OZONE</tag>
- <description>
- Maximum bandwidth used for Ozone Manager DB checkpoint download through
- the servlet.
- </description>
- </property>
- <property>
- <name>ozone.freon.http-address</name>
- <value>0.0.0.0:9884</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The address and the base port where the FREON web ui will listen on.
- If the port is 0 then the server will start on a free port.
- </description>
- </property>
- <property>
- <name>ozone.freon.http-bind-host</name>
- <value>0.0.0.0</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The actual address the Freon web server will bind to. If this
- optional address is set, it overrides only the hostname portion of
- ozone.freon.http-address.
- </description>
- </property>
- <property>
- <name>ozone.freon.http.enabled</name>
- <value>true</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- Property to enable or disable FREON web ui.
- </description>
- </property>
- <property>
- <name>ozone.freon.https-address</name>
- <value>0.0.0.0:9885</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The address and the base port where the Freon web server will listen
- on using HTTPS.
- If the port is 0 then the server will start on a free port.
- </description>
- </property>
- <property>
- <name>ozone.freon.https-bind-host</name>
- <value>0.0.0.0</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The actual address the Freon web server will bind to using HTTPS.
- If this optional address is set, it overrides only the hostname portion of
- ozone.freon.http-address.
- </description>
- </property>
- <property>
- <name>ozone.freon.http.kerberos.principal</name>
- <value>HTTP/_HOST@EXAMPLE.COM</value>
- <tag>SECURITY</tag>
- <description>
- Security principal used by freon.
- </description>
- </property>
- <property>
- <name>ozone.freon.http.kerberos.keytab</name>
- <value>/etc/security/keytabs/HTTP.keytab</value>
- <tag>SECURITY</tag>
- <description>
- Keytab used by Freon.
- </description>
- </property>
- <property>
- <name>hdds.security.client.datanode.container.protocol.acl</name>
- <value>*</value>
- <tag>SECURITY</tag>
- <description>
- Comma separated list of users and groups allowed to access
- client datanode container protocol.
- </description>
- </property>
- <property>
- <name>hdds.security.client.scm.block.protocol.acl</name>
- <value>*</value>
- <tag>SECURITY</tag>
- <description>
- Comma separated list of users and groups allowed to access
- client scm block protocol.
- </description>
- </property>
- <property>
- <name>hdds.security.client.scm.certificate.protocol.acl</name>
- <value>*</value>
- <tag>SECURITY</tag>
- <description>
- Comma separated list of users and groups allowed to access
- client scm certificate protocol.
- </description>
- </property>
- <property>
- <name>hdds.security.client.scm.container.protocol.acl</name>
- <value>*</value>
- <tag>SECURITY</tag>
- <description>
- Comma separated list of users and groups allowed to access
- client scm container protocol.
- </description>
- </property>
- <property>
- <name>ozone.om.security.client.protocol.acl</name>
- <value>*</value>
- <tag>SECURITY</tag>
- <description>
- Comma separated list of users and groups allowed to access
- client ozone manager protocol.
- </description>
- </property>
- <property>
- <name>hdds.datanode.http.kerberos.principal</name>
- <value>HTTP/_HOST@EXAMPLE.COM</value>
- <tag>HDDS, SECURITY, MANAGEMENT</tag>
- <description>
- The kerberos principal for the datanode http server.
- </description>
- </property>
- <property>
- <name>hdds.datanode.http.kerberos.keytab</name>
- <value>/etc/security/keytabs/HTTP.keytab</value>
- <tag>HDDS, SECURITY, MANAGEMENT</tag>
- <description>
- The kerberos keytab file for datanode http server
- </description>
- </property>
- <property>
- <name>hdds.datanode.http-address</name>
- <value>0.0.0.0:9882</value>
- <tag>HDDS, MANAGEMENT</tag>
- <description>
- The address and the base port where the Datanode web ui will listen on.
- If the port is 0 then the server will start on a free port.
- </description>
- </property>
- <property>
- <name>hdds.datanode.http-bind-host</name>
- <value>0.0.0.0</value>
- <tag>HDDS, MANAGEMENT</tag>
- <description>
- The actual address the Datanode web server will bind to. If this
- optional address is set, it overrides only the hostname portion of
- hdds.datanode.http-address.
- </description>
- </property>
- <property>
- <name>hdds.datanode.http.enabled</name>
- <value>true</value>
- <tag>HDDS, MANAGEMENT</tag>
- <description>
- Property to enable or disable Datanode web ui.
- </description>
- </property>
- <property>
- <name>hdds.datanode.https-address</name>
- <value>0.0.0.0:9883</value>
- <tag>HDDS, MANAGEMENT, SECURITY</tag>
- <description>
- The address and the base port where the Datanode web UI will listen
- on using HTTPS.
- If the port is 0 then the server will start on a free port.
- </description>
- </property>
- <property>
- <name>hdds.datanode.https-bind-host</name>
- <value>0.0.0.0</value>
- <tag>HDDS, MANAGEMENT, SECURITY</tag>
- <description>
- The actual address the Datanode web server will bind to using HTTPS.
- If this optional address is set, it overrides only the hostname portion of
- hdds.datanode.http-address.
- </description>
- </property>
- <property>
- <name>ozone.client.retry.max.attempts</name>
- <value>10</value>
- <description>
- Max retry attempts for Ozone RpcClient talking to OzoneManagers.
- </description>
- </property>
- <property>
- <name>ozone.client.failover.max.attempts</name>
- <value>15</value>
- <description>
- Expert only. The number of client failover attempts that should be
- made before the failover is considered failed.
- </description>
- </property>
- <property>
- <name>ozone.client.failover.sleep.base.millis</name>
- <value>500</value>
- <description>
- Expert only. The time to wait, in milliseconds, between failover
- attempts increases exponentially as a function of the number of
- attempts made so far, with a random factor of +/- 50%. This option
- specifies the base value used in the failover calculation. The
- first failover will retry immediately. The 2nd failover attempt
- will delay at least ozone.client.failover.sleep.base.millis
- milliseconds. And so on.
- </description>
- </property>
- <property>
- <name>ozone.client.failover.sleep.max.millis</name>
- <value>15000</value>
- <description>
- Expert only. The time to wait, in milliseconds, between failover
- attempts increases exponentially as a function of the number of
- attempts made so far, with a random factor of +/- 50%. This option
- specifies the maximum value to wait between failovers.
- Specifically, the time between two failover attempts will not
- exceed +/- 50% of ozone.client.failover.sleep.max.millis
- milliseconds.
- </description>
- </property>
- <property>
- <name>ozone.recon.http.enabled</name>
- <value>true</value>
- <tag>RECON, MANAGEMENT</tag>
- <description>
- Property to enable or disable Recon web user interface.
- </description>
- </property>
- <property>
- <name>ozone.recon.http-address</name>
- <value>0.0.0.0:9888</value>
- <tag>RECON, MANAGEMENT</tag>
- <description>
- The address and the base port where the Recon web UI will listen on.
- If the port is 0, then the server will start on a free port. However, it
- is best to specify a well-known port, so it is easy to connect and see
- the Recon management UI.
- </description>
- </property>
- <property>
- <name>ozone.recon.http-bind-host</name>
- <value>0.0.0.0</value>
- <tag>RECON, MANAGEMENT</tag>
- <description>
- The actual address the Recon server will bind to. If this optional
- the address is set, it overrides only the hostname portion of
- ozone.recon.http-address.
- </description>
- </property>
- <property>
- <name>ozone.recon.https-bind-host</name>
- <value>0.0.0.0</value>
- <tag>RECON, MANAGEMENT, SECURITY</tag>
- <description>
- The actual address the Recon web server will bind to using HTTPS.
- If this optional address is set, it overrides only the hostname portion of
- ozone.recon.https-address.
- </description>
- </property>
- <property>
- <name>ozone.recon.https-address</name>
- <value>0.0.0.0:9889</value>
- <tag>RECON, MANAGEMENT, SECURITY</tag>
- <description>
- The address and the base port where the Recon web UI will listen
- on using HTTPS. If the port is 0 then the server will start on a free
- port.
- </description>
- </property>
- <property>
- <name>ozone.recon.keytab.file</name>
- <value/>
- <tag>RECON, SECURITY</tag>
- <description>
- The keytab file for Kerberos authentication in Recon.
- </description>
- </property>
- <property>
- <name>ozone.recon.authentication.kerberos.principal</name>
- <value/>
- <tag>RECON</tag>
- <description>The server principal used by Ozone Recon server. This is
- typically set to HTTP/_HOST@REALM.TLD The SPNEGO server principal
- begins with the prefix HTTP/ by convention.
- </description>
- </property>
- <property>
- <name>ozone.recon.container.db.cache.size.mb</name>
- <value>128</value>
- <tag>RECON, PERFORMANCE</tag>
- <description>
- The size of Recon DB cache in MB that used for caching files.
- This value is set to an abnormally low value in the default configuration.
- That is to make unit testing easy. Generally, this value should be set to
- something like 16GB or more, if you intend to use Recon at scale.
- A large value for this key allows a proportionally larger amount of Recon
- container DB to be cached in memory. This makes Recon Container-Key
- operations faster.
- </description>
- </property>
- <property>
- <name>ozone.recon.db.dir</name>
- <value/>
- <tag>OZONE, RECON, STORAGE, PERFORMANCE</tag>
- <description>
- Directory where the Recon Server stores its metadata. This should
- be specified as a single directory. If the directory does not
- exist then the Recon will attempt to create it.
- If undefined, then the Recon will log a warning and fallback to
- ozone.metadata.dirs. This fallback approach is not recommended for
- production environments.
- </description>
- </property>
- <property>
- <name>ozone.scm.network.topology.schema.file</name>
- <value>network-topology-default.xml</value>
- <tag>OZONE, MANAGEMENT</tag>
- <description>
- The schema file defines the ozone network topology. We currently support
- xml(default) and yaml format. Refer to the samples in the topology
- awareness document for xml and yaml topology definition samples.
- </description>
- </property>
- <property>
- <name>ozone.recon.container.db.impl</name>
- <value>RocksDB</value>
- <tag>OZONE, RECON, STORAGE</tag>
- <description>
- Ozone Recon container DB store implementation.Supported value is either
- LevelDB or RocksDB.
- </description>
- </property>
- <property>
- <name>ozone.recon.om.db.dir</name>
- <value/>
- <tag>OZONE, RECON, STORAGE</tag>
- <description>
- Directory where the Recon Server stores its OM snapshot DB. This should
- be specified as a single directory. If the directory does not
- exist then the Recon will attempt to create it.
- If undefined, then the Recon will log a warning and fallback to
- ozone.metadata.dirs. This fallback approach is not recommended for
- production environments.
- </description>
- </property>
- <property>
- <name>recon.om.connection.request.timeout</name>
- <value>5000</value>
- <tag>OZONE, RECON, OM</tag>
- <description>
- Connection request timeout in milliseconds for HTTP call made by Recon to
- request OM DB snapshot.
- </description>
- </property>
- <property>
- <name>recon.om.connection.timeout</name>
- <value>5s</value>
- <tag>OZONE, RECON, OM</tag>
- <description>
- Connection timeout for HTTP call in milliseconds made by Recon to request
- OM snapshot.
- </description>
- </property>
- <property>
- <name>recon.om.socket.timeout</name>
- <value>5s</value>
- <tag>OZONE, RECON, OM</tag>
- <description>
- Socket timeout in milliseconds for HTTP call made by Recon to request
- OM snapshot.
- </description>
- </property>
- <property>
- <name>recon.om.snapshot.task.initial.delay</name>
- <value>1m</value>
- <tag>OZONE, RECON, OM</tag>
- <description>
- Initial delay in MINUTES by Recon to request OM DB Snapshot.
- </description>
- </property>
- <property>
- <name>recon.om.snapshot.task.interval.delay</name>
- <value>10m</value>
- <tag>OZONE, RECON, OM</tag>
- <description>
- Interval in MINUTES by Recon to request OM DB Snapshot.
- </description>
- </property>
- <property>
- <name>recon.om.snapshot.task.flush.param</name>
- <value>false</value>
- <tag>OZONE, RECON, OM</tag>
- <description>
- Request to flush the OM DB before taking checkpoint snapshot.
- </description>
- </property>
- <property>
- <name>hdds.tracing.enabled</name>
- <value>true</value>
- <tag>OZONE, HDDS</tag>
- <description>
- If enabled, tracing information is sent to tracing server.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.driver</name>
- <value>org.sqlite.JDBC</value>
- <tag>OZONE, RECON</tag>
- <description>
- Database driver class name available on the
- Ozone Recon classpath.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.jdbc.url</name>
- <value>jdbc:sqlite:/${ozone.recon.db.dir}/ozone_recon_sqlite.db</value>
- <tag>OZONE, RECON</tag>
- <description>
- Ozone Recon SQL database jdbc url.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.username</name>
- <value/>
- <tag>OZONE, RECON</tag>
- <description>
- Ozone Recon SQL database username.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.password</name>
- <value/>
- <tag>OZONE, RECON</tag>
- <description>
- Ozone Recon database password.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.auto.commit</name>
- <value>false</value>
- <tag>OZONE, RECON</tag>
- <description>
- Sets the Ozone Recon database connection property of auto-commit to
- true/false.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.conn.timeout</name>
- <value>30000</value>
- <tag>OZONE, RECON</tag>
- <description>
- Sets time in milliseconds before call to getConnection is timed out.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.conn.max.active</name>
- <value>1</value>
- <tag>OZONE, RECON</tag>
- <description>
- The max active connections to the SQL database. The default SQLite
- database only allows single active connection, set this to a
- reasonable value like 10, for external production database.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.conn.max.age</name>
- <value>1800</value>
- <tag>OZONE, RECON</tag>
- <description>
- Sets maximum time a connection can be active in seconds.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.conn.idle.max.age</name>
- <value>3600</value>
- <tag>OZONE, RECON</tag>
- <description>
- Sets maximum time to live for idle connection in seconds.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.conn.idle.test.period</name>
- <value>60</value>
- <tag>OZONE, RECON</tag>
- <description>
- This sets the time (in seconds), for a connection to remain idle before
- sending a test query to the DB. This is useful to prevent a DB from
- timing out connections on its end.
- </description>
- </property>
- <property>
- <name>ozone.recon.sql.db.conn.idle.test</name>
- <value>SELECT 1</value>
- <tag>OZONE, RECON</tag>
- <description>
- The query to send to the DB to maintain keep-alives and test for dead
- connections.
- </description>
- </property>
- <property>
- <name>ozone.recon.task.thread.count</name>
- <value>1</value>
- <tag>OZONE, RECON</tag>
- <description>
- The number of Recon Tasks that are waiting on updates from OM.
- </description>
- </property>
- </configuration>
|