如何用MinIO搭建私有云存储

一、部署前准备1. 硬件要求开发/测试环境:CPU≥2核、内存≥4GB、磁盘≥20GB(支持机械盘或SSD);生产环境:CPU≥4核、内存≥8GB、磁盘≥100GB(推荐SSD,提升IO性能)。2. 软件要求Linux系统(推荐CentOS 7+/Ubuntu 18.04+,内核≥3.10);Docker≥24.0.0、Docker Compose≥v2.26.1(用于容器化部署,简化运维)

一、部署前准备

1. 硬件要求

  • 开发/测试环境:CPU≥2核、内存≥4GB、磁盘≥20GB(支持机械盘或SSD);
  • 生产环境:CPU≥4核、内存≥8GB、磁盘≥100GB(推荐SSD,提升IO性能)。

2. 软件要求

  • Linux系统(推荐CentOS 7+/Ubuntu 18.04+,内核≥3.10);
  • Docker≥24.0.0、Docker Compose≥v2.26.1(用于容器化部署,简化运维)。

3. 网络与安全

  • 服务器间网络互通(分布式部署需配置);
  • 关闭防火墙或开放必要端口(API端口:9000,默认;控制台端口:9001,默认);
  • 生产环境建议启用TLS加密(避免数据传输泄露)。

二、单机部署(快速测试/小型应用)

1. 下载MinIO二进制文件

通过MinIO官方镜像下载Linux版本(或Windows版本),赋予执行权限:

wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio

2. 创建数据目录

指定数据存储路径(可自定义,如/data/minio):

mkdir -p /data/minio

3. 启动MinIO服务

执行以下命令,指定数据目录和控制台端口(默认9090,可修改):

./minio server /data/minio --console-address ":9090"

4. 访问控制台

浏览器打开http://服务器IP:9090,输入默认账号密码(minioadmin/minioadmin,生产环境建议立即修改)。

三、Docker部署(推荐/易维护)

1. 拉取MinIO镜像

使用国内镜像(如轩辕镜像,加速下载)或官方源:

docker pull xxx.xuanyuan.run/minio/minio:latest  # 推荐国内镜像
# 或
docker pull minio/minio:latest  # 官方源

2. 创建数据与配置目录

用于持久化存储数据(避免容器重启丢失):

mkdir -p /docker/minio/{data,config}

3. 编写Docker Compose文件

创建compose.yaml,配置端口映射、环境变量(自定义账号密码)和卷挂载:

version: '3'
services:
  minio:
    image: minio/minio
    container_name: minio
    ports:
      - "9900:9000"  # API端口(程序调用)
      - "9901:9001"  # 控制台端口(浏览器访问)
    volumes:
      - /docker/minio/data:/data  # 数据目录
      - /docker/minio/config:/root/.minio  # 配置目录
    environment:
      MINIO_ROOT_USER: admin  # 管理员账号(自定义,长度≥5)
      MINIO_ROOT_PASSWORD: your_strong_password  # 管理员密码(自定义,长度≥8)
    command: server /data --console-address ":9001"  # 指定控制台端口

4. 启动容器

执行以下命令,启动MinIO服务:

docker-compose up -d

5. 访问控制台

浏览器打开http://服务器IP:9901,输入账号密码登录。

四、分布式部署(生产环境/高可用)

1. 集群规划

  • 至少4个节点(每节点1个MinIO进程,多节点共同提供服务);
  • 每节点至少2块数据盘(如/data/minio/disk1/data/minio/disk2),用于数据分片存储;
  • 所有节点网络互通,时间同步(建议使用NTP服务)。

2. 准备工作

  • 在所有节点下载MinIO二进制文件并赋予执行权限;
  • 创建数据目录(如/data/minio/disk1/data/minio/disk2);
  • 关闭防火墙或开放9000(API)、9001(控制台)端口。

3. 启动集群

在任意节点执行以下命令(替换为实际节点IP和数据盘路径):

minio server \
http://192.168.1.10/data/minio/disk1 http://192.168.1.10/data/minio/disk2 \
http://192.168.1.11/data/minio/disk1 http://192.168.1.11/data/minio/disk2 \
http://192.168.1.12/data/minio/disk1 http://192.168.1.12/data/minio/disk2 \
http://192.168.1.13/data/minio/disk1 http://192.168.1.13/data/minio/disk2 \
--console-address ":9001"

4. 验证集群状态

访问控制台(http://任意节点IP:9001),查看“集群概览”,确认所有节点状态为“健康”(Healthy)。

五、后续配置(可选但重要)

1. 修改默认账号密码

  • 控制台登录后,进入“Identity”→“Users”,修改minioadmin账号密码(生产环境必做);
  • 或通过环境变量启动时设置(如Docker部署中的MINIO_ROOT_USERMINIO_ROOT_PASSWORD)。

2. 创建存储桶(Bucket)

  • 登录控制台,点击“Buckets”→“Create Bucket”;
  • 输入存储桶名称(如my-bucket,仅支持小写字母、数字和连字符),选择权限(Private:私有;Public:公开,建议根据需求选择)。

3. 配置权限控制

  • 进入“Identity”→“Policies”,创建自定义策略(如限制某用户只能读取某存储桶);
  • 绑定策略到用户或组,实现细粒度权限管理。

4. 生产环境优化

  • 启用TLS加密:通过Let’s Encrypt获取免费证书,配置MinIO使用HTTPS;
  • 部署监控:使用Prometheus+Grafana监控集群状态(如磁盘使用率、请求量);
  • 定期备份:备份数据目录(如/data/minio)到异地,防止数据丢失。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/1446573.html

(0)
派派
上一篇 2025-11-04
下一篇 2025-11-04

发表回复

登录后才能评论