温馨提示×

ubuntu中minio怎么进行版本升级

小樊
43
2025-12-22 17:59:32
栏目: 智能运维

Ubuntu上升级 MinIO 的实操指南

升级前准备

  • 备份与验证:对对象存储数据与配置进行全量备份,并校验关键数据可访问;准备回滚方案(保留旧二进制与配置)。
  • 维护窗口:选择低峰时段,安排短暂停机;通知业务方。
  • 版本选择:前往 MinIO 下载页获取与服务器架构匹配的版本(如 linux-amd64),优先选择稳定版
  • 系统与服务检查:确认 Ubuntu 与依赖正常;如使用 systemd 管理 MinIO,先确认服务名与运行状态。

二进制方式升级步骤

  • 1)停止服务
    • 如使用 systemd:sudo systemctl stop minio
  • 2)备份旧二进制与配置
    • sudo cp /usr/local/bin/minio /usr/local/bin/minio.bak-$(date +%F)
    • sudo cp -a /etc/minio /etc/minio.bak-$(date +%F)(路径以实际环境为准)
  • 3)下载并替换二进制
    • wget https://dl.min.io/server/minio/release/linux-amd64/minio -O /tmp/minio
    • chmod +x /tmp/minio
    • sudo mv /tmp/minio /usr/local/bin/minio
  • 4)校验版本
    • /usr/local/bin/minio --version
  • 5)启动服务并观察
    • sudo systemctl start minio
    • sudo systemctl status miniojournalctl -u minio -f 查看启动日志与错误
  • 6)验证业务
    • 使用 mc 或控制台检查 buckets/对象/策略 是否正常
  • 7)回滚(如异常)
    • sudo systemctl stop minio
    • sudo mv /usr/local/bin/minio.bak-YYYY-MM-DD /usr/local/bin/minio
    • sudo systemctl start minio

systemd 服务文件变更与注意事项

  • 若通过 RPM/DEB 升级,可能覆盖 /etc/systemd/system/minio.service,导致启动失败;需按实际环境重新校正服务文件(如 ExecStartEnvironmentFileUser/GroupWorkingDirectoryProtectHome/ReadWritePaths 等)。
  • 修改或替换服务文件后执行:
    • sudo systemctl daemon-reload
    • sudo systemctl restart minio
  • 建议将自定义配置集中在 EnvironmentFile(如 /etc/default/minio),减少被包管理器覆盖的风险。

Docker 方式升级步骤

  • 1)拉取新镜像(示例为 RELEASE.2025-04-22T22-12-26Z,请替换为目标版本)
    • docker pull minio/minio:RELEASE.2025-04-22T22-12-26Z
  • 2)停机并备份数据卷(示例卷名 minio_data
    • docker stop minio
    • docker run --rm --volumes-from minio -v $(pwd):/backup busybox tar czf /backup/minio_data-$(date +%F).tgz -C /export .
  • 3)启动新版本(保持卷与端口一致)
    • docker run -d --name minio --restart unless-stopped \
      -p 9000:9000 -p 9001:9001 \
      -v minio_data:/data \
      -e "MINIO_ROOT_USER=..." \
      -e "MINIO_ROOT_PASSWORD=..." \
      minio/minio:RELEASE.2025-04-22T22-12-26Z server /data --console-address ":9001"
  • 4)验证与回滚
    • 访问控制台与 mc 校验;异常时用旧镜像重启容器即可回滚。

Kubernetes 环境说明

  • 若使用 MinIO Operator,可通过 KustomizeHelm 升级 Operator,再按流程升级 Tenant。升级前在 Dev/QA 环境验证,遵循官方升级路径与兼容性说明。
  • 参考命令(Kustomize):kubectl apply -k github.com/minio/operator;Helm:helm repo update minio-operator && helm upgrade ...(按实际 release 与命名空间执行)。

0