- 安装Helm
首先,您需要在您的计算机上安装Helm。请根据操作系统类型下载和安装适当的Helm版本。Linux用户可以使用以下命令安装:
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
- 创建NFS StorageClass
在运行Minio之前,需要创建一个NFS StorageClass以便Minio可以使用它。
首先,创建一个名为nfs-client-provisioner的命名空间,如下所示:
kubectl create namespace nfs-client-provisioner
然后,使用以下命令创建nfs-client-provisioner的服务帐户及其相关资源:
kubectl apply -f https://raw.githubusercontent.com/kubernetes-incubator/external-storage/master/nfs-client/deploy/rbac.yaml -n nfs-client-provisioner
接下来,使用以下YAML配置文件创建一个StorageClass:
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: nfs-client
provisioner: cluster.local/nfs-client-provisioner
parameters:
archiveOnDelete: "false"
请注意,此处将provisioner配置为cluster.local/nfs-client-provisioner。这是因为我们使用的是由kubernetes-nfs提供的nfs-client-provisioner,该provisioner的名称为nfs-client-provisioner.nfs-client-provisioner.svc.cluster.local。
使用以下命令创建StorageClass:
kubectl apply -f <file-name>.yaml
- 安装Minio
现在,我们可以使用Helm安装Minio了。在安装之前,您需要选择一个名称和命名空间以用于Minio。
使用以下命令添加minio存储库:
helm repo add minio https://helm.min.io/
然后使用以下命令更新存储库:
helm repo update
最后,使用以下命令安装Minio:
helm install <release-name> minio/minio \
--set accessKey=<access-key>,secretKey=<secret-key> \
--set persistence.storageClass=nfs-client \
--namespace <namespace>
在这里,我们将release-name替换为Minio的名称,access-key和secret-key是您想要用于访问Minio的凭据,nfs-client是我们刚刚创建的StorageClass的名称,namespace是Minio所在的命名空间。
- 验证Minio安装
您可以使用以下命令验证Minio是否已成功安装:
kubectl get pods -n <namespace>
其中,
- 访问Minio
现在,您可以使用浏览器或Minio客户端访问Minio了。
使用浏览器访问Minio:
在浏览器中输入以下URL:
http://<minio-service-ip>:9000
其中,
kubectl get svc -n <namespace>
其中,
使用Minio客户端访问Minio:
下载并安装Minio客户端:https://docs.min.io/docs/minio-client-quickstart-guide.html
使用以下命令连接到Minio:
mc config host add <alias> http://<minio-service-ip>:9000 <access-key> <secret-key>
其中,
现在,您可以使用以下命令列出Minio中的存储桶:
mc ls <alias>
最后,您可以使用Minio客户端上传和下载文件。
这就是如何使用Helm安装Minio并配置使用已有的NFS StorageClass。