values.yaml 112 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501
  1. # Copyright Broadcom, Inc. All Rights Reserved.
  2. # SPDX-License-Identifier: APACHE-2.0
  3. ## @section Global parameters
  4. ## Global Docker image parameters
  5. ## Please, note that this will override the image parameters, including dependencies, configured to use the global value
  6. ## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass
  7. ##
  8. ## @param global.imageRegistry Global Docker image registry
  9. ## @param global.imagePullSecrets Global Docker registry secret names as an array
  10. ## @param global.defaultStorageClass Global default StorageClass for Persistent Volume(s)
  11. ## @param global.storageClass DEPRECATED: use global.defaultStorageClass instead
  12. ## @param global.namespaceOverride Override the namespace for resource deployed by the chart, but can itself be overridden by the local namespaceOverride
  13. ##
  14. global:
  15. imageRegistry: ""
  16. ## E.g.
  17. ## imagePullSecrets:
  18. ## - myRegistryKeySecretName
  19. ##
  20. imagePullSecrets: []
  21. defaultStorageClass: ""
  22. storageClass: ""
  23. namespaceOverride: ""
  24. ## Compatibility adaptations for Kubernetes platforms
  25. ##
  26. compatibility:
  27. ## Compatibility adaptations for Openshift
  28. ##
  29. openshift:
  30. ## @param global.compatibility.openshift.adaptSecurityContext Adapt the securityContext sections of the deployment to make them compatible with Openshift restricted-v2 SCC: remove runAsUser, runAsGroup and fsGroup and let the platform use their allowed default IDs. Possible values: auto (apply if the detected running cluster is Openshift), force (perform the adaptation always), disabled (do not perform adaptation)
  31. ##
  32. adaptSecurityContext: auto
  33. ## @section Common parameters
  34. ##
  35. ## @param nameOverride String to partially override mongodb.fullname template (will maintain the release name)
  36. ##
  37. nameOverride: ""
  38. ## @param fullnameOverride String to fully override mongodb.fullname template
  39. ##
  40. fullnameOverride: ""
  41. ## @param namespaceOverride String to fully override common.names.namespace
  42. ##
  43. namespaceOverride: ""
  44. ## @param kubeVersion Force target Kubernetes version (using Helm capabilities if not set)
  45. ##
  46. kubeVersion: ""
  47. ## @param clusterDomain Default Kubernetes cluster domain
  48. ##
  49. clusterDomain: cluster.local
  50. ## @param extraDeploy Array of extra objects to deploy with the release
  51. ## extraDeploy:
  52. ## This needs to be uncommented and added to 'extraDeploy' in order to use the replicaset 'mongo-labeler' sidecar
  53. ## for dynamically discovering the mongodb primary pod
  54. ## suggestion is to use a hard-coded and predictable TCP port for the primary mongodb pod (here is 30001, choose your own)
  55. ## - apiVersion: v1
  56. ## kind: Service
  57. ## metadata:
  58. ## name: mongodb-primary
  59. ## namespace: the-mongodb-namespace
  60. ## labels:
  61. ## app.kubernetes.io/component: mongodb
  62. ## app.kubernetes.io/instance: mongodb
  63. ## app.kubernetes.io/managed-by: Helm
  64. ## app.kubernetes.io/name: mongodb
  65. ## spec:
  66. ## type: NodePort
  67. ## externalTrafficPolicy: Cluster
  68. ## ports:
  69. ## - name: mongodb
  70. ## port: 30001
  71. ## nodePort: 30001
  72. ## protocol: TCP
  73. ## targetPort: mongodb
  74. ## selector:
  75. ## app.kubernetes.io/component: mongodb
  76. ## app.kubernetes.io/instance: mongodb
  77. ## app.kubernetes.io/name: mongodb
  78. ## primary: "true"
  79. ##
  80. extraDeploy: []
  81. ## @param commonLabels Add labels to all the deployed resources (sub-charts are not considered). Evaluated as a template
  82. ##
  83. commonLabels: {}
  84. ## @param commonAnnotations Common annotations to add to all Mongo resources (sub-charts are not considered). Evaluated as a template
  85. ##
  86. commonAnnotations: {}
  87. ## @param topologyKey Override common lib default topology key. If empty - "kubernetes.io/hostname" is used
  88. ## i.e. topologyKey: topology.kubernetes.io/zone
  89. ##
  90. topologyKey: ""
  91. ## @param serviceBindings.enabled Create secret for service binding (Experimental)
  92. ## Ref: https://servicebinding.io/service-provider/
  93. ##
  94. serviceBindings:
  95. enabled: false
  96. ## @param enableServiceLinks Whether information about services should be injected into pod's environment variable
  97. ## The environment variables injected by service links are not used, but can lead to slow boot times or slow running of the scripts when there are many services in the current namespace.
  98. ## If you experience slow pod startups or slow running of the scripts you probably want to set this to `false`.
  99. ##
  100. enableServiceLinks: true
  101. ## Enable diagnostic mode in the deployment
  102. ##
  103. diagnosticMode:
  104. ## @param diagnosticMode.enabled Enable diagnostic mode (all probes will be disabled and the command will be overridden)
  105. ##
  106. enabled: false
  107. ## @param diagnosticMode.command Command to override all containers in the deployment
  108. ##
  109. command:
  110. - sleep
  111. ## @param diagnosticMode.args Args to override all containers in the deployment
  112. ##
  113. args:
  114. - infinity
  115. ## @section MongoDB(®) parameters
  116. ##
  117. ## Bitnami MongoDB(®) image
  118. ## ref: https://hub.docker.com/r/bitnami/mongodb/tags/
  119. ## @param image.registry [default: REGISTRY_NAME] MongoDB(®) image registry
  120. ## @param image.repository [default: REPOSITORY_NAME/mongodb] MongoDB(®) image registry
  121. ## @skip image.tag MongoDB(®) image tag (immutable tags are recommended)
  122. ## @param image.digest MongoDB(®) image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
  123. ## @param image.pullPolicy MongoDB(®) image pull policy
  124. ## @param image.pullSecrets Specify docker-registry secret names as an array
  125. ## @param image.debug Set to true if you would like to see extra information on logs
  126. ##
  127. image:
  128. registry: docker.io
  129. repository: bitnami/mongodb
  130. tag: latest
  131. digest: ""
  132. ## Specify a imagePullPolicy
  133. ## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images
  134. ##
  135. pullPolicy: IfNotPresent
  136. ## Optionally specify an array of imagePullSecrets.
  137. ## Secrets must be manually created in the namespace.
  138. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  139. ## e.g:
  140. ## pullSecrets:
  141. ## - myRegistryKeySecretName
  142. ##
  143. pullSecrets: []
  144. ## Set to true if you would like to see extra information on logs
  145. ##
  146. debug: false
  147. ## @param schedulerName Name of the scheduler (other than default) to dispatch pods
  148. ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
  149. ##
  150. schedulerName: ""
  151. ## @param architecture MongoDB(®) architecture (`standalone` or `replicaset`)
  152. ##
  153. architecture: replicaset
  154. ## @param useStatefulSet Set to true to use a StatefulSet instead of a Deployment (only when `architecture=standalone`)
  155. ##
  156. useStatefulSet: false
  157. ## MongoDB(®) Authentication parameters
  158. ##
  159. auth:
  160. ## @param auth.enabled Enable authentication
  161. ## ref: https://docs.mongodb.com/manual/tutorial/enable-authentication/
  162. ##
  163. enabled: false
  164. ## @param auth.rootUser MongoDB(®) root user
  165. ##
  166. rootUser: root
  167. ## @param auth.rootPassword MongoDB(®) root password
  168. ## ref: https://github.com/bitnami/containers/tree/main/bitnami/mongodb#setting-the-root-user-and-password-on-first-run
  169. ##
  170. rootPassword: ""
  171. ## MongoDB(®) custom users and databases
  172. ## ref: https://github.com/bitnami/containers/tree/main/bitnami/mongodb#creating-a-user-and-database-on-first-run
  173. ## @param auth.usernames List of custom users to be created during the initialization
  174. ## @param auth.passwords List of passwords for the custom users set at `auth.usernames`
  175. ## @param auth.databases List of custom databases to be created during the initialization
  176. ##
  177. usernames: []
  178. passwords: []
  179. databases: []
  180. ## @param auth.username DEPRECATED: use `auth.usernames` instead
  181. ## @param auth.password DEPRECATED: use `auth.passwords` instead
  182. ## @param auth.database DEPRECATED: use `auth.databases` instead
  183. ##
  184. username: ""
  185. password: ""
  186. database: ""
  187. ## @param auth.replicaSetKey Key used for authentication in the replicaset (only when `architecture=replicaset`)
  188. ##
  189. replicaSetKey: ""
  190. ## @param auth.existingSecret Existing secret with MongoDB(®) credentials (keys: `mongodb-passwords`, `mongodb-root-password`, `mongodb-metrics-password`, `mongodb-replica-set-key`)
  191. ## NOTE: When it's set the previous parameters are ignored.
  192. ##
  193. existingSecret: ""
  194. tls:
  195. ## @param tls.enabled Enable MongoDB(®) TLS support between nodes in the cluster as well as between mongo clients and nodes
  196. ##
  197. enabled: false
  198. mTLS:
  199. ## @param tls.mTLS.enabled IF TLS support is enabled, require clients to provide certificates
  200. enabled: true
  201. ## @param tls.autoGenerated Generate a custom CA and self-signed certificates
  202. ##
  203. autoGenerated: true
  204. ## @param tls.existingSecret Existing secret with TLS certificates (keys: `mongodb-ca-cert`, `mongodb-ca-key`)
  205. ## NOTE: When it's set it will disable secret creation.
  206. ##
  207. existingSecret: ""
  208. ## Add Custom CA certificate
  209. ## @param tls.caCert Custom CA certificated (base64 encoded)
  210. ## @param tls.caKey CA certificate private key (base64 encoded)
  211. ##
  212. caCert: ""
  213. caKey: ""
  214. ## @param tls.pemChainIncluded Flag to denote that the Certificate Authority (CA) certificates are bundled with the endpoint cert.
  215. ## Certificates must be in proper order, where the top certificate is the leaf and the bottom certificate is the top-most intermediate CA.
  216. ##
  217. pemChainIncluded: false
  218. standalone:
  219. ## @param tls.standalone.existingSecret Existing secret with TLS certificates (`tls.key`, `tls.crt`, `ca.crt`) or (`tls.key`, `tls.crt`) with tls.pemChainIncluded set as enabled.
  220. ## NOTE: When it's set it will disable certificate self-generation from existing CA.
  221. ##
  222. existingSecret: ""
  223. replicaset:
  224. ## @param tls.replicaset.existingSecrets Array of existing secrets with TLS certificates (`tls.key`, `tls.crt`, `ca.crt`) or (`tls.key`, `tls.crt`) with tls.pemChainIncluded set as enabled.
  225. ## existingSecrets:
  226. ## - "mySecret-0"
  227. ## - "mySecret-1"
  228. ## NOTE: When it's set it will disable certificate self-generation from existing CA.
  229. ##
  230. existingSecrets: []
  231. hidden:
  232. ## @param tls.hidden.existingSecrets Array of existing secrets with TLS certificates (`tls.key`, `tls.crt`, `ca.crt`) or (`tls.key`, `tls.crt`) with tls.pemChainIncluded set as enabled.
  233. ## existingSecrets:
  234. ## - "mySecret-0"
  235. ## - "mySecret-1"
  236. ## NOTE: When it's set it will disable certificate self-generation from existing CA.
  237. ##
  238. existingSecrets: []
  239. arbiter:
  240. ## @param tls.arbiter.existingSecret Existing secret with TLS certificates (`tls.key`, `tls.crt`, `ca.crt`) or (`tls.key`, `tls.crt`) with tls.pemChainIncluded set as enabled.
  241. ## NOTE: When it's set it will disable certificate self-generation from existing CA.
  242. ##
  243. existingSecret: ""
  244. ## Bitnami Nginx image
  245. ## @param tls.image.registry [default: REGISTRY_NAME] Init container TLS certs setup image registry
  246. ## @param tls.image.repository [default: REPOSITORY_NAME/nginx] Init container TLS certs setup image repository
  247. ## @skip tls.image.tag Init container TLS certs setup image tag (immutable tags are recommended)
  248. ## @param tls.image.digest Init container TLS certs setup image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
  249. ## @param tls.image.pullPolicy Init container TLS certs setup image pull policy
  250. ## @param tls.image.pullSecrets Init container TLS certs specify docker-registry secret names as an array
  251. ## @param tls.extraDnsNames Add extra dns names to the CA, can solve x509 auth issue for pod clients
  252. ##
  253. image:
  254. registry: docker.io
  255. repository: bitnami/nginx
  256. tag: 1.27.1-debian-12-r5
  257. digest: ""
  258. pullPolicy: IfNotPresent
  259. ## Optionally specify an array of imagePullSecrets.
  260. ## Secrets must be manually created in the namespace.
  261. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  262. ## e.g:
  263. ## pullSecrets:
  264. ## - myRegistryKeySecretName
  265. ##
  266. pullSecrets: []
  267. ## e.g:
  268. ## extraDnsNames
  269. ## "DNS.6": "$my_host"
  270. ## "DNS.7": "$test"
  271. ##
  272. extraDnsNames: []
  273. ## @param tls.mode Allows to set the tls mode which should be used when tls is enabled (options: `allowTLS`, `preferTLS`, `requireTLS`)
  274. ##
  275. mode: requireTLS
  276. ## Init Container resource requests and limits
  277. ## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
  278. ## We usually recommend not to specify default resources and to leave this as a conscious
  279. ## choice for the user. This also increases chances charts run on environments with little
  280. ## resources, such as Minikube. If you do want to specify resources, uncomment the following
  281. ## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  282. ## @param tls.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if tls.resources is set (tls.resources is recommended for production).
  283. ## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
  284. ##
  285. resourcesPreset: "nano"
  286. ## @param tls.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
  287. ## Example:
  288. ## resources:
  289. ## requests:
  290. ## cpu: 2
  291. ## memory: 512Mi
  292. ## limits:
  293. ## cpu: 3
  294. ## memory: 1024Mi
  295. ##
  296. resources: {}
  297. ## Init Container securityContext
  298. ## ref: https://kubernetes.io/docs/concepts/security/pod-security-policy/
  299. ## @param tls.securityContext Init container generate-tls-cert Security context
  300. ##
  301. securityContext: {}
  302. ## Example:
  303. ## allowPrivilegeEscalation: false
  304. ## capabilities:
  305. ## drop: ["ALL"]
  306. ##
  307. ## @param automountServiceAccountToken Mount Service Account token in pod
  308. ##
  309. automountServiceAccountToken: false
  310. ## @param hostAliases Add deployment host aliases
  311. ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
  312. ##
  313. hostAliases: []
  314. ## @param replicaSetName Name of the replica set (only when `architecture=replicaset`)
  315. ## Ignored when mongodb.architecture=standalone
  316. ##
  317. replicaSetName: rs0
  318. ## @param replicaSetHostnames Enable DNS hostnames in the replicaset config (only when `architecture=replicaset`)
  319. ## Ignored when mongodb.architecture=standalone
  320. ## Ignored when externalAccess.enabled=true
  321. ##
  322. replicaSetHostnames: true
  323. ## @param enableIPv6 Switch to enable/disable IPv6 on MongoDB(®)
  324. ## ref: https://github.com/bitnami/containers/tree/main/bitnami/mongodb#enablingdisabling-ipv6
  325. ##
  326. enableIPv6: false
  327. ## @param directoryPerDB Switch to enable/disable DirectoryPerDB on MongoDB(®)
  328. ## ref: https://github.com/bitnami/containers/tree/main/bitnami/mongodb#enablingdisabling-directoryperdb
  329. ##
  330. directoryPerDB: false
  331. ## MongoDB(®) System Log configuration
  332. ## ref: https://github.com/bitnami/containers/tree/main/bitnami/mongodb#configuring-system-log-verbosity-level
  333. ## @param systemLogVerbosity MongoDB(®) system log verbosity level
  334. ## @param disableSystemLog Switch to enable/disable MongoDB(®) system log
  335. ##
  336. systemLogVerbosity: 0
  337. disableSystemLog: false
  338. ## @param disableJavascript Switch to enable/disable MongoDB(®) server-side JavaScript execution
  339. ## ref: https://docs.mongodb.com/manual/core/server-side-javascript/
  340. ##
  341. disableJavascript: false
  342. ## @param enableJournal Switch to enable/disable MongoDB(®) Journaling
  343. ## ref: https://docs.mongodb.com/manual/reference/configuration-options/#mongodb-setting-storage.journal.enabled
  344. ##
  345. enableJournal: true
  346. ## @param configuration MongoDB(®) configuration file to be used for Primary and Secondary nodes
  347. ## For documentation of all options, see: http://docs.mongodb.org/manual/reference/configuration-options/
  348. ## Example:
  349. ## configuration: |-
  350. ## # where and how to store data.
  351. ## storage:
  352. ## dbPath: /bitnami/mongodb/data/db
  353. ## journal:
  354. ## enabled: true
  355. ## directoryPerDB: false
  356. ## # where to write logging data
  357. ## systemLog:
  358. ## destination: file
  359. ## quiet: false
  360. ## logAppend: true
  361. ## logRotate: reopen
  362. ## path: /opt/bitnami/mongodb/logs/mongodb.log
  363. ## verbosity: 0
  364. ## # network interfaces
  365. ## net:
  366. ## port: 27017
  367. ## unixDomainSocket:
  368. ## enabled: true
  369. ## pathPrefix: /opt/bitnami/mongodb/tmp
  370. ## ipv6: false
  371. ## bindIpAll: true
  372. ## # replica set options
  373. ## #replication:
  374. ## #replSetName: replicaset
  375. ## #enableMajorityReadConcern: true
  376. ## # process management options
  377. ## processManagement:
  378. ## fork: false
  379. ## pidFilePath: /opt/bitnami/mongodb/tmp/mongodb.pid
  380. ## # set parameter options
  381. ## setParameter:
  382. ## enableLocalhostAuthBypass: true
  383. ## # security options
  384. ## security:
  385. ## authorization: disabled
  386. ## #keyFile: /opt/bitnami/mongodb/conf/keyfile
  387. ##
  388. configuration: ""
  389. ## @section replicaSetConfigurationSettings settings applied during runtime (not via configuration file)
  390. ## If enabled, these are applied by a script which is called within setup.sh
  391. ## for documentation see https://docs.mongodb.com/manual/reference/replica-configuration/#replica-set-configuration-fields
  392. ## @param replicaSetConfigurationSettings.enabled Enable MongoDB(®) Switch to enable/disable configuring MongoDB(®) run time rs.conf settings
  393. ## @param replicaSetConfigurationSettings.configuration run-time rs.conf settings
  394. ##
  395. replicaSetConfigurationSettings:
  396. enabled: false
  397. configuration: {}
  398. ## Custom configurations for individual replica set members.
  399. ## Use the prefix 'members[X].' to apply settings to the member X of the replica set.
  400. ## Example: 'members[0].priority: 3' sets the priority of the first replica set member to 3.
  401. ## The index X in 'members[X]' corresponds to the member's position in the replica set.
  402. ## members[0].priority: 3
  403. ## chainingAllowed : false
  404. ## heartbeatTimeoutSecs : 10
  405. ## heartbeatIntervalMillis : 2000
  406. ## electionTimeoutMillis : 10000
  407. ## catchUpTimeoutMillis : 30000
  408. ## @param existingConfigmap Name of existing ConfigMap with MongoDB(®) configuration for Primary and Secondary nodes
  409. ## NOTE: When it's set the arbiter.configuration parameter is ignored
  410. ##
  411. existingConfigmap: ""
  412. ## @param initdbScripts Dictionary of initdb scripts
  413. ## Specify dictionary of scripts to be run at first boot
  414. ## Example:
  415. ## initdbScripts:
  416. ## my_init_script.sh: |
  417. ## #!/bin/bash
  418. ## echo "Do something."
  419. ##
  420. initdbScripts: {}
  421. ## @param initdbScriptsConfigMap Existing ConfigMap with custom initdb scripts
  422. ##
  423. initdbScriptsConfigMap: ""
  424. ## Command and args for running the container (set to default if not set). Use array form
  425. ## @param command Override default container command (useful when using custom images)
  426. ## @param args Override default container args (useful when using custom images)
  427. ##
  428. command: []
  429. args: []
  430. ## @param extraFlags MongoDB(®) additional command line flags
  431. ## Example:
  432. ## extraFlags:
  433. ## - "--wiredTigerCacheSizeGB=2"
  434. ##
  435. extraFlags: []
  436. ## @param extraEnvVars Extra environment variables to add to MongoDB(®) pods
  437. ## E.g:
  438. ## extraEnvVars:
  439. ## - name: FOO
  440. ## value: BAR
  441. ##
  442. extraEnvVars: []
  443. ## @param extraEnvVarsCM Name of existing ConfigMap containing extra env vars
  444. ##
  445. extraEnvVarsCM: ""
  446. ## @param extraEnvVarsSecret Name of existing Secret containing extra env vars (in case of sensitive data)
  447. ##
  448. extraEnvVarsSecret: ""
  449. ## @section MongoDB(®) statefulset parameters
  450. ##
  451. ## @param annotations Additional labels to be added to the MongoDB(®) statefulset. Evaluated as a template
  452. ##
  453. annotations: {}
  454. ## @param labels Annotations to be added to the MongoDB(®) statefulset. Evaluated as a template
  455. ##
  456. labels: {}
  457. ## @param replicaCount Number of MongoDB(®) nodes
  458. ## When `mongodb.architecture=replicaset`, the number of replicas is taken in account
  459. ## When `mongodb.architecture=standalone`, the number of replicas can only be 0 or 1 (value higher then 1 will not be taken in account)
  460. ##
  461. replicaCount: 1
  462. ## @param updateStrategy.type Strategy to use to replace existing MongoDB(®) pods. When architecture=standalone and useStatefulSet=false,
  463. ## this parameter will be applied on a deployment object. In other case it will be applied on a statefulset object
  464. ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies
  465. ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
  466. ## Example:
  467. ## updateStrategy:
  468. ## type: RollingUpdate
  469. ## rollingUpdate:
  470. ## maxSurge: 25%
  471. ## maxUnavailable: 25%
  472. ##
  473. updateStrategy:
  474. type: RollingUpdate
  475. ## @param podManagementPolicy Pod management policy for MongoDB(®)
  476. ## Should be initialized one by one when building the replicaset for the first time
  477. ##
  478. podManagementPolicy: OrderedReady
  479. ## @param podAffinityPreset MongoDB(®) Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  480. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
  481. ##
  482. podAffinityPreset: ""
  483. ## @param podAntiAffinityPreset MongoDB(®) Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  484. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
  485. ##
  486. podAntiAffinityPreset: soft
  487. ## Node affinity preset
  488. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
  489. ##
  490. nodeAffinityPreset:
  491. ## @param nodeAffinityPreset.type MongoDB(®) Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  492. ##
  493. type: ""
  494. ## @param nodeAffinityPreset.key MongoDB(®) Node label key to match Ignored if `affinity` is set.
  495. ## E.g.
  496. ## key: "kubernetes.io/e2e-az-name"
  497. ##
  498. key: ""
  499. ## @param nodeAffinityPreset.values MongoDB(®) Node label values to match. Ignored if `affinity` is set.
  500. ## E.g.
  501. ## values:
  502. ## - e2e-az1
  503. ## - e2e-az2
  504. ##
  505. values: []
  506. ## @param affinity MongoDB(®) Affinity for pod assignment
  507. ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
  508. ## Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set
  509. ##
  510. affinity: {}
  511. ## @param nodeSelector MongoDB(®) Node labels for pod assignment
  512. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
  513. ##
  514. nodeSelector: {}
  515. ## @param tolerations MongoDB(®) Tolerations for pod assignment
  516. ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
  517. ##
  518. tolerations: []
  519. ## @param topologySpreadConstraints MongoDB(®) Spread Constraints for Pods
  520. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
  521. ##
  522. topologySpreadConstraints: []
  523. ## @param lifecycleHooks LifecycleHook for the MongoDB(®) container(s) to automate configuration before or after startup
  524. ##
  525. lifecycleHooks: {}
  526. ## @param terminationGracePeriodSeconds MongoDB(®) Termination Grace Period
  527. ##
  528. terminationGracePeriodSeconds: ""
  529. ## @param podLabels MongoDB(®) pod labels
  530. ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
  531. ##
  532. podLabels: {}
  533. ## @param podAnnotations MongoDB(®) Pod annotations
  534. ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
  535. ##
  536. podAnnotations: {}
  537. ## @param priorityClassName Name of the existing priority class to be used by MongoDB(®) pod(s)
  538. ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
  539. ##
  540. priorityClassName: ""
  541. ## @param runtimeClassName Name of the runtime class to be used by MongoDB(®) pod(s)
  542. ## ref: https://kubernetes.io/docs/concepts/containers/runtime-class/
  543. ##
  544. runtimeClassName: ""
  545. ## MongoDB(®) pods' Security Context.
  546. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
  547. ## @param podSecurityContext.enabled Enable MongoDB(®) pod(s)' Security Context
  548. ## @param podSecurityContext.fsGroupChangePolicy Set filesystem group change policy
  549. ## @param podSecurityContext.supplementalGroups Set filesystem extra groups
  550. ## @param podSecurityContext.fsGroup Group ID for the volumes of the MongoDB(®) pod(s)
  551. ## @param podSecurityContext.sysctls sysctl settings of the MongoDB(®) pod(s)'
  552. ##
  553. podSecurityContext:
  554. enabled: true
  555. fsGroupChangePolicy: Always
  556. supplementalGroups: []
  557. fsGroup: 65534
  558. ## sysctl settings
  559. ## Example:
  560. ## sysctls:
  561. ## - name: net.core.somaxconn
  562. ## value: "10000"
  563. ##
  564. sysctls: []
  565. ## MongoDB(®) containers' Security Context (main and metrics container).
  566. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
  567. ## @param containerSecurityContext.enabled Enabled containers' Security Context
  568. ## @param containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container
  569. ## @param containerSecurityContext.runAsUser Set containers' Security Context runAsUser
  570. ## @param containerSecurityContext.runAsGroup Set containers' Security Context runAsGroup
  571. ## @param containerSecurityContext.runAsNonRoot Set container's Security Context runAsNonRoot
  572. ## @param containerSecurityContext.privileged Set container's Security Context privileged
  573. ## @param containerSecurityContext.readOnlyRootFilesystem Set container's Security Context readOnlyRootFilesystem
  574. ## @param containerSecurityContext.allowPrivilegeEscalation Set container's Security Context allowPrivilegeEscalation
  575. ## @param containerSecurityContext.capabilities.drop List of capabilities to be dropped
  576. ## @param containerSecurityContext.seccompProfile.type Set container's Security Context seccomp profile
  577. ##
  578. containerSecurityContext:
  579. enabled: true
  580. seLinuxOptions: {}
  581. runAsUser: 65534
  582. runAsGroup: 65534
  583. runAsNonRoot: true
  584. privileged: false
  585. readOnlyRootFilesystem: true
  586. allowPrivilegeEscalation: false
  587. capabilities:
  588. drop: ["ALL"]
  589. seccompProfile:
  590. type: "RuntimeDefault"
  591. ## MongoDB(®) containers' resource requests and limits.
  592. ## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
  593. ## We usually recommend not to specify default resources and to leave this as a conscious
  594. ## choice for the user. This also increases chances charts run on environments with little
  595. ## resources, such as Minikube. If you do want to specify resources, uncomment the following
  596. ## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  597. ## @param resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production).
  598. ## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
  599. ##
  600. resourcesPreset: "small"
  601. ## @param resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
  602. ## Example:
  603. ## resources:
  604. ## requests:
  605. ## cpu: 2
  606. ## memory: 512Mi
  607. ## limits:
  608. ## cpu: 3
  609. ## memory: 1024Mi
  610. ##
  611. resources: {}
  612. ## @param containerPorts.mongodb MongoDB(®) container port
  613. ##
  614. containerPorts:
  615. mongodb: 27017
  616. ## MongoDB(®) pods' liveness probe. Evaluated as a template.
  617. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
  618. ## @param livenessProbe.enabled Enable livenessProbe
  619. ## @param livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
  620. ## @param livenessProbe.periodSeconds Period seconds for livenessProbe
  621. ## @param livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
  622. ## @param livenessProbe.failureThreshold Failure threshold for livenessProbe
  623. ## @param livenessProbe.successThreshold Success threshold for livenessProbe
  624. ##
  625. livenessProbe:
  626. enabled: true
  627. initialDelaySeconds: 30
  628. periodSeconds: 20
  629. timeoutSeconds: 10
  630. failureThreshold: 6
  631. successThreshold: 1
  632. ## MongoDB(®) pods' readiness probe. Evaluated as a template.
  633. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
  634. ## @param readinessProbe.enabled Enable readinessProbe
  635. ## @param readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe
  636. ## @param readinessProbe.periodSeconds Period seconds for readinessProbe
  637. ## @param readinessProbe.timeoutSeconds Timeout seconds for readinessProbe
  638. ## @param readinessProbe.failureThreshold Failure threshold for readinessProbe
  639. ## @param readinessProbe.successThreshold Success threshold for readinessProbe
  640. ##
  641. readinessProbe:
  642. enabled: true
  643. initialDelaySeconds: 5
  644. periodSeconds: 10
  645. timeoutSeconds: 5
  646. failureThreshold: 6
  647. successThreshold: 1
  648. ## Slow starting containers can be protected through startup probes
  649. ## Startup probes are available in Kubernetes version 1.16 and above
  650. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-startup-probes
  651. ## @param startupProbe.enabled Enable startupProbe
  652. ## @param startupProbe.initialDelaySeconds Initial delay seconds for startupProbe
  653. ## @param startupProbe.periodSeconds Period seconds for startupProbe
  654. ## @param startupProbe.timeoutSeconds Timeout seconds for startupProbe
  655. ## @param startupProbe.failureThreshold Failure threshold for startupProbe
  656. ## @param startupProbe.successThreshold Success threshold for startupProbe
  657. ##
  658. startupProbe:
  659. enabled: false
  660. initialDelaySeconds: 5
  661. periodSeconds: 20
  662. timeoutSeconds: 10
  663. successThreshold: 1
  664. failureThreshold: 30
  665. ## @param customLivenessProbe Override default liveness probe for MongoDB(®) containers
  666. ## Ignored when livenessProbe.enabled=true
  667. ##
  668. customLivenessProbe: {}
  669. ## @param customReadinessProbe Override default readiness probe for MongoDB(®) containers
  670. ## Ignored when readinessProbe.enabled=true
  671. ##
  672. customReadinessProbe: {}
  673. ## @param customStartupProbe Override default startup probe for MongoDB(®) containers
  674. ## Ignored when startupProbe.enabled=true
  675. ##
  676. customStartupProbe: {}
  677. ## @param initContainers Add additional init containers for the hidden node pod(s)
  678. ## Example:
  679. ## initContainers:
  680. ## - name: your-image-name
  681. ## image: your-image
  682. ## imagePullPolicy: Always
  683. ## ports:
  684. ## - name: portname
  685. ## containerPort: 1234
  686. ##
  687. initContainers: []
  688. ## @param sidecars Add additional sidecar containers for the MongoDB(®) pod(s)
  689. ## Example:
  690. ## sidecars:
  691. ## - name: your-image-name
  692. ## image: your-image
  693. ## imagePullPolicy: Always
  694. ## ports:
  695. ## - name: portname
  696. ## containerPort: 1234
  697. ## This is an optional 'mongo-labeler' sidecar container that tracks replica-set for the primary mongodb pod
  698. ## and labels it dynamically with ' primary: "true" ' in order for an extra-deployed service to always expose
  699. ## and attach to the primary pod, this needs to be uncommented along with the suggested 'extraDeploy' example
  700. ## and the suggested rbac example for the pod to be allowed adding labels to mongo replica pods
  701. ## search 'mongo-labeler' through this file to find the sections that needs to be uncommented to make it work
  702. ##
  703. ## - name: mongo-labeler
  704. ## image: korenlev/k8s-mongo-labeler-sidecar
  705. ## imagePullPolicy: Always
  706. ## env:
  707. ## - name: LABEL_SELECTOR
  708. ## value: "app.kubernetes.io/component=mongodb,app.kubernetes.io/instance=mongodb,app.kubernetes.io/name=mongodb"
  709. ## - name: NAMESPACE
  710. ## value: "the-mongodb-namespace"
  711. ## - name: DEBUG
  712. ## value: "true"
  713. ##
  714. sidecars: []
  715. ## @param extraVolumeMounts Optionally specify extra list of additional volumeMounts for the MongoDB(®) container(s)
  716. ## Examples:
  717. ## extraVolumeMounts:
  718. ## - name: extras
  719. ## mountPath: /usr/share/extras
  720. ## readOnly: true
  721. ##
  722. extraVolumeMounts: []
  723. ## @param extraVolumes Optionally specify extra list of additional volumes to the MongoDB(®) statefulset
  724. ## extraVolumes:
  725. ## - name: extras
  726. ## emptyDir: {}
  727. ##
  728. extraVolumes: []
  729. ## MongoDB(®) Pod Disruption Budget configuration
  730. ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
  731. ##
  732. pdb:
  733. ## @param pdb.create Enable/disable a Pod Disruption Budget creation for MongoDB(®) pod(s)
  734. ##
  735. create: true
  736. ## @param pdb.minAvailable Minimum number/percentage of MongoDB(®) pods that must still be available after the eviction
  737. ##
  738. minAvailable: ""
  739. ## @param pdb.maxUnavailable Maximum number/percentage of MongoDB(®) pods that may be made unavailable after the eviction. Defaults to `1` if both `pdb.minAvailable` and `pdb.maxUnavailable` are empty.
  740. ##
  741. maxUnavailable: ""
  742. ## @section Traffic exposure parameters
  743. ##
  744. ## Service parameters
  745. ##
  746. service:
  747. ## @param service.nameOverride MongoDB(®) service name
  748. ##
  749. nameOverride: ""
  750. ## @param service.type Kubernetes Service type (only for standalone architecture)
  751. ##
  752. type: ClusterIP
  753. ## @param service.portName MongoDB(®) service port name (only for standalone architecture)
  754. ##
  755. portName: mongodb
  756. ## @param service.ports.mongodb MongoDB(®) service port.
  757. ##
  758. ports:
  759. mongodb: 27017
  760. ## @param service.nodePorts.mongodb Port to bind to for NodePort and LoadBalancer service types (only for standalone architecture)
  761. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
  762. ##
  763. nodePorts:
  764. mongodb: ""
  765. ## @param service.clusterIP MongoDB(®) service cluster IP (only for standalone architecture)
  766. ## e.g:
  767. ## clusterIP: None
  768. ##
  769. clusterIP: ""
  770. ## @param service.externalIPs Specify the externalIP value ClusterIP service type (only for standalone architecture)
  771. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
  772. ##
  773. externalIPs: []
  774. ## @param service.loadBalancerIP loadBalancerIP for MongoDB(®) Service (only for standalone architecture)
  775. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer
  776. ##
  777. loadBalancerIP: ""
  778. ## @param service.loadBalancerClass loadBalancerClass for MongoDB(®) Service (only for standalone architecture)
  779. # ref: https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class
  780. loadBalancerClass: ""
  781. ## @param service.loadBalancerSourceRanges Address(es) that are allowed when service is LoadBalancer (only for standalone architecture)
  782. ## ref: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
  783. ##
  784. loadBalancerSourceRanges: []
  785. ## @param service.allocateLoadBalancerNodePorts Wheter to allocate node ports when service type is LoadBalancer
  786. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-nodeport-allocation
  787. ##
  788. allocateLoadBalancerNodePorts: true
  789. ## @param service.extraPorts Extra ports to expose (normally used with the `sidecar` value)
  790. ##
  791. extraPorts: []
  792. ## @param service.annotations Provide any additional annotations that may be required
  793. ##
  794. annotations: {}
  795. ## @param service.externalTrafficPolicy service external traffic policy (only for standalone architecture)
  796. ## ref https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
  797. ##
  798. externalTrafficPolicy: Local
  799. ## @param service.sessionAffinity Control where client requests go, to the same pod or round-robin
  800. ## Values: ClientIP or None
  801. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/
  802. ##
  803. sessionAffinity: None
  804. ## @param service.sessionAffinityConfig Additional settings for the sessionAffinity
  805. ## sessionAffinityConfig:
  806. ## clientIP:
  807. ## timeoutSeconds: 300
  808. ##
  809. sessionAffinityConfig: {}
  810. ## Headless service properties
  811. ##
  812. headless:
  813. ## @param service.headless.annotations Annotations for the headless service.
  814. ##
  815. annotations: {}
  816. ## External Access to MongoDB(®) nodes configuration
  817. ##
  818. externalAccess:
  819. ## @param externalAccess.enabled Enable Kubernetes external cluster access to MongoDB(®) nodes (only for replicaset architecture)
  820. ##
  821. enabled: false
  822. ## External IPs auto-discovery configuration
  823. ## An init container is used to auto-detect LB IPs or node ports by querying the K8s API
  824. ## Note: RBAC might be required
  825. ##
  826. autoDiscovery:
  827. ## @param externalAccess.autoDiscovery.enabled Enable using an init container to auto-detect external IPs by querying the K8s API
  828. ##
  829. enabled: false
  830. ## Bitnami Kubectl image
  831. ## ref: https://hub.docker.com/r/bitnami/kubectl/tags/
  832. ## @param externalAccess.autoDiscovery.image.registry [default: REGISTRY_NAME] Init container auto-discovery image registry
  833. ## @param externalAccess.autoDiscovery.image.repository [default: REPOSITORY_NAME/kubectl] Init container auto-discovery image repository
  834. ## @skip externalAccess.autoDiscovery.image.tag Init container auto-discovery image tag (immutable tags are recommended)
  835. ## @param externalAccess.autoDiscovery.image.digest Init container auto-discovery image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
  836. ## @param externalAccess.autoDiscovery.image.pullPolicy Init container auto-discovery image pull policy
  837. ## @param externalAccess.autoDiscovery.image.pullSecrets Init container auto-discovery image pull secrets
  838. ##
  839. image:
  840. registry: docker.io
  841. repository: bitnami/kubectl
  842. tag: 1.31.1-debian-12-r2
  843. digest: ""
  844. ## Specify a imagePullPolicy
  845. ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
  846. ## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images
  847. ##
  848. pullPolicy: IfNotPresent
  849. ## Optionally specify an array of imagePullSecrets (secrets must be manually created in the namespace)
  850. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  851. ## Example:
  852. ## pullSecrets:
  853. ## - myRegistryKeySecretName
  854. ##
  855. pullSecrets: []
  856. ## Init Container resource requests and limits
  857. ## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
  858. ## We usually recommend not to specify default resources and to leave this as a conscious
  859. ## choice for the user. This also increases chances charts run on environments with little
  860. ## resources, such as Minikube. If you do want to specify resources, uncomment the following
  861. ## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  862. ## @param externalAccess.autoDiscovery.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if externalAccess.autoDiscovery.resources is set (externalAccess.autoDiscovery.resources is recommended for production).
  863. ## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
  864. ##
  865. resourcesPreset: "nano"
  866. ## @param externalAccess.autoDiscovery.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
  867. ## Example:
  868. ## resources:
  869. ## requests:
  870. ## cpu: 2
  871. ## memory: 512Mi
  872. ## limits:
  873. ## cpu: 3
  874. ## memory: 1024Mi
  875. ##
  876. resources: {}
  877. ## Init container what mission is ensure public names can be resolved.
  878. ##
  879. dnsCheck:
  880. ## Bitnami os-shell image
  881. ## ref: https://hub.docker.com/r/bitnami/os-shell/tags/
  882. ## @param externalAccess.dnsCheck.image.registry [default: REGISTRY_NAME] Init container dns-check image registry
  883. ## @param externalAccess.dnsCheck.image.repository [default: REPOSITORY_NAME/kubectl] Init container dns-check image repository
  884. ## @skip externalAccess.dnsCheck.image.tag Init container dns-check image tag (immutable tags are recommended)
  885. ## @param externalAccess.dnsCheck.image.digest Init container dns-check image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
  886. ## @param externalAccess.dnsCheck.image.pullPolicy Init container dns-check image pull policy
  887. ## @param externalAccess.dnsCheck.image.pullSecrets Init container dns-check image pull secrets
  888. ##
  889. image:
  890. registry: docker.io
  891. repository: bitnami/os-shell
  892. tag: 12-debian-12-r30
  893. digest: ""
  894. ## Specify a imagePullPolicy
  895. ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
  896. ## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images
  897. ##
  898. pullPolicy: IfNotPresent
  899. ## Optionally specify an array of imagePullSecrets (secrets must be manually created in the namespace)
  900. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  901. ## Example:
  902. ## pullSecrets:
  903. ## - myRegistryKeySecretName
  904. ##
  905. pullSecrets: []
  906. ## Init Container resource requests and limits
  907. ## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
  908. ## We usually recommend not to specify default resources and to leave this as a conscious
  909. ## choice for the user. This also increases chances charts run on environments with little
  910. ## resources, such as Minikube. If you do want to specify resources, uncomment the following
  911. ## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  912. ## @param externalAccess.dnsCheck.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if externalAccess.autoDiscovery.resources is set (externalAccess.autoDiscovery.resources is recommended for production).
  913. ## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
  914. ##
  915. resourcesPreset: "nano"
  916. ## @param externalAccess.dnsCheck.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
  917. ## Example:
  918. ## resources:
  919. ## requests:
  920. ## cpu: 2
  921. ## memory: 512Mi
  922. ## limits:
  923. ## cpu: 3
  924. ## memory: 1024Mi
  925. ##
  926. resources: {}
  927. ## Parameters to configure a set of Pods that connect to an existing MongoDB(®) deployment that lies outside of Kubernetes.
  928. ## @param externalAccess.externalMaster.enabled Use external master for bootstrapping
  929. ## @param externalAccess.externalMaster.host External master host to bootstrap from
  930. ## @param externalAccess.externalMaster.port Port for MongoDB(®) service external master host
  931. ##
  932. externalMaster:
  933. enabled: false
  934. host: ""
  935. port: 27017
  936. ## Parameters to configure K8s service(s) used to externally access MongoDB(®)
  937. ## A new service per broker will be created
  938. ##
  939. service:
  940. ## @param externalAccess.service.type Kubernetes Service type for external access. Allowed values: NodePort, LoadBalancer or ClusterIP
  941. ##
  942. type: LoadBalancer
  943. ## @param externalAccess.service.portName MongoDB(®) port name used for external access when service type is LoadBalancer
  944. ##
  945. portName: "mongodb"
  946. ## @param externalAccess.service.ports.mongodb MongoDB(®) port used for external access when service type is LoadBalancer
  947. ##
  948. ports:
  949. mongodb: 27017
  950. ## @param externalAccess.service.loadBalancerIPs Array of load balancer IPs for MongoDB(®) nodes
  951. ## Example:
  952. ## loadBalancerIPs:
  953. ## - X.X.X.X
  954. ## - Y.Y.Y.Y
  955. ##
  956. loadBalancerIPs: []
  957. ## @param externalAccess.service.publicNames Array of public names. The size should be equal to the number of replicas.
  958. ##
  959. publicNames: []
  960. ## @param externalAccess.service.loadBalancerClass loadBalancerClass when service type is LoadBalancer
  961. # ref: https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class
  962. loadBalancerClass: ""
  963. ## @param externalAccess.service.loadBalancerSourceRanges Address(es) that are allowed when service is LoadBalancer
  964. ## ref: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
  965. ## Example:
  966. ## loadBalancerSourceRanges:
  967. ## - 10.10.10.0/24
  968. ##
  969. loadBalancerSourceRanges: []
  970. ## @param externalAccess.service.allocateLoadBalancerNodePorts Whether to allocate node ports when service type is LoadBalancer
  971. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-nodeport-allocation
  972. ##
  973. allocateLoadBalancerNodePorts: true
  974. ## @param externalAccess.service.externalTrafficPolicy MongoDB(®) service external traffic policy
  975. ## ref https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
  976. ##
  977. externalTrafficPolicy: Local
  978. ## @param externalAccess.service.nodePorts Array of node ports used to configure MongoDB(®) advertised hostname when service type is NodePort
  979. ## Example:
  980. ## nodePorts:
  981. ## - 30001
  982. ## - 30002
  983. ##
  984. nodePorts: []
  985. ## @param externalAccess.service.domain Domain or external IP used to configure MongoDB(®) advertised hostname when service type is NodePort
  986. ## If not specified, the container will try to get the kubernetes node external IP
  987. ## e.g:
  988. ## domain: mydomain.com
  989. ##
  990. domain: ""
  991. ## @param externalAccess.service.extraPorts Extra ports to expose (normally used with the `sidecar` value)
  992. ##
  993. extraPorts: []
  994. ## @param externalAccess.service.annotations Service annotations for external access. These annotations are common for all services created.
  995. ##
  996. annotations: {}
  997. ## @param externalAccess.service.annotationsList Service annotations for eache external service. This value contains a list allowing different annotations per each external service.
  998. ## Eg:
  999. ## annotationsList:
  1000. ## - external-dns.alpha.kubernetes.io/hostname: mongodb-0.example.com
  1001. ## - external-dns.alpha.kubernetes.io/hostname: mongodb-1.example.com
  1002. ##
  1003. annotationsList: []
  1004. ## @param externalAccess.service.sessionAffinity Control where client requests go, to the same pod or round-robin
  1005. ## Values: ClientIP or None
  1006. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/
  1007. ##
  1008. sessionAffinity: None
  1009. ## @param externalAccess.service.sessionAffinityConfig Additional settings for the sessionAffinity
  1010. ## sessionAffinityConfig:
  1011. ## clientIP:
  1012. ## timeoutSeconds: 300
  1013. ##
  1014. sessionAffinityConfig: {}
  1015. ## External Access to MongoDB(®) Hidden nodes configuration
  1016. ##
  1017. hidden:
  1018. ## @param externalAccess.hidden.enabled Enable Kubernetes external cluster access to MongoDB(®) hidden nodes
  1019. ##
  1020. enabled: false
  1021. ## Parameters to configure K8s service(s) used to externally access MongoDB(®)
  1022. ## A new service per broker will be created
  1023. ##
  1024. service:
  1025. ## @param externalAccess.hidden.service.type Kubernetes Service type for external access. Allowed values: NodePort or LoadBalancer
  1026. ##
  1027. type: LoadBalancer
  1028. ## @param externalAccess.hidden.service.portName MongoDB(®) port name used for external access when service type is LoadBalancer
  1029. ##
  1030. portName: "mongodb"
  1031. ## @param externalAccess.hidden.service.ports.mongodb MongoDB(®) port used for external access when service type is LoadBalancer
  1032. ##
  1033. ports:
  1034. mongodb: 27017
  1035. ## @param externalAccess.hidden.service.loadBalancerIPs Array of load balancer IPs for MongoDB(®) nodes
  1036. ## Example:
  1037. ## loadBalancerIPs:
  1038. ## - X.X.X.X
  1039. ## - Y.Y.Y.Y
  1040. ##
  1041. loadBalancerIPs: []
  1042. ## @param externalAccess.hidden.service.loadBalancerClass loadBalancerClass when service type is LoadBalancer
  1043. # ref: https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-class
  1044. loadBalancerClass: ""
  1045. ## @param externalAccess.hidden.service.loadBalancerSourceRanges Address(es) that are allowed when service is LoadBalancer
  1046. ## ref: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
  1047. ## Example:
  1048. ## loadBalancerSourceRanges:
  1049. ## - 10.10.10.0/24
  1050. ##
  1051. loadBalancerSourceRanges: []
  1052. ## @param externalAccess.hidden.service.allocateLoadBalancerNodePorts Wheter to allocate node ports when service type is LoadBalancer
  1053. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#load-balancer-nodeport-allocation
  1054. ##
  1055. allocateLoadBalancerNodePorts: true
  1056. ## @param externalAccess.hidden.service.externalTrafficPolicy MongoDB(®) service external traffic policy
  1057. ## ref https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
  1058. ##
  1059. externalTrafficPolicy: Local
  1060. ## @param externalAccess.hidden.service.nodePorts Array of node ports used to configure MongoDB(®) advertised hostname when service type is NodePort. Length must be the same as replicaCount
  1061. ## Example:
  1062. ## nodePorts:
  1063. ## - 30001
  1064. ## - 30002
  1065. ##
  1066. nodePorts: []
  1067. ## @param externalAccess.hidden.service.domain Domain or external IP used to configure MongoDB(®) advertised hostname when service type is NodePort
  1068. ## If not specified, the container will try to get the kubernetes node external IP
  1069. ## e.g:
  1070. ## domain: mydomain.com
  1071. ##
  1072. domain: ""
  1073. ## @param externalAccess.hidden.service.extraPorts Extra ports to expose (normally used with the `sidecar` value)
  1074. ##
  1075. extraPorts: []
  1076. ## @param externalAccess.hidden.service.annotations Service annotations for external access
  1077. ##
  1078. annotations: {}
  1079. ## @param externalAccess.hidden.service.sessionAffinity Control where client requests go, to the same pod or round-robin
  1080. ## Values: ClientIP or None
  1081. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/
  1082. ##
  1083. sessionAffinity: None
  1084. ## @param externalAccess.hidden.service.sessionAffinityConfig Additional settings for the sessionAffinity
  1085. ## sessionAffinityConfig:
  1086. ## clientIP:
  1087. ## timeoutSeconds: 300
  1088. ##
  1089. sessionAffinityConfig: {}
  1090. ## @section Network policy parameters
  1091. ##
  1092. ## Network Policies
  1093. ## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
  1094. ##
  1095. networkPolicy:
  1096. ## @param networkPolicy.enabled Specifies whether a NetworkPolicy should be created
  1097. ##
  1098. enabled: true
  1099. ## @param networkPolicy.allowExternal Don't require server label for connections
  1100. ## The Policy model to apply. When set to false, only pods with the correct
  1101. ## server label will have network access to the ports server is listening
  1102. ## on. When true, server will accept connections from any source
  1103. ## (with the correct destination port).
  1104. ##
  1105. allowExternal: true
  1106. ## @param networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations.
  1107. ##
  1108. allowExternalEgress: true
  1109. ## @param networkPolicy.addExternalClientAccess Allow access from pods with client label set to "true". Ignored if `networkPolicy.allowExternal` is true.
  1110. ##
  1111. addExternalClientAccess: true
  1112. ## @param networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolicy
  1113. ## e.g:
  1114. ## extraIngress:
  1115. ## - ports:
  1116. ## - port: 1234
  1117. ## from:
  1118. ## - podSelector:
  1119. ## - matchLabels:
  1120. ## - role: frontend
  1121. ## - podSelector:
  1122. ## - matchExpressions:
  1123. ## - key: role
  1124. ## operator: In
  1125. ## values:
  1126. ## - frontend
  1127. extraIngress: []
  1128. ## @param networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy
  1129. ## e.g:
  1130. ## extraEgress:
  1131. ## - ports:
  1132. ## - port: 1234
  1133. ## to:
  1134. ## - podSelector:
  1135. ## - matchLabels:
  1136. ## - role: frontend
  1137. ## - podSelector:
  1138. ## - matchExpressions:
  1139. ## - key: role
  1140. ## operator: In
  1141. ## values:
  1142. ## - frontend
  1143. ##
  1144. extraEgress: []
  1145. ## @param networkPolicy.ingressPodMatchLabels [object] Labels to match to allow traffic from other pods. Ignored if `networkPolicy.allowExternal` is true.
  1146. ## e.g:
  1147. ## ingressPodMatchLabels:
  1148. ## my-client: "true"
  1149. #
  1150. ingressPodMatchLabels: {}
  1151. ## @param networkPolicy.ingressNSMatchLabels [object] Labels to match to allow traffic from other namespaces. Ignored if `networkPolicy.allowExternal` is true.
  1152. ## @param networkPolicy.ingressNSPodMatchLabels [object] Pod labels to match to allow traffic from other namespaces. Ignored if `networkPolicy.allowExternal` is true.
  1153. ##
  1154. ingressNSMatchLabels: {}
  1155. ingressNSPodMatchLabels: {}
  1156. persistence:
  1157. ## @param persistence.enabled Enable MongoDB(®) data persistence using PVC
  1158. ##
  1159. enabled: true
  1160. ## @param persistence.name Name of the PVC and mounted volume
  1161. ##
  1162. name: "datadir"
  1163. ## @param persistence.medium Provide a medium for `emptyDir` volumes.
  1164. ## Requires persistence.enabled: false
  1165. ##
  1166. medium: ""
  1167. ## @param persistence.existingClaim Provide an existing `PersistentVolumeClaim` (only when `architecture=standalone`)
  1168. ## Requires persistence.enabled: true
  1169. ## If defined, PVC must be created manually before volume will be bound
  1170. ## Ignored when mongodb.architecture=replicaset
  1171. ##
  1172. existingClaim: ""
  1173. ## @param persistence.resourcePolicy Setting it to "keep" to avoid removing PVCs during a helm delete operation. Leaving it empty will delete PVCs after the chart deleted
  1174. ##
  1175. resourcePolicy: ""
  1176. ## @param persistence.storageClass PVC Storage Class for MongoDB(®) data volume
  1177. ## If defined, storageClassName: <storageClass>
  1178. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  1179. ## If undefined (the default) or set to null, no storageClassName spec is
  1180. ## set, choosing the default provisioner.
  1181. ##
  1182. storageClass: ""
  1183. ## @param persistence.accessModes PV Access Mode
  1184. ##
  1185. accessModes:
  1186. - ReadWriteOnce
  1187. ## @param persistence.size PVC Storage Request for MongoDB(&reg;) data volume
  1188. ##
  1189. size: 8Gi
  1190. ## @param persistence.annotations PVC annotations
  1191. ##
  1192. annotations: {}
  1193. ## @param persistence.labels PVC labels
  1194. ##
  1195. labels: {}
  1196. ## @param persistence.mountPath Path to mount the volume at
  1197. ## MongoDB(&reg;) images.
  1198. ##
  1199. mountPath: /bitnami/mongodb
  1200. ## @param persistence.subPath Subdirectory of the volume to mount at
  1201. ## and one PV for multiple services.
  1202. ##
  1203. subPath: ""
  1204. ## Fine tuning for volumeClaimTemplates
  1205. ##
  1206. volumeClaimTemplates:
  1207. ## @param persistence.volumeClaimTemplates.selector A label query over volumes to consider for binding (e.g. when using local volumes)
  1208. ## A label query over volumes to consider for binding (e.g. when using local volumes)
  1209. ## See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#labelselector-v1-meta for more details
  1210. ##
  1211. selector: {}
  1212. ## @param persistence.volumeClaimTemplates.requests Custom PVC requests attributes
  1213. ## Sometime cloud providers use additional requests attributes to provision custom storage instance
  1214. ## See https://cloud.ibm.com/docs/containers?topic=containers-file_storage#file_dynamic_statefulset
  1215. ##
  1216. requests: {}
  1217. ## @param persistence.volumeClaimTemplates.dataSource Add dataSource to the VolumeClaimTemplate
  1218. ##
  1219. dataSource: {}
  1220. ## Persistent Volume Claim Retention Policy
  1221. ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#persistentvolumeclaim-retention
  1222. ##
  1223. persistentVolumeClaimRetentionPolicy:
  1224. ## @param persistentVolumeClaimRetentionPolicy.enabled Enable Persistent volume retention policy for MongoDB(&reg;) Statefulset
  1225. ##
  1226. enabled: false
  1227. ## @param persistentVolumeClaimRetentionPolicy.whenScaled Volume retention behavior when the replica count of the StatefulSet is reduced
  1228. ##
  1229. whenScaled: Retain
  1230. ## @param persistentVolumeClaimRetentionPolicy.whenDeleted Volume retention behavior that applies when the StatefulSet is deleted
  1231. ##
  1232. whenDeleted: Retain
  1233. ## @section Backup parameters
  1234. ## This section implements a trivial logical dump cronjob of the database.
  1235. ## This only comes with the consistency guarantees of the dump program.
  1236. ## This is not a snapshot based roll forward/backward recovery backup.
  1237. ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/
  1238. ##
  1239. backup:
  1240. ## @param backup.enabled Enable the logical dump of the database "regularly"
  1241. ##
  1242. enabled: false
  1243. ## Fine tuning cronjob's config
  1244. ##
  1245. cronjob:
  1246. ## @param backup.cronjob.schedule Set the cronjob parameter schedule
  1247. ##
  1248. schedule: "@daily"
  1249. ## @param backup.cronjob.concurrencyPolicy Set the cronjob parameter concurrencyPolicy
  1250. ##
  1251. concurrencyPolicy: Allow
  1252. ## @param backup.cronjob.failedJobsHistoryLimit Set the cronjob parameter failedJobsHistoryLimit
  1253. ##
  1254. failedJobsHistoryLimit: 1
  1255. ## @param backup.cronjob.successfulJobsHistoryLimit Set the cronjob parameter successfulJobsHistoryLimit
  1256. ##
  1257. successfulJobsHistoryLimit: 3
  1258. ## @param backup.cronjob.startingDeadlineSeconds Set the cronjob parameter startingDeadlineSeconds
  1259. ##
  1260. startingDeadlineSeconds: ""
  1261. ## @param backup.cronjob.ttlSecondsAfterFinished Set the cronjob parameter ttlSecondsAfterFinished
  1262. ##
  1263. ttlSecondsAfterFinished: ""
  1264. ## @param backup.cronjob.restartPolicy Set the cronjob parameter restartPolicy
  1265. ##
  1266. restartPolicy: OnFailure
  1267. ## @param backup.cronjob.backoffLimit Set the cronjob parameter backoffLimit
  1268. backoffLimit: 6
  1269. ## backup container's Security Context
  1270. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
  1271. ## @param backup.cronjob.containerSecurityContext.enabled Enabled containers' Security Context
  1272. ## @param backup.cronjob.containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container
  1273. ## @param backup.cronjob.containerSecurityContext.runAsUser Set containers' Security Context runAsUser
  1274. ## @param backup.cronjob.containerSecurityContext.runAsGroup Set containers' Security Context runAsGroup
  1275. ## @param backup.cronjob.containerSecurityContext.runAsNonRoot Set container's Security Context runAsNonRoot
  1276. ## @param backup.cronjob.containerSecurityContext.privileged Set container's Security Context privileged
  1277. ## @param backup.cronjob.containerSecurityContext.readOnlyRootFilesystem Set container's Security Context readOnlyRootFilesystem
  1278. ## @param backup.cronjob.containerSecurityContext.allowPrivilegeEscalation Set container's Security Context allowPrivilegeEscalation
  1279. ## @param backup.cronjob.containerSecurityContext.capabilities.drop List of capabilities to be dropped
  1280. ## @param backup.cronjob.containerSecurityContext.seccompProfile.type Set container's Security Context seccomp profile
  1281. ##
  1282. containerSecurityContext:
  1283. enabled: true
  1284. seLinuxOptions: {}
  1285. runAsUser: 1001
  1286. runAsGroup: 1001
  1287. runAsNonRoot: true
  1288. privileged: false
  1289. readOnlyRootFilesystem: true
  1290. allowPrivilegeEscalation: false
  1291. capabilities:
  1292. drop: ["ALL"]
  1293. seccompProfile:
  1294. type: "RuntimeDefault"
  1295. ## @param backup.cronjob.command Set backup container's command to run
  1296. ##
  1297. command: []
  1298. ## @param backup.cronjob.labels Set the cronjob labels
  1299. ##
  1300. labels: {}
  1301. ## @param backup.cronjob.annotations Set the cronjob annotations
  1302. ##
  1303. annotations: {}
  1304. ## Backup container's
  1305. ##
  1306. storage:
  1307. ## @param backup.cronjob.storage.existingClaim Provide an existing `PersistentVolumeClaim` (only when `architecture=standalone`)
  1308. ## If defined, PVC must be created manually before volume will be bound
  1309. ##
  1310. existingClaim: ""
  1311. ## @param backup.cronjob.storage.resourcePolicy Setting it to "keep" to avoid removing PVCs during a helm delete operation. Leaving it empty will delete PVCs after the chart deleted
  1312. ##
  1313. resourcePolicy: ""
  1314. ## @param backup.cronjob.storage.storageClass PVC Storage Class for the backup data volume
  1315. ## If defined, storageClassName: <storageClass>
  1316. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  1317. ## If undefined (the default) or set to null, no storageClassName spec is
  1318. ## set, choosing the default provisioner.
  1319. ##
  1320. storageClass: ""
  1321. ## @param backup.cronjob.storage.accessModes PV Access Mode
  1322. ##
  1323. accessModes:
  1324. - ReadWriteOnce
  1325. ## @param backup.cronjob.storage.size PVC Storage Request for the backup data volume
  1326. ##
  1327. size: 8Gi
  1328. ## @param backup.cronjob.storage.annotations PVC annotations
  1329. ##
  1330. annotations: {}
  1331. ## @param backup.cronjob.storage.mountPath Path to mount the volume at
  1332. ##
  1333. mountPath: /backup/mongodb
  1334. ## @param backup.cronjob.storage.subPath Subdirectory of the volume to mount at
  1335. ## and one PV for multiple services.
  1336. ##
  1337. subPath: ""
  1338. ## Fine tuning for volumeClaimTemplates
  1339. ##
  1340. volumeClaimTemplates:
  1341. ## @param backup.cronjob.storage.volumeClaimTemplates.selector A label query over volumes to consider for binding (e.g. when using local volumes)
  1342. ## A label query over volumes to consider for binding (e.g. when using local volumes)
  1343. ## See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#labelselector-v1-meta for more details
  1344. ##
  1345. selector: {}
  1346. ## @section RBAC parameters
  1347. ##
  1348. ## ServiceAccount
  1349. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
  1350. ##
  1351. serviceAccount:
  1352. ## @param serviceAccount.create Enable creation of ServiceAccount for MongoDB(&reg;) pods
  1353. ##
  1354. create: true
  1355. ## @param serviceAccount.name Name of the created serviceAccount
  1356. ## If not set and create is true, a name is generated using the mongodb.fullname template
  1357. ##
  1358. name: ""
  1359. ## @param serviceAccount.annotations Additional Service Account annotations
  1360. ##
  1361. annotations: {}
  1362. ## @param serviceAccount.automountServiceAccountToken Allows auto mount of ServiceAccountToken on the serviceAccount created
  1363. ## Can be set to false if pods using this serviceAccount do not need to use K8s API
  1364. ##
  1365. automountServiceAccountToken: false
  1366. ## Role Based Access
  1367. ## ref: https://kubernetes.io/docs/admin/authorization/rbac/
  1368. ##
  1369. rbac:
  1370. ## @param rbac.create Whether to create & use RBAC resources or not
  1371. ## binding MongoDB(&reg;) ServiceAccount to a role
  1372. ## that allows MongoDB(&reg;) pods querying the K8s API
  1373. ## this needs to be set to 'true' to enable the mongo-labeler sidecar primary mongodb discovery
  1374. ##
  1375. create: false
  1376. ## @param rbac.rules Custom rules to create following the role specification
  1377. ## The example below needs to be uncommented to use the 'mongo-labeler' sidecar for dynamic discovery of the primary mongodb pod:
  1378. ## rules:
  1379. ## - apiGroups:
  1380. ## - ""
  1381. ## resources:
  1382. ## - pods
  1383. ## verbs:
  1384. ## - get
  1385. ## - list
  1386. ## - watch
  1387. ## - update
  1388. ##
  1389. rules: []
  1390. ## PodSecurityPolicy configuration
  1391. ## Be sure to also set rbac.create to true, otherwise Role and RoleBinding won't be created.
  1392. ## ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/
  1393. ##
  1394. podSecurityPolicy:
  1395. ## @param podSecurityPolicy.create Whether to create a PodSecurityPolicy. WARNING: PodSecurityPolicy is deprecated in Kubernetes v1.21 or later, unavailable in v1.25 or later
  1396. ##
  1397. create: false
  1398. ## @param podSecurityPolicy.allowPrivilegeEscalation Enable privilege escalation
  1399. ## Either use predefined policy with some adjustments or use `podSecurityPolicy.spec`
  1400. ##
  1401. allowPrivilegeEscalation: false
  1402. ## @param podSecurityPolicy.privileged Allow privileged
  1403. ##
  1404. privileged: false
  1405. ## @param podSecurityPolicy.spec Specify the full spec to use for Pod Security Policy
  1406. ## ref: https://kubernetes.io/docs/concepts/policy/pod-security-policy/
  1407. ## Defining a spec ignores the above values.
  1408. ##
  1409. spec: {}
  1410. ## Example:
  1411. ## allowPrivilegeEscalation: false
  1412. ## fsGroup:
  1413. ## rule: 'MustRunAs'
  1414. ## ranges:
  1415. ## - min: 1001
  1416. ## max: 1001
  1417. ## hostIPC: false
  1418. ## hostNetwork: false
  1419. ## hostPID: false
  1420. ## privileged: false
  1421. ## readOnlyRootFilesystem: true
  1422. ## requiredDropCapabilities:
  1423. ## - ALL
  1424. ## runAsUser:
  1425. ## rule: 'MustRunAs'
  1426. ## ranges:
  1427. ## - min: 1001
  1428. ## max: 1001
  1429. ## seLinux:
  1430. ## rule: 'RunAsAny'
  1431. ## supplementalGroups:
  1432. ## rule: 'MustRunAs'
  1433. ## ranges:
  1434. ## - min: 1001
  1435. ## max: 1001
  1436. ## volumes:
  1437. ## - 'configMap'
  1438. ## - 'secret'
  1439. ## - 'emptyDir'
  1440. ## - 'persistentVolumeClaim'
  1441. ##
  1442. ## @section Volume Permissions parameters
  1443. ##
  1444. ## Init Container parameters
  1445. ## Change the owner and group of the persistent volume(s) mountpoint(s) to 'runAsUser:fsGroup' on each component
  1446. ## values from the securityContext section of the component
  1447. ##
  1448. volumePermissions:
  1449. ## @param volumePermissions.enabled Enable init container that changes the owner and group of the persistent volume(s) mountpoint to `runAsUser:fsGroup`
  1450. ##
  1451. enabled: false
  1452. ## @param volumePermissions.image.registry [default: REGISTRY_NAME] Init container volume-permissions image registry
  1453. ## @param volumePermissions.image.repository [default: REPOSITORY_NAME/os-shell] Init container volume-permissions image repository
  1454. ## @skip volumePermissions.image.tag Init container volume-permissions image tag (immutable tags are recommended)
  1455. ## @param volumePermissions.image.digest Init container volume-permissions image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
  1456. ## @param volumePermissions.image.pullPolicy Init container volume-permissions image pull policy
  1457. ## @param volumePermissions.image.pullSecrets Specify docker-registry secret names as an array
  1458. ##
  1459. image:
  1460. registry: docker.io
  1461. repository: bitnami/os-shell
  1462. tag: 12-debian-12-r30
  1463. digest: ""
  1464. ## Specify a imagePullPolicy
  1465. ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
  1466. ## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images
  1467. ##
  1468. pullPolicy: IfNotPresent
  1469. ## Optionally specify an array of imagePullSecrets (secrets must be manually created in the namespace)
  1470. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  1471. ## Example:
  1472. ## pullSecrets:
  1473. ## - myRegistryKeySecretName
  1474. ##
  1475. pullSecrets: []
  1476. ## Init Container resource requests and limits
  1477. ## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
  1478. ## We usually recommend not to specify default resources and to leave this as a conscious
  1479. ## choice for the user. This also increases chances charts run on environments with little
  1480. ## resources, such as Minikube. If you do want to specify resources, uncomment the following
  1481. ## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  1482. ## @param volumePermissions.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if volumePermissions.resources is set (volumePermissions.resources is recommended for production).
  1483. ## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
  1484. ##
  1485. resourcesPreset: "nano"
  1486. ## @param volumePermissions.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
  1487. ## Example:
  1488. ## resources:
  1489. ## requests:
  1490. ## cpu: 2
  1491. ## memory: 512Mi
  1492. ## limits:
  1493. ## cpu: 3
  1494. ## memory: 1024Mi
  1495. ##
  1496. resources: {}
  1497. ## Init container Security Context
  1498. ## Note: the chown of the data folder is done to containerSecurityContext.runAsUser
  1499. ## and not the below volumePermissions.securityContext.runAsUser
  1500. ## When runAsUser is set to special value "auto", init container will try to chwon the
  1501. ## data folder to autodetermined user&group, using commands: `id -u`:`id -G | cut -d" " -f2`
  1502. ## "auto" is especially useful for OpenShift which has scc with dynamic userids (and 0 is not allowed).
  1503. ## You may want to use this volumePermissions.securityContext.runAsUser="auto" in combination with
  1504. ## podSecurityContext.enabled=false,containerSecurityContext.enabled=false and shmVolume.chmod.enabled=false
  1505. ## @param volumePermissions.securityContext.seLinuxOptions [object,nullable] Set SELinux options in container
  1506. ## @param volumePermissions.securityContext.runAsUser User ID for the volumePermissions container
  1507. ##
  1508. securityContext:
  1509. seLinuxOptions: {}
  1510. runAsUser: 0
  1511. ## @section Arbiter parameters
  1512. ##
  1513. arbiter:
  1514. ## @param arbiter.enabled Enable deploying the arbiter
  1515. ## https://docs.mongodb.com/manual/tutorial/add-replica-set-arbiter/
  1516. ##
  1517. enabled: false
  1518. ## @param arbiter.automountServiceAccountToken Mount Service Account token in pod
  1519. ##
  1520. automountServiceAccountToken: false
  1521. ## @param arbiter.hostAliases Add deployment host aliases
  1522. ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
  1523. ##
  1524. hostAliases: []
  1525. ## @param arbiter.configuration Arbiter configuration file to be used
  1526. ## http://docs.mongodb.org/manual/reference/configuration-options/
  1527. ##
  1528. configuration: ""
  1529. ## @param arbiter.existingConfigmap Name of existing ConfigMap with Arbiter configuration
  1530. ## NOTE: When it's set the arbiter.configuration parameter is ignored
  1531. ##
  1532. existingConfigmap: ""
  1533. ## Command and args for running the container (set to default if not set). Use array form
  1534. ## @param arbiter.command Override default container command (useful when using custom images)
  1535. ## @param arbiter.args Override default container args (useful when using custom images)
  1536. ##
  1537. command: []
  1538. args: []
  1539. ## @param arbiter.extraFlags Arbiter additional command line flags
  1540. ## Example:
  1541. ## extraFlags:
  1542. ## - "--wiredTigerCacheSizeGB=2"
  1543. ##
  1544. extraFlags: []
  1545. ## @param arbiter.extraEnvVars Extra environment variables to add to Arbiter pods
  1546. ## E.g:
  1547. ## extraEnvVars:
  1548. ## - name: FOO
  1549. ## value: BAR
  1550. ##
  1551. extraEnvVars: []
  1552. ## @param arbiter.extraEnvVarsCM Name of existing ConfigMap containing extra env vars
  1553. ##
  1554. extraEnvVarsCM: ""
  1555. ## @param arbiter.extraEnvVarsSecret Name of existing Secret containing extra env vars (in case of sensitive data)
  1556. ##
  1557. extraEnvVarsSecret: ""
  1558. ## @param arbiter.annotations Additional labels to be added to the Arbiter statefulset
  1559. ##
  1560. annotations: {}
  1561. ## @param arbiter.labels Annotations to be added to the Arbiter statefulset
  1562. ##
  1563. labels: {}
  1564. ## @param arbiter.topologySpreadConstraints MongoDB(&reg;) Spread Constraints for arbiter Pods
  1565. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
  1566. ##
  1567. topologySpreadConstraints: []
  1568. ## @param arbiter.lifecycleHooks LifecycleHook for the Arbiter container to automate configuration before or after startup
  1569. ##
  1570. lifecycleHooks: {}
  1571. ## @param arbiter.terminationGracePeriodSeconds Arbiter Termination Grace Period
  1572. ##
  1573. terminationGracePeriodSeconds: ""
  1574. ## @param arbiter.updateStrategy.type Strategy that will be employed to update Pods in the StatefulSet
  1575. ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies
  1576. ## updateStrategy:
  1577. ## type: RollingUpdate
  1578. ## rollingUpdate:
  1579. ## maxSurge: 25%
  1580. ## maxUnavailable: 25%
  1581. ##
  1582. updateStrategy:
  1583. type: RollingUpdate
  1584. ## @param arbiter.podManagementPolicy Pod management policy for MongoDB(&reg;)
  1585. ## Should be initialized one by one when building the replicaset for the first time
  1586. ##
  1587. podManagementPolicy: OrderedReady
  1588. ## @param arbiter.schedulerName Name of the scheduler (other than default) to dispatch pods
  1589. ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
  1590. ##
  1591. schedulerName: ""
  1592. ## @param arbiter.podAffinityPreset Arbiter Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  1593. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
  1594. ##
  1595. podAffinityPreset: ""
  1596. ## @param arbiter.podAntiAffinityPreset Arbiter Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  1597. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
  1598. ##
  1599. podAntiAffinityPreset: soft
  1600. ## Node affinity preset
  1601. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
  1602. ##
  1603. nodeAffinityPreset:
  1604. ## @param arbiter.nodeAffinityPreset.type Arbiter Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  1605. ##
  1606. type: ""
  1607. ## @param arbiter.nodeAffinityPreset.key Arbiter Node label key to match Ignored if `affinity` is set.
  1608. ## E.g.
  1609. ## key: "kubernetes.io/e2e-az-name"
  1610. ##
  1611. key: ""
  1612. ## @param arbiter.nodeAffinityPreset.values Arbiter Node label values to match. Ignored if `affinity` is set.
  1613. ## E.g.
  1614. ## values:
  1615. ## - e2e-az1
  1616. ## - e2e-az2
  1617. ##
  1618. values: []
  1619. ## @param arbiter.affinity Arbiter Affinity for pod assignment
  1620. ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
  1621. ## Note: arbiter.podAffinityPreset, arbiter.podAntiAffinityPreset, and arbiter.nodeAffinityPreset will be ignored when it's set
  1622. ##
  1623. affinity: {}
  1624. ## @param arbiter.nodeSelector Arbiter Node labels for pod assignment
  1625. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
  1626. ##
  1627. nodeSelector: {}
  1628. ## @param arbiter.tolerations Arbiter Tolerations for pod assignment
  1629. ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
  1630. ##
  1631. tolerations: []
  1632. ## @param arbiter.podLabels Arbiter pod labels
  1633. ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
  1634. ##
  1635. podLabels: {}
  1636. ## @param arbiter.podAnnotations Arbiter Pod annotations
  1637. ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
  1638. ##
  1639. podAnnotations: {}
  1640. ## @param arbiter.priorityClassName Name of the existing priority class to be used by Arbiter pod(s)
  1641. ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
  1642. ##
  1643. priorityClassName: ""
  1644. ## @param arbiter.runtimeClassName Name of the runtime class to be used by Arbiter pod(s)
  1645. ## ref: https://kubernetes.io/docs/concepts/containers/runtime-class/
  1646. ##
  1647. runtimeClassName: ""
  1648. ## MongoDB(&reg;) Arbiter pods' Security Context.
  1649. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
  1650. ## @param arbiter.podSecurityContext.enabled Enable Arbiter pod(s)' Security Context
  1651. ## @param arbiter.podSecurityContext.fsGroupChangePolicy Set filesystem group change policy
  1652. ## @param arbiter.podSecurityContext.supplementalGroups Set filesystem extra groups
  1653. ## @param arbiter.podSecurityContext.fsGroup Group ID for the volumes of the Arbiter pod(s)
  1654. ## @param arbiter.podSecurityContext.sysctls sysctl settings of the Arbiter pod(s)'
  1655. ##
  1656. podSecurityContext:
  1657. enabled: true
  1658. fsGroupChangePolicy: Always
  1659. supplementalGroups: []
  1660. fsGroup: 1001
  1661. ## sysctl settings
  1662. ## Example:
  1663. ## sysctls:
  1664. ## - name: net.core.somaxconn
  1665. ## value: "10000"
  1666. ##
  1667. sysctls: []
  1668. ## MongoDB(&reg;) Arbiter containers' Security Context (only main container).
  1669. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
  1670. ## @param arbiter.containerSecurityContext.enabled Enabled containers' Security Context
  1671. ## @param arbiter.containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container
  1672. ## @param arbiter.containerSecurityContext.runAsUser Set containers' Security Context runAsUser
  1673. ## @param arbiter.containerSecurityContext.runAsGroup Set containers' Security Context runAsGroup
  1674. ## @param arbiter.containerSecurityContext.runAsNonRoot Set container's Security Context runAsNonRoot
  1675. ## @param arbiter.containerSecurityContext.privileged Set container's Security Context privileged
  1676. ## @param arbiter.containerSecurityContext.readOnlyRootFilesystem Set container's Security Context readOnlyRootFilesystem
  1677. ## @param arbiter.containerSecurityContext.allowPrivilegeEscalation Set container's Security Context allowPrivilegeEscalation
  1678. ## @param arbiter.containerSecurityContext.capabilities.drop List of capabilities to be dropped
  1679. ## @param arbiter.containerSecurityContext.seccompProfile.type Set container's Security Context seccomp profile
  1680. ##
  1681. containerSecurityContext:
  1682. enabled: true
  1683. seLinuxOptions: {}
  1684. runAsUser: 1001
  1685. runAsGroup: 1001
  1686. runAsNonRoot: true
  1687. privileged: false
  1688. readOnlyRootFilesystem: true
  1689. allowPrivilegeEscalation: false
  1690. capabilities:
  1691. drop: ["ALL"]
  1692. seccompProfile:
  1693. type: "RuntimeDefault"
  1694. ## MongoDB(&reg;) Arbiter containers' resource requests and limits.
  1695. ## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
  1696. ## We usually recommend not to specify default resources and to leave this as a conscious
  1697. ## choice for the user. This also increases chances charts run on environments with little
  1698. ## resources, such as Minikube. If you do want to specify resources, uncomment the following
  1699. ## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  1700. ## @param arbiter.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if arbiter.resources is set (arbiter.resources is recommended for production).
  1701. ## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
  1702. ##
  1703. resourcesPreset: "small"
  1704. ## @param arbiter.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
  1705. ## Example:
  1706. ## resources:
  1707. ## requests:
  1708. ## cpu: 2
  1709. ## memory: 512Mi
  1710. ## limits:
  1711. ## cpu: 3
  1712. ## memory: 1024Mi
  1713. ##
  1714. resources: {}
  1715. ## @param arbiter.containerPorts.mongodb MongoDB(&reg;) arbiter container port
  1716. ##
  1717. containerPorts:
  1718. mongodb: 27017
  1719. ## MongoDB(&reg;) Arbiter pods' liveness probe. Evaluated as a template.
  1720. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
  1721. ## @param arbiter.livenessProbe.enabled Enable livenessProbe
  1722. ## @param arbiter.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
  1723. ## @param arbiter.livenessProbe.periodSeconds Period seconds for livenessProbe
  1724. ## @param arbiter.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
  1725. ## @param arbiter.livenessProbe.failureThreshold Failure threshold for livenessProbe
  1726. ## @param arbiter.livenessProbe.successThreshold Success threshold for livenessProbe
  1727. ##
  1728. livenessProbe:
  1729. enabled: true
  1730. initialDelaySeconds: 30
  1731. periodSeconds: 20
  1732. timeoutSeconds: 10
  1733. failureThreshold: 6
  1734. successThreshold: 1
  1735. ## MongoDB(&reg;) Arbiter pods' readiness probe. Evaluated as a template.
  1736. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
  1737. ## @param arbiter.readinessProbe.enabled Enable readinessProbe
  1738. ## @param arbiter.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe
  1739. ## @param arbiter.readinessProbe.periodSeconds Period seconds for readinessProbe
  1740. ## @param arbiter.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe
  1741. ## @param arbiter.readinessProbe.failureThreshold Failure threshold for readinessProbe
  1742. ## @param arbiter.readinessProbe.successThreshold Success threshold for readinessProbe
  1743. ##
  1744. readinessProbe:
  1745. enabled: true
  1746. initialDelaySeconds: 5
  1747. periodSeconds: 20
  1748. timeoutSeconds: 10
  1749. failureThreshold: 6
  1750. successThreshold: 1
  1751. ## MongoDB(&reg;) Arbiter pods' startup probe. Evaluated as a template.
  1752. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
  1753. ## @param arbiter.startupProbe.enabled Enable startupProbe
  1754. ## @param arbiter.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe
  1755. ## @param arbiter.startupProbe.periodSeconds Period seconds for startupProbe
  1756. ## @param arbiter.startupProbe.timeoutSeconds Timeout seconds for startupProbe
  1757. ## @param arbiter.startupProbe.failureThreshold Failure threshold for startupProbe
  1758. ## @param arbiter.startupProbe.successThreshold Success threshold for startupProbe
  1759. ##
  1760. startupProbe:
  1761. enabled: false
  1762. initialDelaySeconds: 5
  1763. periodSeconds: 10
  1764. timeoutSeconds: 5
  1765. successThreshold: 1
  1766. failureThreshold: 30
  1767. ## @param arbiter.customLivenessProbe Override default liveness probe for Arbiter containers
  1768. ## Ignored when arbiter.livenessProbe.enabled=true
  1769. ##
  1770. customLivenessProbe: {}
  1771. ## @param arbiter.customReadinessProbe Override default readiness probe for Arbiter containers
  1772. ## Ignored when arbiter.readinessProbe.enabled=true
  1773. ##
  1774. customReadinessProbe: {}
  1775. ## @param arbiter.customStartupProbe Override default startup probe for Arbiter containers
  1776. ## Ignored when arbiter.startupProbe.enabled=true
  1777. ##
  1778. customStartupProbe: {}
  1779. ## @param arbiter.initContainers Add additional init containers for the Arbiter pod(s)
  1780. ## Example:
  1781. ## initContainers:
  1782. ## - name: your-image-name
  1783. ## image: your-image
  1784. ## imagePullPolicy: Always
  1785. ## ports:
  1786. ## - name: portname
  1787. ## containerPort: 1234
  1788. ##
  1789. initContainers: []
  1790. ## @param arbiter.sidecars Add additional sidecar containers for the Arbiter pod(s)
  1791. ## Example:
  1792. ## sidecars:
  1793. ## - name: your-image-name
  1794. ## image: your-image
  1795. ## imagePullPolicy: Always
  1796. ## ports:
  1797. ## - name: portname
  1798. ## containerPort: 1234
  1799. ##
  1800. sidecars: []
  1801. ## @param arbiter.extraVolumeMounts Optionally specify extra list of additional volumeMounts for the Arbiter container(s)
  1802. ## Examples:
  1803. ## extraVolumeMounts:
  1804. ## - name: extras
  1805. ## mountPath: /usr/share/extras
  1806. ## readOnly: true
  1807. ##
  1808. extraVolumeMounts: []
  1809. ## @param arbiter.extraVolumes Optionally specify extra list of additional volumes to the Arbiter statefulset
  1810. ## extraVolumes:
  1811. ## - name: extras
  1812. ## emptyDir: {}
  1813. ##
  1814. extraVolumes: []
  1815. ## MongoDB(&reg;) Arbiter Pod Disruption Budget configuration
  1816. ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
  1817. ##
  1818. pdb:
  1819. ## @param arbiter.pdb.create Enable/disable a Pod Disruption Budget creation for Arbiter pod(s)
  1820. ##
  1821. create: true
  1822. ## @param arbiter.pdb.minAvailable Minimum number/percentage of Arbiter pods that should remain scheduled
  1823. ##
  1824. minAvailable: ""
  1825. ## @param arbiter.pdb.maxUnavailable Maximum number/percentage of Arbiter pods that may be made unavailable. Defaults to `1` if both `arbiter.pdb.minAvailable` and `arbiter.pdb.maxUnavailable` are empty.
  1826. ##
  1827. maxUnavailable: ""
  1828. ## MongoDB(&reg;) Arbiter service parameters
  1829. ##
  1830. service:
  1831. ## @param arbiter.service.nameOverride The arbiter service name
  1832. ##
  1833. nameOverride: ""
  1834. ## @param arbiter.service.ports.mongodb MongoDB(&reg;) service port
  1835. ##
  1836. ports:
  1837. mongodb: 27017
  1838. ## @param arbiter.service.extraPorts Extra ports to expose (normally used with the `sidecar` value)
  1839. ##
  1840. extraPorts: []
  1841. ## @param arbiter.service.annotations Provide any additional annotations that may be required
  1842. ##
  1843. annotations: {}
  1844. ## Headless service properties
  1845. ##
  1846. headless:
  1847. ## @param arbiter.service.headless.annotations Annotations for the headless service.
  1848. ##
  1849. annotations: {}
  1850. ## @section Hidden Node parameters
  1851. ##
  1852. hidden:
  1853. ## @param hidden.enabled Enable deploying the hidden nodes
  1854. ## https://docs.mongodb.com/manual/tutorial/configure-a-hidden-replica-set-member/
  1855. ##
  1856. enabled: false
  1857. ## @param hidden.automountServiceAccountToken Mount Service Account token in pod
  1858. ##
  1859. automountServiceAccountToken: false
  1860. ## @param hidden.hostAliases Add deployment host aliases
  1861. ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
  1862. ##
  1863. hostAliases: []
  1864. ## @param hidden.configuration Hidden node configuration file to be used
  1865. ## http://docs.mongodb.org/manual/reference/configuration-options/
  1866. ##
  1867. configuration: ""
  1868. ## @param hidden.existingConfigmap Name of existing ConfigMap with Hidden node configuration
  1869. ## NOTE: When it's set the hidden.configuration parameter is ignored
  1870. ##
  1871. existingConfigmap: ""
  1872. ## Command and args for running the container (set to default if not set). Use array form
  1873. ## @param hidden.command Override default container command (useful when using custom images)
  1874. ## @param hidden.args Override default container args (useful when using custom images)
  1875. ##
  1876. command: []
  1877. args: []
  1878. ## @param hidden.extraFlags Hidden node additional command line flags
  1879. ## Example:
  1880. ## extraFlags:
  1881. ## - "--wiredTigerCacheSizeGB=2"
  1882. ##
  1883. extraFlags: []
  1884. ## @param hidden.extraEnvVars Extra environment variables to add to Hidden node pods
  1885. ## E.g:
  1886. ## extraEnvVars:
  1887. ## - name: FOO
  1888. ## value: BAR
  1889. ##
  1890. extraEnvVars: []
  1891. ## @param hidden.extraEnvVarsCM Name of existing ConfigMap containing extra env vars
  1892. ##
  1893. extraEnvVarsCM: ""
  1894. ## @param hidden.extraEnvVarsSecret Name of existing Secret containing extra env vars (in case of sensitive data)
  1895. ##
  1896. extraEnvVarsSecret: ""
  1897. ## @param hidden.annotations Additional labels to be added to thehidden node statefulset
  1898. ##
  1899. annotations: {}
  1900. ## @param hidden.labels Annotations to be added to the hidden node statefulset
  1901. ##
  1902. labels: {}
  1903. ## @param hidden.topologySpreadConstraints MongoDB(&reg;) Spread Constraints for hidden Pods
  1904. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
  1905. ##
  1906. topologySpreadConstraints: []
  1907. ## @param hidden.lifecycleHooks LifecycleHook for the Hidden container to automate configuration before or after startup
  1908. ##
  1909. lifecycleHooks: {}
  1910. ## @param hidden.replicaCount Number of hidden nodes (only when `architecture=replicaset`)
  1911. ## Ignored when mongodb.architecture=standalone
  1912. ##
  1913. replicaCount: 1
  1914. ## @param hidden.terminationGracePeriodSeconds Hidden Termination Grace Period
  1915. ##
  1916. terminationGracePeriodSeconds: ""
  1917. ## @param hidden.updateStrategy.type Strategy that will be employed to update Pods in the StatefulSet
  1918. ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies
  1919. ## updateStrategy:
  1920. ## type: RollingUpdate
  1921. ## rollingUpdate:
  1922. ## maxSurge: 25%
  1923. ## maxUnavailable: 25%
  1924. ##
  1925. updateStrategy:
  1926. type: RollingUpdate
  1927. ## @param hidden.podManagementPolicy Pod management policy for hidden node
  1928. ##
  1929. podManagementPolicy: OrderedReady
  1930. ## @param hidden.schedulerName Name of the scheduler (other than default) to dispatch pods
  1931. ## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
  1932. ##
  1933. schedulerName: ""
  1934. ## @param hidden.podAffinityPreset Hidden node Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  1935. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
  1936. ##
  1937. podAffinityPreset: ""
  1938. ## @param hidden.podAntiAffinityPreset Hidden node Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  1939. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
  1940. ##
  1941. podAntiAffinityPreset: soft
  1942. ## Node affinity preset
  1943. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
  1944. ## Allowed values: soft, hard
  1945. ##
  1946. nodeAffinityPreset:
  1947. ## @param hidden.nodeAffinityPreset.type Hidden Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
  1948. ##
  1949. type: ""
  1950. ## @param hidden.nodeAffinityPreset.key Hidden Node label key to match Ignored if `affinity` is set.
  1951. ## E.g.
  1952. ## key: "kubernetes.io/e2e-az-name"
  1953. ##
  1954. key: ""
  1955. ## @param hidden.nodeAffinityPreset.values Hidden Node label values to match. Ignored if `affinity` is set.
  1956. ## E.g.
  1957. ## values:
  1958. ## - e2e-az1
  1959. ## - e2e-az2
  1960. ##
  1961. values: []
  1962. ## @param hidden.affinity Hidden node Affinity for pod assignment
  1963. ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
  1964. ## Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set
  1965. ##
  1966. affinity: {}
  1967. ## @param hidden.nodeSelector Hidden node Node labels for pod assignment
  1968. ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
  1969. ##
  1970. nodeSelector: {}
  1971. ## @param hidden.tolerations Hidden node Tolerations for pod assignment
  1972. ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
  1973. ##
  1974. tolerations: []
  1975. ## @param hidden.podLabels Hidden node pod labels
  1976. ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
  1977. ##
  1978. podLabels: {}
  1979. ## @param hidden.podAnnotations Hidden node Pod annotations
  1980. ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
  1981. ##
  1982. podAnnotations: {}
  1983. ## @param hidden.priorityClassName Name of the existing priority class to be used by hidden node pod(s)
  1984. ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
  1985. ##
  1986. priorityClassName: ""
  1987. ## @param hidden.runtimeClassName Name of the runtime class to be used by hidden node pod(s)
  1988. ## ref: https://kubernetes.io/docs/concepts/containers/runtime-class/
  1989. ##
  1990. runtimeClassName: ""
  1991. ## MongoDB(&reg;) Hidden pods' Security Context.
  1992. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
  1993. ## @param hidden.podSecurityContext.enabled Enable Hidden pod(s)' Security Context
  1994. ## @param hidden.podSecurityContext.fsGroupChangePolicy Set filesystem group change policy
  1995. ## @param hidden.podSecurityContext.supplementalGroups Set filesystem extra groups
  1996. ## @param hidden.podSecurityContext.fsGroup Group ID for the volumes of the Hidden pod(s)
  1997. ## @param hidden.podSecurityContext.sysctls sysctl settings of the Hidden pod(s)'
  1998. ##
  1999. podSecurityContext:
  2000. enabled: true
  2001. fsGroupChangePolicy: Always
  2002. supplementalGroups: []
  2003. fsGroup: 1001
  2004. ## sysctl settings
  2005. ## Example:
  2006. ## sysctls:
  2007. ## - name: net.core.somaxconn
  2008. ## value: "10000"
  2009. ##
  2010. sysctls: []
  2011. ## MongoDB(&reg;) Hidden containers' Security Context (only main container).
  2012. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
  2013. ## @param hidden.containerSecurityContext.enabled Enabled containers' Security Context
  2014. ## @param hidden.containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container
  2015. ## @param hidden.containerSecurityContext.runAsUser Set containers' Security Context runAsUser
  2016. ## @param hidden.containerSecurityContext.runAsGroup Set containers' Security Context runAsGroup
  2017. ## @param hidden.containerSecurityContext.runAsNonRoot Set container's Security Context runAsNonRoot
  2018. ## @param hidden.containerSecurityContext.privileged Set container's Security Context privileged
  2019. ## @param hidden.containerSecurityContext.readOnlyRootFilesystem Set container's Security Context readOnlyRootFilesystem
  2020. ## @param hidden.containerSecurityContext.allowPrivilegeEscalation Set container's Security Context allowPrivilegeEscalation
  2021. ## @param hidden.containerSecurityContext.capabilities.drop List of capabilities to be dropped
  2022. ## @param hidden.containerSecurityContext.seccompProfile.type Set container's Security Context seccomp profile
  2023. ##
  2024. containerSecurityContext:
  2025. enabled: true
  2026. seLinuxOptions: {}
  2027. runAsUser: 1001
  2028. runAsGroup: 1001
  2029. runAsNonRoot: true
  2030. privileged: false
  2031. readOnlyRootFilesystem: true
  2032. allowPrivilegeEscalation: false
  2033. capabilities:
  2034. drop: ["ALL"]
  2035. seccompProfile:
  2036. type: "RuntimeDefault"
  2037. ## MongoDB(&reg;) Hidden containers' resource requests and limits.
  2038. ## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
  2039. ## We usually recommend not to specify default resources and to leave this as a conscious
  2040. ## choice for the user. This also increases chances charts run on environments with little
  2041. ## resources, such as Minikube. If you do want to specify resources, uncomment the following
  2042. ## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  2043. ## @param hidden.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if hidden.resources is set (hidden.resources is recommended for production).
  2044. ## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
  2045. ##
  2046. resourcesPreset: "micro"
  2047. ## @param hidden.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
  2048. ## Example:
  2049. ## resources:
  2050. ## requests:
  2051. ## cpu: 2
  2052. ## memory: 512Mi
  2053. ## limits:
  2054. ## cpu: 3
  2055. ## memory: 1024Mi
  2056. ##
  2057. resources: {}
  2058. ## @param hidden.containerPorts.mongodb MongoDB(&reg;) hidden container port
  2059. ##
  2060. containerPorts:
  2061. mongodb: 27017
  2062. ## MongoDB(&reg;) Hidden pods' liveness probe. Evaluated as a template.
  2063. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
  2064. ## @param hidden.livenessProbe.enabled Enable livenessProbe
  2065. ## @param hidden.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
  2066. ## @param hidden.livenessProbe.periodSeconds Period seconds for livenessProbe
  2067. ## @param hidden.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
  2068. ## @param hidden.livenessProbe.failureThreshold Failure threshold for livenessProbe
  2069. ## @param hidden.livenessProbe.successThreshold Success threshold for livenessProbe
  2070. ##
  2071. livenessProbe:
  2072. enabled: true
  2073. initialDelaySeconds: 30
  2074. periodSeconds: 20
  2075. timeoutSeconds: 10
  2076. failureThreshold: 6
  2077. successThreshold: 1
  2078. ## MongoDB(&reg;) Hidden pods' readiness probe. Evaluated as a template.
  2079. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
  2080. ## @param hidden.readinessProbe.enabled Enable readinessProbe
  2081. ## @param hidden.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe
  2082. ## @param hidden.readinessProbe.periodSeconds Period seconds for readinessProbe
  2083. ## @param hidden.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe
  2084. ## @param hidden.readinessProbe.failureThreshold Failure threshold for readinessProbe
  2085. ## @param hidden.readinessProbe.successThreshold Success threshold for readinessProbe
  2086. ##
  2087. readinessProbe:
  2088. enabled: true
  2089. initialDelaySeconds: 5
  2090. periodSeconds: 20
  2091. timeoutSeconds: 10
  2092. failureThreshold: 6
  2093. successThreshold: 1
  2094. ## Slow starting containers can be protected through startup probes
  2095. ## Startup probes are available in Kubernetes version 1.16 and above
  2096. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-startup-probes
  2097. ## @param hidden.startupProbe.enabled Enable startupProbe
  2098. ## @param hidden.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe
  2099. ## @param hidden.startupProbe.periodSeconds Period seconds for startupProbe
  2100. ## @param hidden.startupProbe.timeoutSeconds Timeout seconds for startupProbe
  2101. ## @param hidden.startupProbe.failureThreshold Failure threshold for startupProbe
  2102. ## @param hidden.startupProbe.successThreshold Success threshold for startupProbe
  2103. ##
  2104. startupProbe:
  2105. enabled: false
  2106. initialDelaySeconds: 5
  2107. periodSeconds: 10
  2108. timeoutSeconds: 5
  2109. successThreshold: 1
  2110. failureThreshold: 30
  2111. ## @param hidden.customLivenessProbe Override default liveness probe for hidden node containers
  2112. ## Ignored when hidden.livenessProbe.enabled=true
  2113. ##
  2114. customLivenessProbe: {}
  2115. ## @param hidden.customReadinessProbe Override default readiness probe for hidden node containers
  2116. ## Ignored when hidden.readinessProbe.enabled=true
  2117. ##
  2118. customReadinessProbe: {}
  2119. ## @param hidden.customStartupProbe Override default startup probe for MongoDB(&reg;) containers
  2120. ## Ignored when hidden.startupProbe.enabled=true
  2121. ##
  2122. customStartupProbe: {}
  2123. ## @param hidden.initContainers Add init containers to the MongoDB(&reg;) Hidden pods.
  2124. ## Example:
  2125. ## initContainers:
  2126. ## - name: your-image-name
  2127. ## image: your-image
  2128. ## imagePullPolicy: Always
  2129. ## ports:
  2130. ## - name: portname
  2131. ## containerPort: 1234
  2132. ##
  2133. initContainers: []
  2134. ## @param hidden.sidecars Add additional sidecar containers for the hidden node pod(s)
  2135. ## Example:
  2136. ## sidecars:
  2137. ## - name: your-image-name
  2138. ## image: your-image
  2139. ## imagePullPolicy: Always
  2140. ## ports:
  2141. ## - name: portname
  2142. ## containerPort: 1234
  2143. ##
  2144. sidecars: []
  2145. ## @param hidden.extraVolumeMounts Optionally specify extra list of additional volumeMounts for the hidden node container(s)
  2146. ## Examples:
  2147. ## extraVolumeMounts:
  2148. ## - name: extras
  2149. ## mountPath: /usr/share/extras
  2150. ## readOnly: true
  2151. ##
  2152. extraVolumeMounts: []
  2153. ## @param hidden.extraVolumes Optionally specify extra list of additional volumes to the hidden node statefulset
  2154. ## extraVolumes:
  2155. ## - name: extras
  2156. ## emptyDir: {}
  2157. ##
  2158. extraVolumes: []
  2159. ## MongoDB(&reg;) Hidden Pod Disruption Budget configuration
  2160. ## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb/
  2161. ##
  2162. pdb:
  2163. ## @param hidden.pdb.create Enable/disable a Pod Disruption Budget creation for hidden node pod(s)
  2164. ##
  2165. create: true
  2166. ## @param hidden.pdb.minAvailable Minimum number/percentage of hidden node pods that should remain scheduled
  2167. ##
  2168. minAvailable: ""
  2169. ## @param hidden.pdb.maxUnavailable Maximum number/percentage of hidden node pods that may be made unavailable. Defaults to `1` if both `hidden.pdb.minAvailable` and `hidden.pdb.maxUnavailable` are empty.
  2170. ##
  2171. maxUnavailable: ""
  2172. ## Enable persistence using Persistent Volume Claims
  2173. ## ref: https://kubernetes.io/docs/concepts/storage/persistent-volumes/
  2174. ##
  2175. persistence:
  2176. ## @param hidden.persistence.enabled Enable hidden node data persistence using PVC
  2177. ##
  2178. enabled: true
  2179. ## @param hidden.persistence.medium Provide a medium for `emptyDir` volumes.
  2180. ## Requires hidden.persistence.enabled: false
  2181. ##
  2182. medium: ""
  2183. ## @param hidden.persistence.storageClass PVC Storage Class for hidden node data volume
  2184. ## If defined, storageClassName: <storageClass>
  2185. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  2186. ## If undefined (the default) or set to null, no storageClassName spec is
  2187. ## set, choosing the default provisioner.
  2188. ##
  2189. storageClass: ""
  2190. ## @param hidden.persistence.accessModes PV Access Mode
  2191. ##
  2192. accessModes:
  2193. - ReadWriteOnce
  2194. ## @param hidden.persistence.size PVC Storage Request for hidden node data volume
  2195. ##
  2196. size: 8Gi
  2197. ## @param hidden.persistence.annotations PVC annotations
  2198. ##
  2199. annotations: {}
  2200. ## @param hidden.persistence.mountPath The path the volume will be mounted at, useful when using different MongoDB(&reg;) images.
  2201. ##
  2202. mountPath: /bitnami/mongodb
  2203. ## @param hidden.persistence.subPath The subdirectory of the volume to mount to, useful in dev environments
  2204. ## and one PV for multiple services.
  2205. ##
  2206. subPath: ""
  2207. ## Fine tuning for volumeClaimTemplates
  2208. ##
  2209. volumeClaimTemplates:
  2210. ## @param hidden.persistence.volumeClaimTemplates.selector A label query over volumes to consider for binding (e.g. when using local volumes)
  2211. ## See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.20/#labelselector-v1-meta for more details
  2212. ##
  2213. selector: {}
  2214. ## @param hidden.persistence.volumeClaimTemplates.requests Custom PVC requests attributes
  2215. ## Sometime cloud providers use additional requests attributes to provision custom storage instance
  2216. ## See https://cloud.ibm.com/docs/containers?topic=containers-file_storage#file_dynamic_statefulset
  2217. ##
  2218. requests: {}
  2219. ## @param hidden.persistence.volumeClaimTemplates.dataSource Set volumeClaimTemplate dataSource
  2220. ##
  2221. dataSource: {}
  2222. service:
  2223. ## @param hidden.service.portName MongoDB(&reg;) service port name
  2224. ##
  2225. portName: "mongodb"
  2226. ## @param hidden.service.ports.mongodb MongoDB(&reg;) service port
  2227. ##
  2228. ports:
  2229. mongodb: 27017
  2230. ## @param hidden.service.extraPorts Extra ports to expose (normally used with the `sidecar` value)
  2231. ##
  2232. extraPorts: []
  2233. ## @param hidden.service.annotations Provide any additional annotations that may be required
  2234. ##
  2235. annotations: {}
  2236. ## Headless service properties
  2237. ##
  2238. headless:
  2239. ## @param hidden.service.headless.annotations Annotations for the headless service.
  2240. ##
  2241. annotations: {}
  2242. ## @section Metrics parameters
  2243. ##
  2244. metrics:
  2245. ## @param metrics.enabled Enable using a sidecar Prometheus exporter
  2246. ##
  2247. enabled: false
  2248. ## Bitnami MongoDB(&reg;) Promtheus Exporter image
  2249. ## ref: https://hub.docker.com/r/bitnami/mongodb-exporter/tags/
  2250. ## @param metrics.image.registry [default: REGISTRY_NAME] MongoDB(&reg;) Prometheus exporter image registry
  2251. ## @param metrics.image.repository [default: REPOSITORY_NAME/mongodb-exporter] MongoDB(&reg;) Prometheus exporter image repository
  2252. ## @skip metrics.image.tag MongoDB(&reg;) Prometheus exporter image tag (immutable tags are recommended)
  2253. ## @param metrics.image.digest MongoDB(&reg;) image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag
  2254. ## @param metrics.image.pullPolicy MongoDB(&reg;) Prometheus exporter image pull policy
  2255. ## @param metrics.image.pullSecrets Specify docker-registry secret names as an array
  2256. ##
  2257. image:
  2258. registry: docker.io
  2259. repository: bitnami/mongodb-exporter
  2260. tag: 0.41.0-debian-12-r0
  2261. digest: ""
  2262. pullPolicy: IfNotPresent
  2263. ## Optionally specify an array of imagePullSecrets.
  2264. ## Secrets must be manually created in the namespace.
  2265. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
  2266. ## e.g:
  2267. ## pullSecrets:
  2268. ## - myRegistryKeySecretName
  2269. ##
  2270. pullSecrets: []
  2271. ## @param metrics.username String with username for the metrics exporter
  2272. ## If undefined the root user will be used for the metrics exporter
  2273. ##
  2274. username: ""
  2275. ## @param metrics.password String with password for the metrics exporter
  2276. ## If undefined but metrics.username is defined, a random password will be generated
  2277. ##
  2278. password: ""
  2279. ## @param metrics.compatibleMode Enables old style mongodb-exporter metrics
  2280. compatibleMode: true
  2281. collector:
  2282. ## @param metrics.collector.all Enable all collectors. Same as enabling all individual metrics
  2283. ## Enabling all metrics will cause significant CPU load on mongod
  2284. all: false
  2285. ## @param metrics.collector.diagnosticdata Boolean Enable collecting metrics from getDiagnosticData
  2286. diagnosticdata: true
  2287. ## @param metrics.collector.replicasetstatus Boolean Enable collecting metrics from replSetGetStatus
  2288. replicasetstatus: true
  2289. ## @param metrics.collector.dbstats Boolean Enable collecting metrics from dbStats
  2290. dbstats: false
  2291. ## @param metrics.collector.topmetrics Boolean Enable collecting metrics from top admin command
  2292. topmetrics: false
  2293. ## @param metrics.collector.indexstats Boolean Enable collecting metrics from $indexStats
  2294. indexstats: false
  2295. ## @param metrics.collector.collstats Boolean Enable collecting metrics from $collStats
  2296. collstats: false
  2297. ## @param metrics.collector.collstatsColls List of \<databases\>.\<collections\> to get $collStats
  2298. collstatsColls: []
  2299. ## @param metrics.collector.indexstatsColls List - List of \<databases\>.\<collections\> to get $indexStats
  2300. indexstatsColls: []
  2301. ## @param metrics.collector.collstatsLimit Number - Disable collstats, dbstats, topmetrics and indexstats collector if there are more than \<n\> collections. 0=No limit
  2302. collstatsLimit: 0
  2303. ## @param metrics.extraFlags String with extra flags to the metrics exporter
  2304. ## ref: https://github.com/percona/mongodb_exporter/blob/main/main.go
  2305. ##
  2306. extraFlags: ""
  2307. ## Command and args for running the container (set to default if not set). Use array form
  2308. ## @param metrics.command Override default container command (useful when using custom images)
  2309. ## @param metrics.args Override default container args (useful when using custom images)
  2310. ##
  2311. command: []
  2312. args: []
  2313. ## Metrics exporter container resource requests and limits
  2314. ## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
  2315. ## We usually recommend not to specify default resources and to leave this as a conscious
  2316. ## choice for the user. This also increases chances charts run on environments with little
  2317. ## resources, such as Minikube. If you do want to specify resources, uncomment the following
  2318. ## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  2319. ## @param metrics.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if metrics.resources is set (metrics.resources is recommended for production).
  2320. ## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
  2321. ##
  2322. resourcesPreset: "nano"
  2323. ## @param metrics.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
  2324. ## Example:
  2325. ## resources:
  2326. ## requests:
  2327. ## cpu: 2
  2328. ## memory: 512Mi
  2329. ## limits:
  2330. ## cpu: 3
  2331. ## memory: 1024Mi
  2332. ##
  2333. resources: {}
  2334. ## @param metrics.containerPort Port of the Prometheus metrics container
  2335. ##
  2336. containerPort: 9216
  2337. ## Prometheus Exporter service configuration
  2338. ##
  2339. service:
  2340. ## @param metrics.service.annotations [object] Annotations for Prometheus Exporter pods. Evaluated as a template.
  2341. ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
  2342. ##
  2343. annotations:
  2344. prometheus.io/scrape: "true"
  2345. prometheus.io/port: "{{ .Values.metrics.service.ports.metrics }}"
  2346. prometheus.io/path: "/metrics"
  2347. ## @param metrics.service.type Type of the Prometheus metrics service
  2348. ##
  2349. type: ClusterIP
  2350. ## @param metrics.service.ports.metrics Port of the Prometheus metrics service
  2351. ##
  2352. ports:
  2353. metrics: 9216
  2354. ## @param metrics.service.extraPorts Extra ports to expose (normally used with the `sidecar` value)
  2355. ##
  2356. extraPorts: []
  2357. ## Metrics exporter liveness probe
  2358. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes)
  2359. ## @param metrics.livenessProbe.enabled Enable livenessProbe
  2360. ## @param metrics.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
  2361. ## @param metrics.livenessProbe.periodSeconds Period seconds for livenessProbe
  2362. ## @param metrics.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
  2363. ## @param metrics.livenessProbe.failureThreshold Failure threshold for livenessProbe
  2364. ## @param metrics.livenessProbe.successThreshold Success threshold for livenessProbe
  2365. ##
  2366. livenessProbe:
  2367. enabled: true
  2368. initialDelaySeconds: 15
  2369. periodSeconds: 5
  2370. timeoutSeconds: 10
  2371. failureThreshold: 3
  2372. successThreshold: 1
  2373. ## Metrics exporter readiness probe
  2374. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes)
  2375. ## @param metrics.readinessProbe.enabled Enable readinessProbe
  2376. ## @param metrics.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe
  2377. ## @param metrics.readinessProbe.periodSeconds Period seconds for readinessProbe
  2378. ## @param metrics.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe
  2379. ## @param metrics.readinessProbe.failureThreshold Failure threshold for readinessProbe
  2380. ## @param metrics.readinessProbe.successThreshold Success threshold for readinessProbe
  2381. ##
  2382. readinessProbe:
  2383. enabled: true
  2384. initialDelaySeconds: 5
  2385. periodSeconds: 5
  2386. timeoutSeconds: 10
  2387. failureThreshold: 3
  2388. successThreshold: 1
  2389. ## Slow starting containers can be protected through startup probes
  2390. ## Startup probes are available in Kubernetes version 1.16 and above
  2391. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-startup-probes
  2392. ## @param metrics.startupProbe.enabled Enable startupProbe
  2393. ## @param metrics.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe
  2394. ## @param metrics.startupProbe.periodSeconds Period seconds for startupProbe
  2395. ## @param metrics.startupProbe.timeoutSeconds Timeout seconds for startupProbe
  2396. ## @param metrics.startupProbe.failureThreshold Failure threshold for startupProbe
  2397. ## @param metrics.startupProbe.successThreshold Success threshold for startupProbe
  2398. ##
  2399. startupProbe:
  2400. enabled: false
  2401. initialDelaySeconds: 5
  2402. periodSeconds: 10
  2403. timeoutSeconds: 5
  2404. successThreshold: 1
  2405. failureThreshold: 30
  2406. ## @param metrics.customLivenessProbe Override default liveness probe for MongoDB(&reg;) containers
  2407. ## Ignored when livenessProbe.enabled=true
  2408. ##
  2409. customLivenessProbe: {}
  2410. ## @param metrics.customReadinessProbe Override default readiness probe for MongoDB(&reg;) containers
  2411. ## Ignored when readinessProbe.enabled=true
  2412. ##
  2413. customReadinessProbe: {}
  2414. ## @param metrics.customStartupProbe Override default startup probe for MongoDB(&reg;) containers
  2415. ## Ignored when startupProbe.enabled=true
  2416. ##
  2417. customStartupProbe: {}
  2418. ## @param metrics.extraVolumeMounts Optionally specify extra list of additional volumeMounts for the metrics container(s)
  2419. ## Examples:
  2420. ## extraVolumeMounts:
  2421. ## - name: extras
  2422. ## mountPath: /usr/share/extras
  2423. ## readOnly: true
  2424. ##
  2425. extraVolumeMounts: []
  2426. ## Prometheus Service Monitor
  2427. ## ref: https://github.com/coreos/prometheus-operator
  2428. ## https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md
  2429. ##
  2430. serviceMonitor:
  2431. ## @param metrics.serviceMonitor.enabled Create ServiceMonitor Resource for scraping metrics using Prometheus Operator
  2432. ##
  2433. enabled: false
  2434. ## @param metrics.serviceMonitor.namespace Namespace which Prometheus is running in
  2435. ##
  2436. namespace: ""
  2437. ## @param metrics.serviceMonitor.interval Interval at which metrics should be scraped
  2438. ##
  2439. interval: 30s
  2440. ## @param metrics.serviceMonitor.scrapeTimeout Specify the timeout after which the scrape is ended
  2441. ## e.g:
  2442. ## scrapeTimeout: 30s
  2443. ##
  2444. scrapeTimeout: ""
  2445. ## @param metrics.serviceMonitor.relabelings RelabelConfigs to apply to samples before scraping.
  2446. ##
  2447. relabelings: []
  2448. ## @param metrics.serviceMonitor.metricRelabelings MetricsRelabelConfigs to apply to samples before ingestion.
  2449. ##
  2450. metricRelabelings: []
  2451. ## @param metrics.serviceMonitor.labels Used to pass Labels that are used by the Prometheus installed in your cluster to select Service Monitors to work with
  2452. ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#prometheusspec
  2453. ##
  2454. labels: {}
  2455. ## @param metrics.serviceMonitor.selector Prometheus instance selector labels
  2456. ## ref: https://github.com/bitnami/charts/tree/main/bitnami/prometheus-operator#prometheus-configuration
  2457. ##
  2458. selector: {}
  2459. ## @param metrics.serviceMonitor.honorLabels Specify honorLabels parameter to add the scrape endpoint
  2460. ##
  2461. honorLabels: false
  2462. ## @param metrics.serviceMonitor.jobLabel The name of the label on the target service to use as the job name in prometheus.
  2463. ##
  2464. jobLabel: ""
  2465. ## Custom PrometheusRule to be defined
  2466. ## ref: https://github.com/coreos/prometheus-operator#customresourcedefinitions
  2467. ##
  2468. prometheusRule:
  2469. ## @param metrics.prometheusRule.enabled Set this to true to create prometheusRules for Prometheus operator
  2470. ##
  2471. enabled: false
  2472. ## @param metrics.prometheusRule.additionalLabels Additional labels that can be used so prometheusRules will be discovered by Prometheus
  2473. ##
  2474. additionalLabels: {}
  2475. ## @param metrics.prometheusRule.namespace Namespace where prometheusRules resource should be created
  2476. ##
  2477. namespace: ""
  2478. ## @param metrics.prometheusRule.rules Rules to be created, check values for an example
  2479. ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#rulegroup
  2480. ## https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/
  2481. ##
  2482. ## This is an example of a rule, you should add the below code block under the "rules" param, removing the brackets
  2483. ## rules:
  2484. ## - alert: HighRequestLatency
  2485. ## expr: job:request_latency_seconds:mean5m{job="myjob"} > 0.5
  2486. ## for: 10m
  2487. ## labels:
  2488. ## severity: page
  2489. ## annotations:
  2490. ## summary: High request latency
  2491. ##
  2492. rules: []