CentOS 上 MinIO 安装教程大全
一 环境准备与版本选择
- 系统建议:CentOS 7/8/Stream,以 x86_64 为例;确保已安装常用工具(如 wget)。
- 架构匹配:确认服务器为 x86_64 或 aarch64,下载对应架构的 MinIO 二进制或 RPM 包。
- 目录规划:建议统一目录,如 /data/minio/{bin,data,conf,logs},便于管理与备份。
- 安全建议:创建最小权限的系统用户运行 MinIO,避免使用 root;生产环境设置强口令。
- 版本获取:从 https://dl.min.io/server/minio/release/ 获取最新稳定版链接(选择 linux-amd64 或 linux-arm64)。
二 安装方式一 二进制部署与 systemd 管理
- 下载与授权
- 下载二进制:
wget -P /data/minio/bin https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x /data/minio/bin/minio
- 可选:加入 PATH
echo ‘export MINIO_HOME=/data/minio’ >> /etc/profile
echo ‘export PATH=$PATH:$MINIO_HOME/bin’ >> /etc/profile
source /etc/profile
- 创建用户与目录
- 创建用户:groupadd -r minio;useradd -M -r -g minio minio
- 创建目录:mkdir -p /data/minio/data;chown -R minio:minio /data/minio
- 配置环境变量
- 编辑 /etc/default/minio:
MINIO_ROOT_USER=admin
MINIO_ROOT_PASSWORD=StrongPassw0rd!
MINIO_VOLUMES=/data/minio/data
MINIO_OPTS=“–address :9000 --console-address :9001”
- 配置 systemd 服务
- 新建 /usr/lib/systemd/system/minio.service:
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
[Service]
User=minio
Group=minio
EnvironmentFile=/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
Restart=always
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
- 启动与开机自启
- systemctl daemon-reload
- systemctl enable --now minio
- systemctl status minio
- 访问验证
- 浏览器访问 http://<服务器IP>:9001,使用设置的 MINIO_ROOT_USER 与 MINIO_ROOT_PASSWORD 登录控制台。
三 安装方式二 RPM 包部署
- 下载与安装
- wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio-20250312180418.0.0-1.x86_64.rpm -O minio.rpm
- yum install minio.rpm -y(或 dnf install -y)
- 配置说明
- RPM 安装后,二进制通常位于 /usr/local/bin/minio;按“方式一”准备 /etc/default/minio 与 minio.service 并启用服务。
- 启动与验证
- systemctl daemon-reload && systemctl enable --now minio
- minio --version 检查版本;访问 :9001 控制台确认。
四 网络与系统安全配置
- 防火墙放行
- firewall-cmd --zone=public --add-port=9000/tcp --permanent
- firewall-cmd --zone=public --add-port=9001/tcp --permanent
- firewall-cmd --reload
- SELinux(如启用)
- 安装工具:yum install -y policycoreutils-python
- 放行端口:semanage port -a -t http_port_t -p tcp 9000;semanage port -a -t http_port_t -p tcp 9001
- 文件句柄与内核参数
- 建议设置:ulimit -n 65536;在 /etc/security/limits.conf 增加:
- soft nofile 65535
- hard nofile 65535
- 时间同步
- 集群或生产环境建议启用 NTP 同步,避免时间漂移导致的问题。
五 集群部署与客户端连接
- 集群规划与准备
- 多节点(建议 ≥4 节点)同架构、同磁盘与网络;SSH 免密互通;统一 /etc/hosts;各节点创建 minio 用户与数据目录。
- 各节点设置系统参数(如 ulimit -n 65535),并放行 9000/9001 端口。
- 启动集群
- 在各节点使用相同环境文件(或 systemd 服务)启动,指定所有节点的数据路径:
MINIO_VOLUMES=“http://node{1…4}/data”
MINIO_OPTS=“–address :9000 --console-address :9001”
/usr/local/bin/minio server $MINIO_VOLUMES $MINIO_OPTS
- 客户端 mc 连接
- 下载 mc:wget https://dl.min.io/client/mc/release/linux-amd64/mc && chmod +x mc
- 配置别名:mc alias set myminio http://<任一节点IP>:9000 MINIO_ROOT_USER MINIO_ROOT_PASSWORD
- 常用命令:mc ls myminio;mc mb myminio/mybucket;mc cp localfile.txt myminio/mybucket
- 生产提示
- 使用 NTP 保证时间一致性;合理规划纠删码/副本策略与磁盘健康监控;对外建议启用 TLS/HTTPS。