温馨提示×

如何在Ubuntu上使用MinIO

小樊
31
2025-12-12 21:05:12
栏目: 智能运维

在 Ubuntu 上使用 MinIO 的完整步骤

一 准备与环境

  • 建议使用 Ubuntu 22.04+,以具有 sudo 权限的用户操作,并准备一块数据盘或目录用于对象存储。
  • 更新系统并创建数据目录(示例:/data/minio):
    • sudo apt update && sudo apt upgrade -y
    • sudo mkdir -p /data/minio
  • 放行防火墙端口(若启用 UFW):
    • sudo ufw allow 9000/tcp
    • sudo ufw allow 9001/tcp
    • sudo ufw reload
  • 注意:从 RELEASE.2023-04-07T05-49-13Z 起,环境变量由 MINIO_ACCESS_KEY / MINIO_SECRET_KEY 调整为 MINIO_ROOT_USER / MINIO_ROOT_PASSWORD,请使用新变量名。

二 安装与运行

  • 方式一 二进制安装(通用、轻量)
    1. 下载并安装二进制:
      • wget https://dl.min.io/server/minio/release/linux-amd64/minio
      • chmod +x minio
      • sudo mv minio /usr/local/bin/
    2. 创建专用系统用户(推荐):
      • sudo useradd -r -s /sbin/nologin minio
      • sudo chown -R minio:minio /data/minio
    3. 直接启动(测试用,前台运行):
      • sudo -u minio /usr/local/bin/minio server /data/minio --console-address “:9001
      • 服务默认 API 端口 9000,控制台端口 9001
  • 方式二 systemd 服务(生产推荐)
    1. 创建环境文件 /etc/default/minio
      • sudo tee /etc/default/minio <<‘EOF’ MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=StrongPassw0rd! MINIO_VOLUMES=“/data/minio” MINIO_OPTS=“–address :9000 --console-address :9001” EOF
    2. 创建服务文件 /etc/systemd/system/minio.service
      • sudo tee /etc/systemd/system/minio.service <<‘EOF’ [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_VOLUMES $MINIO_OPTS Restart=always RestartSec=5 LimitNOFILE=65536

        [Install] WantedBy=multi-user.target EOF

    3. 启动与开机自启:
      • sudo systemctl daemon-reload
      • sudo systemctl enable --now minio
      • sudo systemctl status minio
    4. 验证监听端口:
      • sudo ss -lntp | grep -E ‘:(9000|9001)’

三 访问控制台与创建存储桶

  • 在浏览器访问 http://<服务器IP>:9001,使用 MINIO_ROOT_USER / MINIO_ROOT_PASSWORD 登录。
  • 首次登录后创建 Bucket,随后可通过控制台或 S3 客户端上传与管理对象。

四 安全与运维要点

  • 使用强口令并妥善保存;生产环境建议通过 反向代理(Nginx/Apache)TLS 终止 提供 HTTPS,避免明文暴露控制台与 API。
  • 如需域名与证书,可结合 certbot/Let’s Encrypt 配置 HTTPS;自签名证书仅用于测试。
  • 备份与监控:
    • 定期备份 /data/minio/etc/default/minio 等关键配置。
    • 可对接 Prometheus/Grafana 进行指标可视化与告警(MinIO 暴露 Prometheus 指标端点)。

0