Установка MinIO Tenant в Nova Container Platform
1. Предварительные условия
-
У вас есть доступ к кластеру с учетной записью, имеющей роль
cluster-admin
в Kubernetes. -
Вы установили утилиту
kubectl
для работы с Kubernetes. -
Вы установили утилиту
helm
для работы с чартами.
2. Шаг первый. Установка MinIO Operator
-
Добавьте Helm репозиторий MinIO.
helm repo add minio-operator https://operator.min.io
-
Установите MinIO Operator.
helm install --namespace minio-operator --create-namespace operator minio-operator/operator
3. Шаг второй. Установка MinIO Tenant
-
Скачайте файл с переменными.
curl -sLo values.yaml https://raw.githubusercontent.com/minio/operator/master/helm/tenant/values.yaml
-
В файле с переменными измените значение storageClassName на
ovirt-csi-sc
или любой другой Storage Class, который можно использовать для Persistent Volume. Также, если нужно, измените остальные параметры, например, volumesPerServer и servers. -
Установите MinIO Tenant.
helm install --namespace minio-tenant --create-namespace --values values.yaml minio-tenant minio-operator/tenant
-
Добавьте Ingress ресурс для доступа к MinIO консоли.
kind: Ingress apiVersion: networking.k8s.io/v1 metadata: name: minio-console namespace: minio-tenant annotations: (1) nginx.ingress.kubernetes.io/backend-protocol: HTTPS nginx.ingress.kubernetes.io/rewrite-target: / nginx.ingress.kubernetes.io/ssl-redirect: 'true' spec: ingressClassName: nginx-public (2) tls: - hosts: - minio.apps.nova.test.local secretName: minio.apps.nova.test.local rules: - host: minio.apps.nova.test.local (3) http: paths: - path: / pathType: ImplementationSpecific backend: service: name: myminio-console (4) port: number: 9443
1 Настройка перенаправления с HTTP на HTTPS. 2 Указание, что нужно использовать встроенный nginx. 3 Ссылка для подключения. Можно изменить на более подходящую. 4 Имя сервиса, на который настроен Ingress. -
Добавьте Ingress ресурс для доступа к MinIO API.
kind: Ingress apiVersion: networking.k8s.io/v1 metadata: name: minio-api namespace: minio-tenant annotations: (1) nginx.ingress.kubernetes.io/backend-protocol: HTTPS nginx.ingress.kubernetes.io/rewrite-target: / nginx.ingress.kubernetes.io/ssl-redirect: 'true' spec: ingressClassName: nginx-public (2) tls: - hosts: - minioapi.apps.nova.test.local secretName: minioapi.apps.nova.test.local rules: - host: minioapi.apps.nova.test.local (3) http: paths: - path: / pathType: ImplementationSpecific backend: service: name: myminio-hl (4) port: number: 9000
1 Настройка перенаправления с HTTP на HTTPS. 2 Указание, что нужно использовать встроенный nginx. 3 Ссылка для подключения. Можно изменить на более подходящую. 4 Имя сервиса, на который настроен Ingress.
4. Проверка
-
Получите доступ к MinIO консоли по ссылке
https://minio.apps.nova.test.local
. Данные для подключения:Username: minio Password: minio123
-
Скачайте MinIO Client
mc
и подключитесь к MinIO API:mc alias set myminio https://minioapi.apps.nova.test.local minio minio123 --insecure