Remove minio gateway feature
This commit is contained in:
parent
7ee19dd170
commit
f60c605f5c
|
@ -197,18 +197,6 @@ The following table lists the configurable parameters of the MinIO chart and the
|
|||
| `updatePrometheusJob.securityContext.runAsUser` | User id of the user for the container | `1000` |
|
||||
| `updatePrometheusJob.securityContext.runAsGroup` | Group id of the user for the container | `1000` |
|
||||
| `updatePrometheusJob.securityContext.fsGroup` | Group id of the persistent volume mount for the container | `1000` |
|
||||
| `s3gateway.enabled` | Use MinIO as a [s3 gateway](https://github.com/minio/minio/blob/master/docs/gateway/s3.md) | `false` |
|
||||
| `s3gateway.replicas` | Number of s3 gateway instances to run in parallel | `4` |
|
||||
| `s3gateway.serviceEndpoint` | Endpoint to the S3 compatible service | `""` |
|
||||
| `s3gateway.accessKey` | Access key of S3 compatible service | `""` |
|
||||
| `s3gateway.secretKey` | Secret key of S3 compatible service | `""` |
|
||||
| `azuregateway.enabled` | Use MinIO as an [azure gateway](https://docs.minio.io/docs/minio-gateway-for-azure) | `false` |
|
||||
| `azuregateway.replicas` | Number of azure gateway instances to run in parallel | `4` |
|
||||
| `gcsgateway.enabled` | Use MinIO as a [Google Cloud Storage gateway](https://docs.minio.io/docs/minio-gateway-for-gcs) | `false` |
|
||||
| `gcsgateway.gcsKeyJson` | credential json file of service account key | `""` |
|
||||
| `gcsgateway.projectId` | Google cloud project id | `""` |
|
||||
| `nasgateway.enabled` | Use MinIO as a [NAS gateway](https://docs.MinIO.io/docs/minio-gateway-for-nas) | `false` |
|
||||
| `nasgateway.replicas` | Number of NAS gateway instances to be run in parallel on a PV | `4` |
|
||||
| `environment` | Set MinIO server relevant environment variables in `values.yaml` file. MinIO containers will be passed these variables when they start. | `MINIO_STORAGE_CLASS_STANDARD: EC:4"` |
|
||||
| `metrics.serviceMonitor.enabled` | Set this to `true` to create ServiceMonitor for Prometheus operator | `false` |
|
||||
| `metrics.serviceMonitor.additionalLabels` | Additional labels that can be used so ServiceMonitor will be discovered by Prometheus | `{}` |
|
||||
|
@ -267,30 +255,6 @@ $ helm install --set mode=distributed,replicas=8,zones=2 minio/minio
|
|||
1. StatefulSets need persistent storage, so the `persistence.enabled` flag is ignored when `mode` is set to `distributed`.
|
||||
2. When uninstalling a distributed MinIO release, you'll need to manually delete volumes associated with the StatefulSet.
|
||||
|
||||
NAS Gateway
|
||||
-----------
|
||||
|
||||
### Prerequisites
|
||||
|
||||
MinIO in [NAS gateway mode](https://docs.minio.io/docs/minio-gateway-for-nas) can be used to create multiple MinIO instances backed by single PV in `ReadWriteMany` mode. Currently few [Kubernetes volume plugins](https://kubernetes.io/docs/user-guide/persistent-volumes/#access-modes) support `ReadWriteMany` mode. To deploy MinIO NAS gateway with Helm chart you'll need to have a Persistent Volume running with one of the supported volume plugins. [This document](https://kubernetes.io/docs/user-guide/volumes/#nfs)
|
||||
outlines steps to create a NFS PV in Kubernetes cluster.
|
||||
|
||||
### Provision NAS Gateway MinIO instances
|
||||
|
||||
To provision MinIO servers in [NAS gateway mode](https://docs.minio.io/docs/minio-gateway-for-nas), set the `nasgateway.enabled` field to `true`,
|
||||
|
||||
```bash
|
||||
$ helm install --set nasgateway.enabled=true minio/minio
|
||||
```
|
||||
|
||||
This provisions 4 MinIO NAS gateway instances backed by single storage. To change the number of instances in your MinIO deployment, set the `replicas` field,
|
||||
|
||||
```bash
|
||||
$ helm install --set nasgateway.enabled=true,nasgateway.replicas=8 minio/minio
|
||||
```
|
||||
|
||||
This provisions MinIO NAS gateway with 8 instances.
|
||||
|
||||
Persistence
|
||||
-----------
|
||||
|
||||
|
@ -356,9 +320,6 @@ The following fields are expected in the secret:
|
|||
|:---------------------------|:------------------------|:----------------------------------------------------------------------------------|
|
||||
| `accesskey` | `accessKey` | Access key ID. Mandatory. |
|
||||
| `secretkey` | `secretKey` | Secret key. Mandatory. |
|
||||
| `gcs_key.json` | `gcsgateway.gcsKeyJson` | GCS key if you are using the GCS gateway feature. Optional |
|
||||
| `awsAccessKeyId` | `s3gateway.accessKey` | S3 access key if you are using the S3 gateway feature. Optional |
|
||||
| `awsSecretAccessKey` | `s3gateway.secretKey` | S3 secret key if you are using the S3 gateway feature. Optional |
|
||||
| `etcd_client_cert.pem` | `etcd.clientCert` | Certificate for SSL/TLS connections to etcd. Optional |
|
||||
| `etcd_client_cert_key.pem` | `etcd.clientCertKey` | Corresponding key for certificate above. Mandatory when etcd certificate defined. |
|
||||
|
||||
|
|
|
@ -21,18 +21,6 @@ spec:
|
|||
maxSurge: {{ .Values.DeploymentUpdate.maxSurge }}
|
||||
maxUnavailable: {{ .Values.DeploymentUpdate.maxUnavailable }}
|
||||
{{- end}}
|
||||
{{- if .Values.nasgateway.enabled }}
|
||||
replicas: {{ .Values.nasgateway.replicas }}
|
||||
{{- end }}
|
||||
{{- if .Values.s3gateway.enabled }}
|
||||
replicas: {{ .Values.s3gateway.replicas }}
|
||||
{{- end }}
|
||||
{{- if .Values.azuregateway.enabled }}
|
||||
replicas: {{ .Values.azuregateway.replicas }}
|
||||
{{- end }}
|
||||
{{- if .Values.gcsgateway.enabled }}
|
||||
replicas: {{ .Values.gcsgateway.replicas }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "minio.name" . }}
|
||||
|
@ -67,47 +55,19 @@ spec:
|
|||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
{{- if .Values.s3gateway.enabled }}
|
||||
command:
|
||||
- "/bin/sh"
|
||||
- "-ce"
|
||||
- "/usr/bin/docker-entrypoint.sh minio -S {{ .Values.certsPath }} gateway s3 {{ .Values.s3gateway.serviceEndpoint }} {{- template "minio.extraArgs" . }}"
|
||||
{{- else }}
|
||||
{{- if .Values.azuregateway.enabled }}
|
||||
command:
|
||||
- "/bin/sh"
|
||||
- "-ce"
|
||||
- "/usr/bin/docker-entrypoint.sh minio -S {{ .Values.certsPath }} gateway azure {{- template "minio.extraArgs" . }}"
|
||||
{{- else }}
|
||||
{{- if .Values.gcsgateway.enabled }}
|
||||
command:
|
||||
- "/bin/sh"
|
||||
- "-ce"
|
||||
- "/usr/bin/docker-entrypoint.sh minio -S {{ .Values.certsPath }} gateway gcs {{ .Values.gcsgateway.projectId }} {{- template "minio.extraArgs" . }}"
|
||||
{{- else }}
|
||||
{{- if .Values.nasgateway.enabled }}
|
||||
command:
|
||||
- "/bin/sh"
|
||||
- "-ce"
|
||||
- "/usr/bin/docker-entrypoint.sh minio -S {{ .Values.certsPath }} gateway nas {{ $bucketRoot }} {{- template "minio.extraArgs" . }}"
|
||||
{{- else }}
|
||||
command:
|
||||
- "/bin/sh"
|
||||
- "-ce"
|
||||
- "/usr/bin/docker-entrypoint.sh minio -S {{ .Values.certsPath }} server {{ $bucketRoot }} {{- template "minio.extraArgs" . }}"
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
{{- if and .Values.persistence.enabled (not .Values.gcsgateway.enabled) (not .Values.azuregateway.enabled) (not .Values.s3gateway.enabled) }}
|
||||
{{- if .Values.persistence.enabled }}
|
||||
- name: export
|
||||
mountPath: {{ .Values.mountPath }}
|
||||
{{- if .Values.persistence.subPath }}
|
||||
subPath: "{{ .Values.persistence.subPath }}"
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if or .Values.gcsgateway.enabled .Values.etcd.clientCert .Values.etcd.clientCertKey }}
|
||||
{{- if or .Values.etcd.clientCert .Values.etcd.clientCertKey }}
|
||||
- name: minio-user
|
||||
mountPath: "/etc/credentials"
|
||||
readOnly: true
|
||||
|
@ -127,10 +87,6 @@ spec:
|
|||
secretKeyRef:
|
||||
name: {{ template "minio.secretName" . }}
|
||||
key: secretkey
|
||||
{{- if and .Values.gcsgateway.enabled .Values.gcsgateway.gcsKeyJson }}
|
||||
- name: GOOGLE_APPLICATION_CREDENTIALS
|
||||
value: "/etc/credentials/gcs_key.json"
|
||||
{{- end }}
|
||||
{{- if .Values.etcd.endpoints }}
|
||||
- name: MINIO_ETCD_ENDPOINTS
|
||||
value: {{ join "," .Values.etcd.endpoints | quote }}
|
||||
|
@ -151,22 +107,6 @@ spec:
|
|||
value: {{ .Values.etcd.corednsPathPrefix }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .Values.s3gateway.enabled -}}
|
||||
{{- if or .Values.s3gateway.accessKey .Values.existingSecret }}
|
||||
- name: AWS_ACCESS_KEY_ID
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ template "minio.secretName" . }}
|
||||
key: awsAccessKeyId
|
||||
{{- end }}
|
||||
{{- if or .Values.s3gateway.secretKey .Values.existingSecret }}
|
||||
- name: AWS_SECRET_ACCESS_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ template "minio.secretName" . }}
|
||||
key: awsSecretAccessKey
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- range $key, $val := .Values.environment }}
|
||||
- name: {{ $key }}
|
||||
value: {{ $val | quote }}
|
||||
|
@ -187,7 +127,6 @@ spec:
|
|||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
{{- if and (not .Values.gcsgateway.enabled) (not .Values.azuregateway.enabled) (not .Values.s3gateway.enabled) }}
|
||||
- name: export
|
||||
{{- if .Values.persistence.enabled }}
|
||||
persistentVolumeClaim:
|
||||
|
@ -195,7 +134,6 @@ spec:
|
|||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
- name: minio-user
|
||||
secret:
|
||||
secretName: {{ template "minio.secretName" . }}
|
||||
|
|
|
@ -10,11 +10,6 @@ metadata:
|
|||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
spec:
|
||||
{{- if and .Values.nasgateway.enabled .Values.nasgateway.pv }}
|
||||
selector:
|
||||
matchLabels:
|
||||
pv: {{ .Values.nasgateway.pv | quote }}
|
||||
{{- end }}
|
||||
accessModes:
|
||||
- {{ .Values.persistence.accessMode | quote }}
|
||||
resources:
|
||||
|
|
|
@ -12,17 +12,6 @@ type: Opaque
|
|||
data:
|
||||
accesskey: {{ if .Values.accessKey }}{{ .Values.accessKey | toString | b64enc | quote }}{{ else }}{{ randAlphaNum 20 | b64enc | quote }}{{ end }}
|
||||
secretkey: {{ if .Values.secretKey }}{{ .Values.secretKey | toString | b64enc | quote }}{{ else }}{{ randAlphaNum 40 | b64enc | quote }}{{ end }}
|
||||
{{- if and .Values.gcsgateway.enabled .Values.gcsgateway.gcsKeyJson }}
|
||||
gcs_key.json: {{ .Values.gcsgateway.gcsKeyJson | toString | b64enc }}
|
||||
{{- end }}
|
||||
{{- if .Values.s3gateway.enabled -}}
|
||||
{{- if .Values.s3gateway.accessKey }}
|
||||
awsAccessKeyId: {{ .Values.s3gateway.accessKey | toString | b64enc | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.s3gateway.secretKey }}
|
||||
awsSecretAccessKey: {{ .Values.s3gateway.secretKey | toString | b64enc | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .Values.etcd.clientCert }}
|
||||
etcd_client_cert.pem: {{ .Values.etcd.clientCert | toString | b64enc | quote }}
|
||||
{{- end }}
|
||||
|
|
|
@ -73,9 +73,6 @@ mountPath: "/export"
|
|||
## |:----------------------|:-------------------------|
|
||||
## | accessKey | accesskey |
|
||||
## | secretKey | secretkey |
|
||||
## | gcsgateway.gcsKeyJson | gcs_key.json |
|
||||
## | s3gateway.accessKey | awsAccessKeyId |
|
||||
## | s3gateway.secretKey | awsSecretAccessKey |
|
||||
## | etcd.clientCert | etcd_client_cert.pem |
|
||||
## | etcd.clientCertKey | etcd_client_cert_key.pem |
|
||||
##
|
||||
|
@ -240,43 +237,6 @@ updatePrometheusJob:
|
|||
runAsGroup: 1000
|
||||
fsGroup: 1000
|
||||
|
||||
s3gateway:
|
||||
enabled: false
|
||||
replicas: 4
|
||||
serviceEndpoint: ""
|
||||
accessKey: ""
|
||||
secretKey: ""
|
||||
|
||||
## Use minio as an azure blob gateway, you should disable data persistence so no volume claim are created.
|
||||
## https://docs.minio.io/docs/minio-gateway-for-azure
|
||||
azuregateway:
|
||||
enabled: false
|
||||
# Number of parallel instances
|
||||
replicas: 4
|
||||
|
||||
## Use minio as GCS (Google Cloud Storage) gateway, you should disable data persistence so no volume claim are created.
|
||||
## https://docs.minio.io/docs/minio-gateway-for-gcs
|
||||
|
||||
gcsgateway:
|
||||
enabled: false
|
||||
# Number of parallel instances
|
||||
replicas: 4
|
||||
# credential json file of service account key
|
||||
gcsKeyJson: ""
|
||||
# Google cloud project-id
|
||||
projectId: ""
|
||||
|
||||
## Use minio on NAS backend
|
||||
## https://docs.minio.io/docs/minio-gateway-for-nas
|
||||
|
||||
nasgateway:
|
||||
enabled: false
|
||||
# Number of parallel instances
|
||||
replicas: 4
|
||||
# For NAS Gateway, you may want to bind the PVC to a specific PV. To ensure that happens, PV to bind to should have
|
||||
# a label like "pv: <value>", use value here.
|
||||
pv: ~
|
||||
|
||||
## Use this field to add environment variables relevant to Minio server. These fields will be passed on to Minio container(s)
|
||||
## when Chart is deployed
|
||||
environment:
|
||||
|
|
Loading…
Reference in New Issue