values.yaml 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
  1. ## Provide a name in place of minio for `app:` labels
  2. ##
  3. nameOverride: ""
  4. ## Provide a name to substitute for the full names of resources
  5. ##
  6. fullnameOverride: ""
  7. ## set kubernetes cluster domain where minio is running
  8. ##
  9. clusterDomain: cluster.local
  10. ## Set default image, imageTag, and imagePullPolicy. mode is used to indicate the
  11. ##
  12. image:
  13. repository: minio/minio
  14. tag: RELEASE.2020-11-19T23-48-16Z
  15. pullPolicy: IfNotPresent
  16. ## Set default image, imageTag, and imagePullPolicy for the `mc` (the minio
  17. ## client used to create a default bucket).
  18. ##
  19. mcImage:
  20. repository: minio/mc
  21. tag: RELEASE.2020-11-17T00-39-14Z
  22. pullPolicy: IfNotPresent
  23. ## Set default image, imageTag, and imagePullPolicy for the `jq` (the JSON
  24. ## process used to create secret for prometheus ServiceMonitor).
  25. ##
  26. helmKubectlJqImage:
  27. repository: bskim45/helm-kubectl-jq
  28. tag: 3.1.0
  29. pullPolicy: IfNotPresent
  30. ## minio server mode, i.e. standalone or distributed.
  31. ## Distributed Minio ref: https://docs.minio.io/docs/distributed-minio-quickstart-guide
  32. ##
  33. mode: standalone
  34. ## Additional arguments to pass to minio binary
  35. extraArgs: []
  36. ## Update strategy for Deployments
  37. DeploymentUpdate:
  38. type: RollingUpdate
  39. maxUnavailable: 0
  40. maxSurge: 100%
  41. ## Update strategy for StatefulSets
  42. StatefulSetUpdate:
  43. updateStrategy: RollingUpdate
  44. ## Pod priority settings
  45. ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
  46. ##
  47. priorityClassName: ""
  48. ## Set default accesskey, secretkey, Minio config file path, volume mount path and
  49. ## number of nodes (only used for Minio distributed mode)
  50. ## AccessKey and secretKey is generated when not set
  51. ## Distributed Minio ref: https://docs.minio.io/docs/distributed-minio-quickstart-guide
  52. ##
  53. accessKey: ""
  54. secretKey: ""
  55. certsPath: "/etc/minio/certs/"
  56. configPathmc: "/etc/minio/mc/"
  57. mountPath: "/export"
  58. ## Use existing Secret that store following variables:
  59. ##
  60. ## | Chart var | .data.<key> in Secret |
  61. ## |:----------------------|:-------------------------|
  62. ## | accessKey | accesskey |
  63. ## | secretKey | secretkey |
  64. ## | gcsgateway.gcsKeyJson | gcs_key.json |
  65. ## | s3gateway.accessKey | awsAccessKeyId |
  66. ## | s3gateway.secretKey | awsSecretAccessKey |
  67. ## | etcd.clientCert | etcd_client_cert.pem |
  68. ## | etcd.clientCertKey | etcd_client_cert_key.pem |
  69. ##
  70. ## All mentioned variables will be ignored in values file.
  71. ## .data.accesskey and .data.secretkey are mandatory,
  72. ## others depend on enabled status of corresponding sections.
  73. existingSecret: ""
  74. ## Override the root directory which the minio server should serve from.
  75. ## If left empty, it defaults to the value of {{ .Values.mountPath }}
  76. ## If defined, it must be a sub-directory of the path specified in {{ .Values.mountPath }}
  77. bucketRoot: ""
  78. # Number of drives attached to a node
  79. drivesPerNode: 1
  80. # Number of MinIO containers running
  81. replicas: 4
  82. # Number of expanded MinIO clusters
  83. zones: 1
  84. ## TLS Settings for Minio
  85. tls:
  86. enabled: false
  87. ## Create a secret with private.key and public.crt files and pass that here. Ref: https://github.com/minio/minio/tree/master/docs/tls/kubernetes#2-create-kubernetes-secret
  88. certSecret: ""
  89. publicCrt: public.crt
  90. privateKey: private.key
  91. ## Trusted Certificates Settings for Minio. Ref: https://docs.minio.io/docs/how-to-secure-access-to-minio-server-with-tls#install-certificates-from-third-party-cas
  92. ## Bundle multiple trusted certificates into one secret and pass that here. Ref: https://github.com/minio/minio/tree/master/docs/tls/kubernetes#2-create-kubernetes-secret
  93. ## When using self-signed certificates, remember to include Minio's own certificate in the bundle with key public.crt.
  94. ## If certSecret is left empty and tls is enabled, this chart installs the public certificate from .Values.tls.certSecret.
  95. trustedCertsSecret: ""
  96. ## Enable persistence using Persistent Volume Claims
  97. ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
  98. ##
  99. persistence:
  100. enabled: true
  101. ## A manually managed Persistent Volume and Claim
  102. ## Requires persistence.enabled: true
  103. ## If defined, PVC must be created manually before volume will be bound
  104. existingClaim: ""
  105. ## minio data Persistent Volume Storage Class
  106. ## If defined, storageClassName: <storageClass>
  107. ## If set to "-", storageClassName: "", which disables dynamic provisioning
  108. ## If undefined (the default) or set to null, no storageClassName spec is
  109. ## set, choosing the default provisioner. (gp2 on AWS, standard on
  110. ## GKE, AWS & OpenStack)
  111. ##
  112. ## Storage class of PV to bind. By default it looks for standard storage class.
  113. ## If the PV uses a different storage class, specify that here.
  114. storageClass: ""
  115. VolumeName: ""
  116. accessMode: ReadWriteOnce
  117. size: 500Gi
  118. ## If subPath is set mount a sub folder of a volume instead of the root of the volume.
  119. ## This is especially handy for volume plugins that don't natively support sub mounting (like glusterfs).
  120. ##
  121. subPath: ""
  122. ## Expose the Minio service to be accessed from outside the cluster (LoadBalancer service).
  123. ## or access it from within the cluster (ClusterIP service). Set the service type and the port to serve it.
  124. ## ref: http://kubernetes.io/docs/user-guide/services/
  125. ##
  126. service:
  127. type: ClusterIP
  128. clusterIP: ~
  129. port: 9000
  130. nodePort: 32000
  131. ## List of IP addresses at which the Prometheus server service is available
  132. ## Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
  133. ##
  134. externalIPs: []
  135. # - externalIp1
  136. annotations: {}
  137. # prometheus.io/scrape: 'true'
  138. # prometheus.io/path: '/minio/prometheus/metrics'
  139. # prometheus.io/port: '9000'
  140. imagePullSecrets: []
  141. # - name: "image-pull-secret"
  142. ## Node labels for pod assignment
  143. ## Ref: https://kubernetes.io/docs/user-guide/node-selection/
  144. ##
  145. nodeSelector: {}
  146. tolerations: []
  147. affinity: {}
  148. ## Add stateful containers to have security context, if enabled MinIO will run as this
  149. ## user and group NOTE: securityContext is only enabled if persistence.enabled=true
  150. securityContext:
  151. enabled: true
  152. runAsUser: 1000
  153. runAsGroup: 1000
  154. fsGroup: 1000
  155. # Additational pod annotations
  156. podAnnotations: {}
  157. # Additional pod labels
  158. podLabels: {}
  159. ## Configure resource requests and limits
  160. ## ref: http://kubernetes.io/docs/user-guide/compute-resources/
  161. ##
  162. resources:
  163. requests:
  164. memory: 4Gi
  165. ## Create a bucket after minio install
  166. ##
  167. defaultBucket:
  168. enabled: false
  169. ## If enabled, must be a string with length > 0
  170. name: bucket
  171. ## Can be one of none|download|upload|public
  172. policy: none
  173. ## Purge if bucket exists already
  174. purge: false
  175. ## set versioning for bucket true|false
  176. # versioning: false
  177. ## Create multiple buckets after minio install
  178. ## Enabling `defaultBucket` will take priority over this list
  179. ##
  180. buckets: []
  181. # - name: bucket1
  182. # policy: none
  183. # purge: false
  184. # - name: bucket2
  185. # policy: none
  186. # purge: false
  187. ## Additional Annotations for the Kubernetes Batch (make-bucket-job)
  188. makeBucketJob:
  189. podAnnotations:
  190. annotations:
  191. securityContext:
  192. enabled: false
  193. runAsUser: 1000
  194. runAsGroup: 1000
  195. fsGroup: 1000
  196. resources:
  197. requests:
  198. memory: 128Mi
  199. ## Additional Annotations for the Kubernetes Batch (update-prometheus-secret)
  200. updatePrometheusJob:
  201. podAnnotations:
  202. annotations:
  203. securityContext:
  204. enabled: false
  205. runAsUser: 1000
  206. runAsGroup: 1000
  207. fsGroup: 1000
  208. s3gateway:
  209. enabled: false
  210. replicas: 4
  211. serviceEndpoint: ""
  212. accessKey: ""
  213. secretKey: ""
  214. ## Use minio as an azure blob gateway, you should disable data persistence so no volume claim are created.
  215. ## https://docs.minio.io/docs/minio-gateway-for-azure
  216. azuregateway:
  217. enabled: false
  218. # Number of parallel instances
  219. replicas: 4
  220. ## Use minio as GCS (Google Cloud Storage) gateway, you should disable data persistence so no volume claim are created.
  221. ## https://docs.minio.io/docs/minio-gateway-for-gcs
  222. gcsgateway:
  223. enabled: false
  224. # Number of parallel instances
  225. replicas: 4
  226. # credential json file of service account key
  227. gcsKeyJson: ""
  228. # Google cloud project-id
  229. projectId: ""
  230. ## Use minio on NAS backend
  231. ## https://docs.minio.io/docs/minio-gateway-for-nas
  232. nasgateway:
  233. enabled: false
  234. # Number of parallel instances
  235. replicas: 4
  236. # For NAS Gateway, you may want to bind the PVC to a specific PV. To ensure that happens, PV to bind to should have
  237. # a label like "pv: <value>", use value here.
  238. pv: ~
  239. ## Use this field to add environment variables relevant to Minio server. These fields will be passed on to Minio container(s)
  240. ## when Chart is deployed
  241. environment:
  242. ## Please refer for comprehensive list https://docs.minio.io/docs/minio-server-configuration-guide.html
  243. networkPolicy:
  244. enabled: false
  245. allowExternal: true
  246. ## PodDisruptionBudget settings
  247. ## ref: https://kubernetes.io/docs/concepts/workloads/pods/disruptions/
  248. ##
  249. podDisruptionBudget:
  250. enabled: false
  251. maxUnavailable: 1
  252. ## Specify the service account to use for the Minio pods. If 'create' is set to 'false'
  253. ## and 'name' is left unspecified, the account 'default' will be used.
  254. serviceAccount:
  255. create: true
  256. ## The name of the service account to use. If 'create' is 'true', a service account with that name
  257. ## will be created. Otherwise, a name will be auto-generated.
  258. name:
  259. metrics:
  260. # Metrics can not be disabled yet: https://github.com/minio/minio/issues/7493
  261. serviceMonitor:
  262. enabled: false
  263. additionalLabels: {}
  264. # namespace: monitoring
  265. # interval: 30s
  266. # scrapeTimeout: 10s
  267. ## ETCD settings: https://github.com/minio/minio/blob/master/docs/sts/etcd.md
  268. ## Define endpoints to enable this section.
  269. etcd:
  270. endpoints: []
  271. pathPrefix: ""
  272. corednsPathPrefix: ""
  273. clientCert: ""
  274. clientCertKey: ""