CentOS上MinIO安装详细步骤(含生产环境优化)
在开始安装前,需确保系统为最新状态并安装必要工具:
sudo yum update -y && sudo yum install -y wget
这一步可避免因系统版本过旧或工具缺失导致的安装问题。
从MinIO官方网站获取Linux amd64架构的最新二进制文件(约100MB):
wget https://dl.min.io/server/minio/release/linux-amd64/minio
下载完成后,赋予执行权限并将文件移动至系统路径(方便全局调用):
chmod +x minio
sudo mv minio /usr/local/bin/
通过minio --version可验证安装是否成功。
为MinIO数据存储创建专用目录,并配置合理的权限:
sudo mkdir -p /data/minio
sudo groupadd -r minio-user # 创建专用用户组
sudo useradd -r -g minio-user -s /sbin/nologin minio-user # 创建禁止登录的系统用户
sudo chown -R minio-user:minio-user /data/minio # 修改目录所有权
sudo chmod -R 755 /data/minio # 设置目录权限(用户可读写,组和其他用户可读)
关键说明:避免使用root用户运行MinIO,降低安全风险。
MinIO默认使用minioadmin/minioadmin作为初始凭证,生产环境中必须修改为强密码:
export MINIO_ROOT_USER="your_secure_access_key" # 替换为自定义访问密钥(如:MinIO-Admin-2025)
export MINIO_ROOT_PASSWORD="your_very_strong_secret_key" # 替换为自定义秘密密钥(如:MinIO-Secret-@2025)
可将上述命令添加至~/.bashrc或/etc/profile,实现开机自动加载。
编辑/etc/default/minio文件,定义MinIO启动参数:
sudo tee /etc/default/minio > /dev/null << 'EOF'
# 数据存储路径(必须设置)
MINIO_VOLUMES="/data/minio"
# 管理员凭证(需与步骤4一致)
MINIO_ROOT_USER="your_secure_access_key"
MINIO_ROOT_PASSWORD="your_very_strong_secret_key"
# 控制台端口(默认9001,可自定义)
MINIO_CONSOLE_ADDRESS=":9001"
EOF
创建/etc/systemd/system/minio.service文件,配置服务管理规则:
sudo tee /etc/systemd/system/minio.service > /dev/null << 'EOF'
[Unit]
Description=MinIO Server
Documentation=https://docs.min.io
After=network.target
[Service]
# 指定运行用户和组
User=minio-user
Group=minio-user
# 加载环境变量
EnvironmentFile=/etc/default/minio
# 启动命令(使用环境变量中的参数)
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
# 故障重启策略(5秒后重启)
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload # 重新加载systemd配置
sudo systemctl enable minio # 设置开机自启
sudo systemctl start minio # 启动服务
sudo systemctl status minio # 查看服务状态(需显示"active (running)")
若启动失败,可通过journalctl -u minio -xe --no-pager查看详细日志定位问题。
若系统启用了firewalld,需开放MinIO服务端口(默认9000)和控制台端口(如9001):
sudo firewall-cmd --permanent --zone=public --add-port=9000/tcp # MinIO服务端口
sudo firewall-cmd --permanent --zone=public --add-port=9001/tcp # 控制台端口
sudo firewall-cmd --reload # 重新加载防火墙规则
若使用iptables,需添加对应规则:sudo iptables -A INPUT -p tcp --dport 9000 -j ACCEPT。
打开浏览器,输入http://<服务器IP>:9001,使用步骤4中设置的MINIO_ROOT_USER和MINIO_ROOT_PASSWORD登录,即可看到MinIO控制台界面。
下载并安装mc(MinIO命令行客户端):
wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/
配置mc连接MinIO服务器(别名myminio可自定义):
mc alias set myminio http://<服务器IP>:9000 your_secure_access_key your_very_strong_secret_key
验证连接并列出存储桶:
mc ls myminio/ # 若显示存储桶列表,则说明安装成功
若需将数据存储到独立磁盘(如/dev/sdb),可按以下步骤操作:
sudo fdisk /dev/sdb # 输入n(新建分区)、p(主分区)、1(分区号)、按Enter两次(默认大小)、w(保存退出)
sudo mkfs.ext4 /dev/sdb1 # 格式化分区为ext4
sudo mkdir -p /mnt/data
sudo mount /dev/sdb1 /mnt/data # 临时挂载
sudo blkid /dev/sdb1 # 获取分区UUID(如:UUID=3d33a1d0-75b8-4c27-8a71-9e5caa4041a5)
编辑/etc/fstab文件,添加以下内容(替换为实际UUID):
UUID=3d33a1d0-75b8-4c27-8a71-9e5caa4041a5 /mnt/data ext4 defaults 0 0
重新挂载并验证:
sudo mount -a
df -h # 查看是否挂载成功
最后将MinIO数据目录迁移至新磁盘:sudo mv /data/minio/* /mnt/data/ && sudo rm -rf /data/minio && sudo ln -s /mnt/data /data/minio。
minio admin info命令查看服务器状态。/data/minio目录至异地,防止数据丢失。