centos

centos上minio安装秘籍

小樊
43
2025-09-20 01:59:54
栏目: 智能运维

CentOS上MinIO安装详细步骤(含生产环境优化)

1. 环境准备

在开始安装前,需确保系统为最新状态并安装必要工具:

sudo yum update -y && sudo yum install -y wget

这一步可避免因系统版本过旧或工具缺失导致的安装问题。

2. 下载MinIO二进制文件

从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可验证安装是否成功。

3. 创建数据目录与专用用户

为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,降低安全风险。

4. 配置访问密钥(生产环境必做)

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,实现开机自动加载。

5. 启动MinIO服务(Systemd方式,推荐生产环境)

5.1 创建Systemd配置文件

编辑/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

5.2 创建Systemd服务文件

创建/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

5.3 启动与验证服务

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查看详细日志定位问题。

6. 配置防火墙(允许外部访问)

若系统启用了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

7. 访问与验证

7.1 Web控制台访问

打开浏览器,输入http://<服务器IP>:9001,使用步骤4中设置的MINIO_ROOT_USERMINIO_ROOT_PASSWORD登录,即可看到MinIO控制台界面。

7.2 使用MinIO客户端(mc)管理

下载并安装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/  # 若显示存储桶列表,则说明安装成功

8. 可选:配置持久化存储(挂载新磁盘)

若需将数据存储到独立磁盘(如/dev/sdb),可按以下步骤操作:

8.1 分区与格式化

sudo fdisk /dev/sdb  # 输入n(新建分区)、p(主分区)、1(分区号)、按Enter两次(默认大小)、w(保存退出)
sudo mkfs.ext4 /dev/sdb1  # 格式化分区为ext4

8.2 挂载与开机自动挂载

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

注意事项

0
看了该问题的人还看了