注意事项
使用helm部署MinIO分为两部分
- helm部署MinIO operator,用来管理tenant(K8S集群中只能部署一个)
- helm部署MinIO tenant,真实的MinIO Cluster(K8S集群中可以部署多个)
使用helm部署到K8S集群,则需要考虑如何暴露服务的问题。官方文档helm安装步骤是通过修改service nodePort配置,暴露服务。但也可以考虑部署ingress-nginx之类的ingress,MinIO helm配置文件中提供了指定ingress的参数。
本地Helm Chart部署MinIO
1.下载Helm Chart到本地
curl -O https://raw.githubusercontent.com/minio/operator/master/helm-releases/operator-5.0.11.tgz
Chart包含values.yaml文件,可以通过修改配置文件满足定制化需求。
解压后的文件,包含operator和tenant的Helm Chart。
2.部署ingress-nginx
helm upgrade ingress-minio-test -n minio-tenant-default ./ingress-nginx \
--set controller.image.tag=v1.4.0 \
--set controller.ingressClassResource.name=ingress-minio-test \
--set controller.ingressClassResource.controllerValue=k8s.io/ingress-minio-test \
--set controller.replicaCount=3 \
--set controller.service.enabled=false \
--set controller.scope.enabled=false \
--set controller.metrics.enabled=true \
--set controller.electionID=ingress-minio-test \
--set controller.nodeSelector.nodetype=minio-node \
--set controller.image.registry=k8s.gcr.io \
--set controller.image.image=ingress-nginx/controller \
--set controller.metrics.serviceMonitor.namespace=minio-ingress-test \
--description "install ingress-nginx 1.4.0"
下载ingress-nginx Helm Chart
wget https://github.com/kubernetes/ingress-nginx/releases/download/helm-chart-4.9.0/ingress-nginx-4.9.0.tgz