Ubuntu上安装MinIO的详细指南
导读:Ubuntu 上安装与部署 MinIO 的详细指南 一 环境准备与版本选择 系统建议:Ubuntu 20.04/22.04 LTS,已更新至最新补丁,具备 sudo 权限。 架构匹配:选择 linux-amd64 等匹配服务器 CPU 架...
Ubuntu 上安装与部署 MinIO 的详细指南
一 环境准备与版本选择
- 系统建议:Ubuntu 20.04/22.04 LTS,已更新至最新补丁,具备 sudo 权限。
- 架构匹配:选择 linux-amd64 等匹配服务器 CPU 架构的版本。
- 存储建议:生产环境优先使用直连 JBOD 阵列,磁盘格式化为 XFS,且容量与类型保持一致,避免混用以获得最佳性能与一致性。
- 访问方式:MinIO 提供 S3 API 端口 9000 与 控制台端口 9001,建议控制台仅内网访问,API 通过反向代理对外。
二 二进制方式部署 MinIO 服务
- 1 下载与安装
- 更新索引并安装依赖:
- sudo apt update & & sudo apt install -y wget ca-certificates
- 下载二进制并安装到系统路径:
- wget https://dl.min.io/server/minio/release/linux-amd64/minio
- chmod +x minio
- sudo mv minio /usr/local/bin/
- 更新索引并安装依赖:
- 2 创建系统用户与目录
- sudo useradd -r minio-user -s /sbin/nologin
- sudo mkdir -p /usr/local/share/minio /etc/minio
- sudo chown -R minio-user:minio-user /usr/local/share/minio /etc/minio
- 3 配置环境变量
- sudo nano /etc/default/minio
- 建议内容(请自定义强密钥,长度至少 8 字符):
- MINIO_VOLUMES=“/usr/local/share/minio/”
- MINIO_OPTS=“–address :9000 --console-address :9001”
- MINIO_ROOT_USER=“Admin”
- MINIO_ROOT_PASSWORD=“StrongPassw0rd!”
- 4 配置 systemd 服务
- sudo nano /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
- [Unit]
- 5 启动与开机自启
- sudo systemctl daemon-reload
- sudo systemctl start minio
- sudo systemctl enable minio
- sudo systemctl status minio
- 6 防火墙放行
- UFW:sudo ufw allow 9000,9001/tcp
- firewalld:sudo firewall-cmd --permanent --add-port=9000,9001/tcp & & sudo firewall-cmd --reload
- 7 访问验证
- 控制台:http://< 服务器IP> :9001
- S3 API:http://< 服务器IP> :9000
- 使用上一步设置的 MINIO_ROOT_USER / MINIO_ROOT_PASSWORD 登录控制台。
三 使用 Nginx 反向代理与 HTTPS
- 1 安装 Nginx
- sudo apt install -y nginx
- 2 申请证书(以 Certbot 为例)
- sudo apt install -y certbot python3-certbot-nginx
- 为域名 example.com 申请证书(确保 TCP 80/443 可达):
- sudo certbot --nginx -d example.com
- 3 配置反向代理(示例:/etc/nginx/sites-available/minio)
- 建议仅将 API(9000) 通过域名对外,控制台 9001 仅内网访问
- 示例片段:
- server {
- listen 80;
- server_name example.com;
- return 301 https://$host$request_uri;
- }
- server {
- listen 443 ssl http2;
- server_name example.com;
- ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
- ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
- location / {
- proxy_pass http://127.0.0.1:9000;
- proxy_set_header Host $http_host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Proto $scheme;
- }
- }
- server {
- 4 启用站点并重启
- sudo ln -s /etc/nginx/sites-available/minio /etc/nginx/sites-enabled/
- sudo nginx -t & & sudo systemctl reload nginx
- 5 访问
- S3 API:https://example.com
- 控制台:建议通过 内网地址:9001 访问。
四 单节点多驱动器部署要点
- 适用场景:单机多盘,提升容量与吞吐。
- 磁盘准备:多块同类型同容量磁盘,格式化为 XFS,以 JBOD 方式直连;示例将 /dev/sdb ~ /dev/sde 挂载到 /mnt/disk{
1…4}
:
- sudo apt-get install -y xfsprogs
- for d in b c d e; do sudo mkfs.xfs /dev/sd$d; done
- for i in { 1…4} ; do sudo mkdir -p /mnt/disk$i; done
- for i in { 1…4} ; do sudo mount /dev/sd$(echo $i | tr 1234 bcde) /mnt/disk$i; done
- 启动命令(将多个路径以空格分隔):
- sudo -u minio-user /usr/local/bin/minio server /mnt/disk1 /mnt/disk2 /mnt/disk3 /mnt/disk4 --console-address “:9001”
- 提示:生产部署请结合监控、告警与定期巡检,确保磁盘健康与容量冗余。
五 常见问题与运维建议
- 权限与用户:始终以 非 root 用户(如 minio-user)运行,目录属主与权限正确。
- 密钥管理:使用 MINIO_ROOT_USER / MINIO_ROOT_PASSWORD 设置强口令;避免明文硬编码,必要时使用 Vault 等密钥管理工具。
- 端口与访问:API 建议仅通过 域名 + HTTPS(443) 对外;控制台 9001 建议限制为内网访问或启用额外认证。
- 日志与排错:
- 服务日志:sudo journalctl -u minio -f
- 运行日志:/usr/local/share/minio/.minio.sys/logs/
- 升级与备份:
- 升级:替换二进制后执行 sudo systemctl restart minio;变更前备份 /etc/default/minio 与数据目录。
- 备份:定期备份 ~/.minio/ 配置与关键数据,验证恢复流程。
- 性能与容量:遵循 XFS + JBOD、同类型同容量磁盘的最佳实践,避免 SAN/NAS/RAID/LVM 等引入的不可预期开销。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu上安装MinIO的详细指南
本文地址: https://pptw.com/jishu/780007.html
