通过helm在k8s上安装minio

1 helm安装minio

1.1 下载minio

添加仓库

复制代码
helm repo add bitnami https://charts.bitnami.com/bitnami

将minio拉取下来

复制代码
helm pull bitnami/minio --version 版本号

解压到本地开始编辑配置文件

复制代码
tar -zxf minio-xxx.tgz

[root@k8s-master01 minio]# vi values.yaml

1.2 修改values.yaml配置

复制代码
auth:
  rootUser: admin   //root用户
  rootPassword: "密码" /root密码
statefulset:
  replicaCount: 1  //副本
service:
  type: NodePort  //指定外网访问服务类型

1.3 开始安装minio

复制代码
[root@k8s-master01 minio]# helm install minio ../minio -n newlandp

1.4 查看安装情况

复制代码
[root@k8s-master01 minio]# kubectl get pod  -n newlandp   
NAME                     READY   STATUS    RESTARTS   AGE
minio-5d684b8858-8vzn5   1/1     Running   0          18m
postgresql-0             1/1     Running   0          49d

[root@k8s-master01 minio]# kubectl get svc  -n newlandp
NAME            TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)                         AGE
minio           NodePort    10.0.0.149   <none>        9000:32077/TCP,9001:32373/TCP   18m
postgresql      NodePort    10.0.0.154   <none>        5432:32109/TCP                  49d
postgresql-hl   ClusterIP   None         <none>        5432/TCP                        49d

2 如果只是docker环境

1 创建本地目录

复制代码
mkdir -p /usr/local/minio/config
mkdir -p /usr/local/minio/data

2 镜像下载

复制代码
docker pull minio/minio:RELEASE.2023-07-21T21-12-44Z.fips

3 运行

复制代码
docker run -p 9080:9080 -p 9090:9090 \
     --net=host \
     --name minio \
     -d --restart=always \
     -e "MINIO_ROOT_USER=minioadmin" \
     -e "MINIO_ROOT_PASSWORD=liu22222" \
     -v /usr/local/minio/data:/data \
     -v /usr/local/minio/config:/root/.minio \
     minio/minio:RELEASE.2023-07-21T21-12-44Z.fips server \
     /data --console-address ":9090" -address ":9080"

-p 9000:9000:将容器内部的 9000 端口映射到主机的 9000 端口,用于访问 MinIO 对象存储服务器。

-p 9090:9090:将容器内部的 9090 端口映射到主机的 9090 端口,用于访问 MinIO 管理界面。

--net=host:将容器与主机共享网络命名空间,这样容器内部的网络设置可以直接应用于主机。

--name minio:给容器指定一个名称为 "minio"。

-d --restart=always:将容器设置为以守护进程方式运行,并在重启时自动重启容器。

-e "MINIO_ROOT_USER=minioadmin" -e "MINIO_ROOT_PASSWORD=minioadmin":设置 MinIO 的访问密钥和秘密密钥。在这个例子中,访问密钥设置为 "minioadmin",秘密密钥也设置为 "minioadmin"。

-v /home/minio/data:/data:将主机的 /home/minio/data 目录挂载到容器的 /data 目录,用于持久化存储 MinIO 的数据。

-v /home/minio/config:/root/.minio:将主机的 /home/minio/config 目录挂载到容器的 /root/.minio 目录,用于存储 MinIO 的配置文件。

minio/minio server /data --console-address ":9090" -address ":9000":以 /data 目录作为存储路径,在主机上启动 MinIO 服务器。--console-address 用于指定管理界面的访问地址,-address 则指定 MinIO 对象存储的访问地址。

3 配置minio浏览器访问设置

test为桶名称

复制代码
{
   "Version": "2012-10-17",
   "Statement": [
       {
           "Effect": "Allow",
           "Principal": {
               "AWS": [
                   "*"
               ]
           },
           "Action": [
               "s3:GetBucketLocation",
               "s3:ListBucket"
           ],
           "Resource": [
               "arn:aws:s3:::test"
           ]
       },
       {
           "Effect": "Allow",
           "Principal": {
               "AWS": [
                   "*"
               ]
           },
           "Action": [
               "s3:GetObject"
           ],
           "Resource": [
               "arn:aws:s3:::test/*"
           ]
       }
   ]
}
相关推荐
霖.247 分钟前
四种常用SVC(service)及其与Ingress协作方式
linux·服务器·云原生·kubernetes·k8s
Coco_淳1 小时前
K8s平台部署Grafana + Loki + Promtail日志收集系统
kubernetes·grafana·日志·loki
liweiweili1264 小时前
K8S中关于容器对外提供服务网络类型
容器·kubernetes
小白不想白a4 小时前
【ansible/K8s】K8s的自动化部署源码分享
kubernetes·自动化·ansible
云游5 小时前
Zabbix7.4.8(三):通过Zabbix agent 2监控Docker相关指标
docker·容器·zabbix
Lin_Aries_04215 小时前
使用 Jenkins 的流水线项目实施 CI/CD
运维·ci/cd·docker·容器·云计算·jenkins
云道轩5 小时前
初次尝试在kubernetes 1.31 上安装 人工智能模型运行平台 llm-d
人工智能·kubernetes·llm-d
缘的猿6 小时前
Kubernetes 安全管理:认证、授权与准入控制全面解析
java·安全·kubernetes
The Open Group6 小时前
TOGAF® 架构库的隐藏力量:现代知识资产战略
微服务·云原生·架构
come112347 小时前
Go 和云原生 的现状和发展前景
开发语言·云原生·golang