blob: a480be2943b9192da6a7b92c0a2a0d7c4c175721 [file] [log] [blame]
giolekvab0b7f002020-04-16 16:05:40 +04001apiVersion: miniocontroller.min.io/v1beta1
2kind: MinIOInstance
3metadata:
4 name: minio
5## If specified, MinIOInstance pods will be dispatched by specified scheduler.
6## If not specified, the pod will be dispatched by default scheduler.
7# scheduler:
8# name: my-custom-scheduler
9spec:
10 selector:
11 matchLabels:
12 app: minio # Should match spec.metadata.labels
13 ## Add metadata to the all pods created by the StatefulSet
14 metadata:
15 labels:
16 app: minio # Should match spec.selector.matchLabels
17 annotations:
18 prometheus.io/path: /minio/prometheus/metrics
19 prometheus.io/port: "9000"
20 prometheus.io/scrape: "true"
21 ## Registry location and Tag to download MinIO Server image
22 image: minio/minio:RELEASE.2020-01-03T19-12-21Z
23 ## Secret with credentials to be used by MinIO instance.
24 credsSecret:
25 name: minio-creds-secret
26 ## Supply number of replicas.
27 ## For standalone mode, supply 1. For distributed mode, supply 4 or more (should be even).
28 ## Note that the operator does not support upgrading from standalone to distributed mode.
29 replicas: 1
30 ## PodManagement policy for pods created by StatefulSet. Can be "OrderedReady" or "Parallel"
31 ## Refer https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#pod-management-policy
32 ## for details. Defaults to "Parallel"
33 ## If set to "OrderedReady", then disable Readiness checks below. Readiness check will only
34 ## work if PodManagementPolicy is set to "Parallel".
35 podManagementPolicy: Parallel
36 ## Enable Kubernetes based certificate generation and signing as explained in
37 ## https://kubernetes.io/docs/tasks/tls/managing-tls-in-a-cluster
38 requestAutoCert: false
39 ## Used when "requestAutoCert" is set to true. Set CommonName for the auto-generated certificate.
40 ## Internal DNS name for the pod will be used if CommonName is not provided.
41 certConfig:
42 commonName: ""
43 organizationName: []
44 dnsNames: []
45
46 ## Used to specify a toleration for a pod
47 # tolerations:
48 # - effect: NoSchedule
49 # key: dedicated
50 # operator: Equal
51 # value: storage
52 ## Add environment variables to be set in MinIO container (https://github.com/minio/minio/tree/master/docs/config)
53 env:
54 - name: MINIO_BROWSER
55 value: "on"
56 # - name: MINIO_STORAGE_CLASS_RRS
57 # value: "EC:2"
58 ## Configure resource requests and limits for MinIO containers
59 resources:
60 requests:
61 memory: 512Mi
62 cpu: 250m
63 ## Liveness probe detects situations where MinIO server instance
64 ## is not working properly and needs restart. Kubernetes automatically
65 ## restarts the pods if liveness checks fail.
66 liveness:
67 httpGet:
68 path: /minio/health/live
69 port: 9000
70 initialDelaySeconds: 120
71 periodSeconds: 20
72 ## Readiness probe detects situations when MinIO server instance
73 ## is not ready to accept traffic. Kubernetes doesn't forward
74 ## traffic to the pod while readiness checks fail.
75 ## Readiness check will only work if PodManagementPolicy is set to "Parallel".
76 ## Disable this check if you're setting PodManagementPolicy to "OrderedReady".
77 readiness:
78 httpGet:
79 path: /minio/health/ready
80 port: 9000
81 initialDelaySeconds: 120
82 periodSeconds: 20
83 ## nodeSelector parameters for MinIO Pods. It specifies a map of key-value pairs. For the pod to be
84 ## eligible to run on a node, the node must have each of the
85 ## indicated key-value pairs as labels.
86 ## Read more here: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
87 # nodeSelector:
88 # disktype: ssd
89 ## Affinity settings for MinIO pods. Read more about affinity
90 ## here: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity.
91 # affinity:
92 ## Secret with certificates to configure TLS for MinIO certs. Create secrets as explained
93 ## here: https://github.com/minio/minio/tree/master/docs/tls/kubernetes#2-create-kubernetes-secret
94 # externalCertSecret:
95 # name: tls-ssl-minio
96 ## Mountpath where PV will be mounted inside container(s). Defaults to "/export".
97 # mountPath: /export
98 ## Subpath inside Mountpath where MinIO starts. Defaults to "".
99 # subPath: /data
100 volumeClaimTemplate:
101 metadata:
102 name: data
103 spec:
104 accessModes:
105 - ReadWriteOnce
106 resources:
107 requests:
108 storage: 10Gi