【MinIO 分布式集群运维实战:客户端MC、故障恢复、扩容、备份还原与Prometheus监控】

提示:本文原创作品,良心制作,干货为主,简洁清晰,一看就会

文章目录

  • 前言
  • 一、验证Minio可用性
    • [1.1 创建桶](#1.1 创建桶)
    • [1.2 创建key](#1.2 创建key)
    • [1.3 python api访问minio](#1.3 python api访问minio)
  • [二、Minio客户端 MC](#二、Minio客户端 MC)
    • [2.1 安装mc](#2.1 安装mc)
    • [2.2 mc简单命令](#2.2 mc简单命令)
  • 三、Minio故障恢复
    • [3.1 新节点准备](#3.1 新节点准备)
    • [3.2 创建逻辑卷](#3.2 创建逻辑卷)
    • [3.3 安装minio](#3.3 安装minio)
    • [3.4 修改负载均衡地址](#3.4 修改负载均衡地址)
    • [3.5 重启minio](#3.5 重启minio)
  • 四、Minio扩容
    • [4.1 minio部署方式](#4.1 minio部署方式)
    • [4.2 为什么不能直接扩容 LVM](#4.2 为什么不能直接扩容 LVM)
    • [4.3 minio标准扩容方式](#4.3 minio标准扩容方式)
  • 五、Minio备份还原
    • [5.1 安装rclone](#5.1 安装rclone)
    • [5.2 数据备份](#5.2 数据备份)
    • [5.3 数据还原](#5.3 数据还原)
  • 六、Minio监控

前言

我的实验环境https://blog.csdn.net/m0_63756214/article/details/164024724?spm=1001.2014.3001.5501

架构特点: 前端双 HAProxy 消除单点故障,后端 4 节点 MinIO 分布式存储,全链路高可用

主机名 IP 角色 说明
haproxy-keepalived1 192.168.13.141 负载均衡主节点 HAProxy + Keepalived,MASTER 状态,持有 VIP,转发 9000/9001 到后端 MinIO
haproxy-keepalived2 192.168.13.142 负载均衡备节点 HAProxy + Keepalived,BACKUP 状态,主节点故障时自动接管 VIP
minio1 192.168.13.143 存储节点 1 MinIO Server,分布式集群节点,4 块数据盘
minio2 192.168.13.144 存储节点 2 MinIO Server,分布式集群节点,4 块数据盘
minio3 192.168.13.145 存储节点 3 MinIO Server,分布式集群节点,4 块数据盘
minio4 192.168.13.146 存储节点 4 MinIO Server,分布式集群节点,4 块数据盘

一、验证Minio可用性

1.1 创建桶

1.2 创建key

由于这两个key只会显示一次,需要保存这两个key

1.3 python api访问minio

这里我准备一台独立设备,安装 Python 环境;编写测试脚本,验证 MinIO 桶创建、文件上传、文件下载功能是否正常;全部验证通过后,就可以将 MinIO 集群正式交付开发使用

yaml 复制代码
root@ubuntu:~# apt update && apt -y install python3-pip
root@ubuntu:~# sudo -H pip3 install -U pip  # Ubuntu18.04系统需要执行pip 升级到最新版本
root@ubuntu:~# python3 -m pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
root@ubuntu:~# pip3 install minio    # ubuntu24.04+需要加参数--break-system-packages

## 连接 MinIO → 自动建名为mybucket桶 → 上传 /var/log/syslog → 再把它下载回来,是一个完整的上传 + 下载验证测试脚本
root@ubuntu:~# vim test.py 
#!/usr/bin/python3
import os
from minio import Minio
from minio.error import S3Error
# from minio.error import (ResponseError, BucketAlreadyOwnedByYou, BucketAlreadyExists)

# 初始化MinIO客户端
minio_client = Minio(
    endpoint='192.168.13.100:9000',
    access_key='KGg7KOFRdlqH3NXuL9CT',
    secret_key='Zap11uOARH8fx0qxMWjz8XtzNsZKsgFqbpcpB2lJ',
    secure=False  # 如果使用SSL,请将此项设置为True
)

bucket_name = "mybucket"
object_name = "example-object.txt"
local_file_path = "/var/log/syslog"

try:
    # 检查存储桶是否存在,如果不存在则创建
    if not minio_client.bucket_exists(bucket_name):
        minio_client.make_bucket(bucket_name)
        print(f"Bucket '{bucket_name}' created successfully.")
    else:
        print(f"Bucket '{bucket_name}' already exists.")

    # 上传文件到存储桶
    minio_client.fput_object(bucket_name, object_name, local_file_path)
    print(f"Successfully uploaded '{local_file_path}' to '{object_name}'.")
except ResponseError as e:
    print(f"An error occurred: {e}")

# 下载存储桶中的对象
downloaded_file_path = "example-object.txt"

try:
    minio_client.fget_object(bucket_name, object_name, downloaded_file_path)
    print(f"Successfully downloaded '{object_name}' to '{downloaded_file_path}'.")
except ResponseError as e:
    print(f"An error occurred while downloading '{object_name}': {e}")
root@ubuntu:~# python3 test.py 

可以看到桶创建成功,并且上传下载文件正常

二、Minio客户端 MC

mc 是minio的命令行客户端工具,相当于 AWS 的 aws s3 命令,用来管理和操作minio

https://dl.min.io/client/mc/release/linux-amd64/

2.1 安装mc

这里我下载的是最新版的mc

yaml 复制代码
root@ubuntu:~# wget https://dl.min.io/client/mc/release/linux-amd64/mc
root@ubuntu:~# ls
mc.linux-amd64.RELEASE.2025-08-13T08-35-41Z  example-object.txt  test.py
root@ubuntu:~# mv mc.linux-amd64.RELEASE.2025-08-13T08-35-41Z mc
root@ubuntu:~# install mc /usr/local/bin/mc

2.2 mc简单命令

yaml 复制代码
root@ubuntu:~# mc --autocompletion  # 补全命令
# 加一个别名,把地址 + access_key+secret_key保存为简短名字minio-server,以后直接用mc ls minio-server/ 就能操作,不用每次输密钥
root@ubuntu:~# mc alias set minio-server http://192.168.13.100:9000 KGg7KOFRdlqH3NXuL9CT Zap11uOARH8fx0qxMWjz8XtzNsZKsgFqbpcpB2lJ
root@ubuntu:~# mc alias ls
yaml 复制代码
# 查看minio目录文件
root@ubuntu:~# mc ls minio-server/
[2026-08-26 13:33:31 CST]     0B mybucket/
[2026-08-26 13:11:03 CST]     0B test-20260826/
root@ubuntu:~# mc ls minio-server/mybucket
[2026-08-26 13:33:31 CST] 424KiB STANDARD example-object.txt

# 上传文件
root@ubuntu:~# ls
example-object.txt  mc  test.py
root@ubuntu:~# mc cp test.py minio-server/mybucket

# 上传目录
root@ubuntu:~# mc cp --recursive /etc/ minio-server/test-20260826/

# 创建桶
root@ubuntu:~# mc mb minio-server/bucket01

可以看到上传下载文件,创建桶都成功了

yaml 复制代码
# 拷贝minio文件到本机
root@ubuntu:~# mc cp minio-server/mybucket/example-object.txt /tmp
root@ubuntu:~# ls /tmp
example-object.txt

# 查看minio服务端集群状态信息
root@ubuntu:~# mc admin info minio-server

mc的命令还有很多,感兴趣的可以自行了解

三、Minio故障恢复

MinIO 具备节点故障自愈能力:服务异常停掉后可重新启动minio服务就能直接恢复运行;若节点操作系统损坏需重新安装,则可在系统重装完成后恢复服务

现在我们模拟 MinIO 集群中单节点磁盘彻底损坏的故障场景,该节点 MinIO 服务无法正常启动

虽然单节点故障不影响 MinIO 集群正常使用,但应及时修复,避免长期处于降级状态。若为服务异常,重启该节点 MinIO 服务后集群即可自动恢复;若为系统损坏,则需更换新设备重新部署 MinIO 并加入集群

  1. 准备一台与前三个 MinIO 节点配置完全一致的新节点,新节点ip 192.168.13.139
  2. 修改 HAProxy 负载均衡中的后端节点地址
  3. 更新各节点 /etc/hosts 中的主机名映射
  4. 重启各节点服务

3.1 新节点准备

yaml 复制代码
root@ubuntu:~# hostnamectl set-hostname minio4
root@minio4:~# ntpdate ntp.aliyun.com

# minio1~4都要改成一样的
root@minio4:~# vim /etc/hosts
192.168.13.143 minio1
192.168.13.144 minio2
192.168.13.145 minio3
192.168.13.139 minio4

# 准备四个磁盘创建逻辑卷(和我前三台的操作步骤一样)
root@minio4:~# lsblk

3.2 创建逻辑卷

yaml 复制代码
# 创建pv
root@minio4:~# pvcreate /dev/sdb /dev/sdc /dev/sdd /dev/sde

# 创建vg
root@minio4:~# vgcreate vg_minio /dev/sdb /dev/sdc /dev/sdd /dev/sde
root@minio4:~# vgdisplay vg_minio
yaml 复制代码
# 创建lv
root@minio4:~# lvcreate -l +250 -n minio-lv1 vg_minio
root@minio4:~# lvcreate -l +250 -n minio-lv2 vg_minio
root@minio4:~# lvcreate -l +250 -n minio-lv3 vg_minio
root@minio4:~# lvcreate -l +250 -n minio-lv4 vg_minio

# 格式化
root@minio4:~# mkfs.xfs /dev/vg_minio/minio-lv1
root@minio4:~# mkfs.xfs /dev/vg_minio/minio-lv2
root@minio4:~# mkfs.xfs /dev/vg_minio/minio-lv3
root@minio4:~# mkfs.xfs /dev/vg_minio/minio-lv4

# 创建挂在目录并挂载
root@minio4:~# mkdir -p /mnt/disk{1,2,3,4}
root@minio4:~# useradd -r -s /sbin/nologin minio-user
root@minio4:~# chown -R minio-user:minio-user /mnt/disk*
root@minio4:~# vim /etc/fstab
/dev/vg_minio/minio-lv1 /mnt/disk1 xfs defaults 0 0
/dev/vg_minio/minio-lv2 /mnt/disk2 xfs defaults 0 0
/dev/vg_minio/minio-lv3 /mnt/disk3 xfs defaults 0 0
/dev/vg_minio/minio-lv4 /mnt/disk4 xfs defaults 0 0
root@minio4:~# mount -a
root@minio4:~# df -Th

3.3 安装minio

yaml 复制代码
# 复制安装包,配置文件到minio4
root@minio1:~# scp minio root@192.168.13.139:/root
root@minio1:~# scp /etc/default/minio root@192.168.13.139:/tmp   
root@minio1:~# scp /lib/systemd/system/minio.service  root@192.168.13.139:/tmp
yaml 复制代码
root@minio4:~# ls
minio
root@minio4:~# install minio /usr/local/bin/
root@minio4:~# mv /tmp/minio /etc/default/minio
root@minio4:~# mv /tmp/minio.service /lib/systemd/system/minio.service
root@minio4:~# id minio-user 
uid=999(minio-user) gid=999(minio-user) groups=999(minio-user)
root@minio4:~# ll /mnt/
total 8
drwxr-xr-x  6 root       root       4096 Aug 26 15:58 ./
drwxr-xr-x 24 root       root       4096 Apr  7 16:15 ../
drwxr-xr-x  6 minio-user minio-user   77 Aug 26 16:15 disk1/
drwxr-xr-x  6 minio-user minio-user   77 Aug 26 16:15 disk2/
drwxr-xr-x  6 minio-user minio-user   77 Aug 26 16:15 disk3/
drwxr-xr-x  6 minio-user minio-user   77 Aug 26 16:15 disk4/

3.4 修改负载均衡地址

yaml 复制代码
# 两个haproxy都要改
root@haproxy-keepalived1:~# vim /etc/haproxy/haproxy.cfg

改完重启haproxy,keepalived都重启一下

3.5 重启minio

yaml 复制代码
root@minio4:~# systemctl daemon-reload
root@minio4:~# systemctl enable --now minio.service  # minio1~3可以都重启一下

# 查看minio4的挂在目录,可以看到数据自动被同步过来了
root@minio4:~# ls /mnt/disk1/
bucket01  mybucket  test-20260826
root@minio4:~# ls /mnt/disk2/
bucket01  mybucket  test-20260826
root@minio4:~# ls /mnt/disk3/
bucket01  mybucket  test-20260826
root@minio4:~# ls /mnt/disk4/
bucket01  mybucket  test-20260826

登录minio,可以看到集群已经恢复,数据会自动同步

四、Minio扩容

4.1 minio部署方式

MinIO集群常见有两种底层存储部署方式:

LVM逻辑卷部署:基于LVM逻辑卷作为MinIO的数据盘,将LV格式化为XFS后挂载,提供给MinIO使用。该方案运维灵活性高,方便在线扩容磁盘空间,但不属于MinIO官方推荐方案,额外的LVM层会带来一定性能与可靠性开销

JBOD裸盘部署(官方推荐):对物理磁盘直接使用MBR/GPT进行磁盘分区,分区格式化为XFS文件系统,创建挂载点并完成挂载,直接将分区作为独立磁盘交付MinIO使用。JBOD模式规避额外存储管理层,发挥MinIO纠删码原生能力,是官方优先推荐的部署形态

JBOD模式下每一块盘/分区对MinIO来说都是独立drive;而分布式纠删码集群中,无论底层是裸盘还是LVM逻辑卷,都不支持通过放大单drive容量来扩容ErasureSet,只能新增整套磁盘组新建ErasureSet实现集群扩容

4.2 为什么不能直接扩容 LVM

目前我的minio是基于lvm搭建的

MinIO 官方文档明确指出,不支持通过逻辑卷扩容、滚动更换硬盘或其他文件系统级的方法来增加存储。MinIO 的容量在集群启动时根据 MINIO_VOLUMES 中指定的路径确定,后续的 LVM 扩容操作不会被识别。你之前的理解是准确的:即使 df -h 显示单盘容量变大了,MinIO 控制台显示的总容量也不会变化

举例子:原来每个 LV 200G,16 盘 EC,可用容量大概 1600G;

全部 LV 扩到 500G,df‑h 看到每盘 500G,但是 MinIO 控制台总容量依旧≈1600G,只是单盘不容易报磁盘耗尽

这是规避磁盘满故障,不是业务扩容,不能存更多数据

4.3 minio标准扩容方式

MinIO 标准扩容:水平扩展(Scale Out),即向现有集群添加一个全新的"服务器池(Server Pool)"

基于我 4节点 x 4盘 的集群,以下是标准流程:

✅规划和准备新硬件

  1. 确定新池规模 :新池的节点数应是现有池的整数倍 。对于我的集群,应准备 4台(或8台、12台)新服务器
  2. 确保硬件一致性 :新服务器配置应与现有节点尽量相同,尤其是每台服务器的磁盘数量、类型和大小必须一致
  3. 安装环境 :在新节点上安装与现有集群完全相同版本 的 MinIO。格式化并挂载磁盘(生产环境推荐 XFS 文件系统),确保挂载点路径统一(如 /data1, /data2 等)

✅步骤二:更新集群配置

这是最关键的一步。需要修改 MinIO 的启动参数,将新旧两个池都包含进来

  1. 编辑配置文件 :在任意一个现有节点 上,编辑 MinIO 的配置文件(如 config.yaml 或环境变量文件)

  2. 添加新池 :在 pools 列表末尾,追加新池的配置。例如:

    yaml 复制代码
    pools:
      - args:
        - "http://minio{1...4}/data{1...4}"
      - args:                                 # 增加新增的池
        - "http://minio{5...8}/data{1...4}"   # 新节点
  3. 同步配置文件 :将更新后的配置文件复制到所有节点(包括新旧节点),并确保文件内容完全一致

✅步骤三:启动新节点并重载配置

  1. 启动新节点 :在新节点(minio5 ~ minio8)上启动 MinIO 服务
  2. 重载现有节点配置 :向所有现有节点minio1 ~ minio4)的 MinIO 进程发送 SIGHUP 信号,使其动态加载新配置,无需重启,版本比较旧则需要重启

✅ 步骤四:验证与更新负载均衡

  1. 验证扩容 :使用 mc admin info 命令检查集群状态,确认所有新节点和磁盘均在线
  2. 更新负载均衡 :将新节点(minio5 ~ minio8)的 IP 添加到 HAProxy 等负载均衡器的后端服务器列表中,并重载配置

本次扩容步骤已有详细说明,不再重复演示代码操作。新增MinIO节点硬件规格需与原有4台节点完全一致

注意事项:

  1. 在所有8台节点的/etc/hosts中完成全部节点主机名与IP的域名解析配置
  2. 保证8台服务器时间同步
  3. 可直接将原有节点的MinIO安装包拷贝至新节点
  4. 同时将/etc/default/minio环境变量文件、/lib/systemd/system/minio.service服务文件,从老节点同步复制到新节点

该节点部署流程与本文第三小节的故障恢复操作基本一致,可参照对应章节执行

五、Minio备份还原

这里我下载一个mc命令,方便演示

yaml 复制代码
root@ubuntu:~# wget https://dl.min.io/client/mc/release/linux-amd64/mc
root@ubuntu:~# install mc /usr/local/bin/mc
root@ubuntu:~# mc --autocompletion
root@ubuntu:~# mc alias set minio-server http://192.168.13.100:9000 KGg7KOFRdlqH3NXuL9CT Zap11uOARH8fx0qxMWjz8XtzNsZKsgFqbpcpB2lJ

5.1 安装rclone

rclone 是命令行工具,专门用来在本地磁盘、对象存储、各类云盘之间做文件迁移、同步、拷贝

它支持非常多后端:MinIO/S3、阿里云OSS、腾讯COS、华为OBS、百度网盘、OneDrive、Google Drive、本地文件系统、SFTP等

结合MinIO运维场景,可以实现同步、备份

rclone sync:单向同步,源端有什么目标端就变成什么,删除目标多余文件

rclone copy:只拷贝新增/变更文件,不删除目标端文件,用来做MinIO数据异地备份、定时备份

yaml 复制代码
## 1. 下载rclone
root@ubuntu:~# apt list rclone
root@ubuntu:~# apt update && apt -y install rclone
root@ubuntu:~# rclone version
yaml 复制代码
## 2. 添加rclon补全命令
root@ubuntu:~# vim /root/.bashrc  # 添加一行
source <(rclone completion bash)
root@ubuntu:~# source /root/.bashrc 

## 3. rclone配置文件
root@ubuntu:~# mkdir .config/rclone
root@ubuntu:~# cat > ~/.config/rclone/rclone.conf <<'EOF'
[minio]                          # rclone远端别名
type = s3                        # 后端存储类型
provider = Minio                 # 指定S3服务商为MinIO
env_auth = false                 
#access_key_id = admin           
#secret_access_key = 12345678    
access_key_id = KGg7KOFRdlqH3NXuL9CT          # MinIO访问密钥AccessKey
secret_access_key = Zap11uOARH8fx0qxMWjz8XtzNsZKsgFqbpcpB2lJ  # MinIO密钥SecretKey
region = luqing                 # 随意填写
endpoint = http://192.168.13.100:9000        # MinIO S3 API访问地址,填写VIP/节点IP+9000端口
EOF

## 4. 测试rclone连通minio集群,可以看到所有的桶
root@ubuntu:~# rclone lsd minio:
          -1 2026-08-26 14:20:12        -1 bucket01
          -1 2026-08-26 13:33:31        -1 mybucket
          -1 2026-08-26 13:11:03        -1 test-20260826

5.2 数据备份

yaml 复制代码
## 5. 克隆mybucket桶所有内容到/data/minio-bak/,/data/minio-bak/会自动创建
root@ubuntu:~# rclone sync minio:/mybucket /data/minio-bak/ -vP
root@ubuntu:~# ls /data/minio-bak/
example-object.txt  test.py  ubuntu-18.04.6-live-server-amd64.iso

## 6. 上传一个新文件到mybucket
root@ubuntu:~# mc cp  /home/ubuntu/nfs-subdir-external-provisioner-4.0.18.tar.gz minio-server/mybucket

## 7. 加参数--checksum做增量备份
root@ubuntu:~# rclone sync minio:/mybucket /data/minio-bak/ -vP --checksum
root@ubuntu:~# ls /data/minio-bak/
example-object.txt  nfs-subdir-external-provisioner-4.0.18.tar.gz  test.py  ubuntu-18.04.6-live-server-amd64.iso

5.3 数据还原

删掉桶内文件或者桶都可以还原

yaml 复制代码
## 8. 查看mybucket桶大小,目前是0
root@ubuntu:~# mc du minio-server/mybucket
0B      0 objects       mybucket

## 9. 将本地/data/minio‑bak/目录同步到mybucket桶
root@ubuntu:~# rclone copy /data/minio-bak/ minio:/mybucket --transfers=8 --update -vP
root@ubuntu:~# mc du minio-server/mybucket
975MiB  4 objects       mybucket

可以看到数据同步成功

六、Minio监控

minio监控内置支持Prometheus,推荐使用Prometheus和grafana进行监控

我已经提前安装好了Prometheus

yaml 复制代码
## 1. 创建一个仅用于监控的访问策略
root@ubuntu:~# vim prometheus-scrape.json
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["admin:Prometheus"]
    }
  ]
}

## 2. 创建专用访问密钥
root@ubuntu:~# mc admin accesskey create minio-server/ \
  --name "prometheus-scrape" \
  --description "Used by Prometheus to scrape metrics" \
  --policy /root/prometheus-scrape.json
Access Key: RBZBGSR9AAJZ8OL8YO02
Secret Key: +bODJxFWhRV6P8Dw3v7zL9xwE8ikBllKlPg8c21T
Expiration: NONE
Name: prometheus-scrape
Description: Used by Prometheus to scrape metrics

## 3. 为这个新密钥创建独立的 mc 别名
root@ubuntu:~# mc alias set minio-prometheus http://192.168.13.100:9000 RBZBGSR9AAJZ8OL8YO02 +bODJxFWhRV6P8Dw3v7zL9xwE8ikBllKlPg8c21T

## 4. 生成 Prometheus 抓取配置
root@ubuntu:~# mc admin prometheus generate minio-prometheus
scrape_configs:
- job_name: minio-job
  bearer_token: eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJwcm9tZXRoZXVzIiwic3ViIjoiUkJaQkdTUjlBQUpaOE9MOFlPMDIiLCJleHAiOjQ5NDE0MTk2Nzl9.rBH_JfIQ2IsuMkFPIChPV1Xz2uNLi1srKj3gMHqi6ifvu9FcIjs5yNjtd_2exvLOGPT-9es5wtKIkBidyPGW7Q
  metrics_path: /minio/v2/metrics/cluster
  scheme: http
  static_configs:
  - targets: ['192.168.13.100:9000']
yaml 复制代码
## 5. 修改搜刮配置
scrape_configs:
  - job_name: 'minio-cluster'
    bearer_token: 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJwcm9tZXRoZXVzIiwic3ViIjoiUkJaQkdTUjlBQUpaOE9MOFlPMDIiLCJleHAiOjQ5NDE0MTk2Nzl9.rBH_JfIQ2IsuMkFPIChPV1Xz2uNLi1srKj3gMHqi6ifvu9FcIjs5yNjtd_2exvLOGPT-9es5wtKIkBidyPGW7Q'
    metrics_path: '/minio/v2/metrics/cluster'
    scheme: 'http'
    static_configs:
    - targets: ['192.168.13.100:9000']  # 我minio集群的vip

登录Prometheus可以看到,minio已经被监控

可以ui界面查询minio监控指标,后续可以在grafana中添加dashboard,这里不再演示

注:

文中若有疏漏,欢迎大家指正赐教。

本文为100%原创,转载请务必标注原创作者,尊重劳动成果。

求赞、求关注、求评论!你的支持是我更新的最大动力,评论区等你~

相关推荐
时空无限15 天前
minio 设置策略
minio
分布式存储与RustFS3 个月前
RustFS S3 Table 开源后,我重新梳理了一下 Iceberg 数据湖的选型思路
人工智能·开源·minio·dpu·rustfs·ai存储·s3 table
sg_knight3 个月前
负载均衡配置:使用 Nginx 反向代理 MinIO 集群的实战教程
运维·nginx·负载均衡·文件管理·minio·cos·oss
遇见火星4 个月前
MinIO使用笔记
笔记·minio
分布式存储与RustFS4 个月前
Helm在Kubernetes上部署RustFS生产环境指南
分布式·零基础·picgo·对象存储·minio·rustfs
johnny2334 个月前
MinIO分片上传完整实现
minio
sg_knight4 个月前
MinIO 进阶:文件下载、批量获取与打包压缩全攻略
文件管理·minio·ftp·cos·oss·文件服务器
分布式存储与RustFS4 个月前
MinIO迎来“恶龙”?RustFS这款开源存储简直“不讲武德”
架构·rust·开源·对象存储·minio·企业存储·rustfs
sg_knight5 个月前
如何实现“秒传”与“断点续传”?MinIO + Java 实战进阶篇
java·开发语言·文件管理·minio·ftp·oss·文件传输