MinIO 高性能对象存储离线部署方案

适用系统:Ubuntu 22.04 | 场景:内网环境图片存储

替代 HDFS S3 标准接口 无依赖安装

💡 为什么选择 MinIO?

运维极简: 单个二进制文件即可运行,无需 Java/Python 环境。
性能卓越: 专为海量小文件(图片)优化,读写延迟极低。
平滑迁移: 兼容 S3 协议,Java 应用使用 AWS S3 SDK 即可无缝切换。
资源占用: 相比 HDFS 庞大的内存占用,MinIO 在空闲时几乎不消耗资源。

部署步骤

第一步:外网环境准备文件

在有网的机器上下载 MinIO 服务端和客户端二进制文件。

Shell # 下载服务端
wget https://dl.min.io/server/minio/release/linux-amd64/minio

# 下载客户端 (用于管理、设置权限)
wget https://dl.min.io/client/mc/release/linux-amd64/mc

将下载好的 minio 和 mc 两个文件通过 U 盘拷贝至内网服务器。

第二步:基础权限设置

将二进制文件移动到系统路径并赋予执行权限。

Shell sudo mv minio mc /usr/local/bin/
sudo chmod +x /usr/local/bin/minio /usr/local/bin/mc

第三步:创建配置与存储目录

为了安全,不建议使用 root 运行。建议将数据存储挂载在独立大硬盘上。

# 创建用户和组
sudo groupadd -r minio-user
sudo useradd -M -r -g minio-user minio-user

# 创建存储目录(假设挂载点为 /data)
sudo mkdir -p /data/minio_data
sudo chown minio-user:minio-user /data/minio_data

# 创建配置文件目录
sudo mkdir -p /etc/minio
sudo chown minio-user:minio-user /etc/minio

第四步:编辑环境配置文件

新建文件 /etc/default/minio,配置登录账号、密码及端口。

MINIO_VOLUMES="/data/minio_data"
MINIO_OPTS="--address :9000 --console-address :9001"
MINIO_ROOT_USER="admin"
MINIO_ROOT_PASSWORD="PowerGrid@2024" # 建议修改强密码

第五步:配置 Systemd 服务管理

创建 /etc/systemd/system/minio.service,实现开机自启。

[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target

[Service]
User=minio-user
Group=minio-user
EnvironmentFile=/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
Restart=always
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

第六步:启动服务

sudo systemctl daemon-reload
sudo systemctl enable minio
sudo systemctl start minio

# 检查状态
sudo systemctl status minio

🎉 验证部署