MinIO【部署 02】Linux集群版本及Windows单机版、单机多目录版、分布式版(cmd启动脚本及winsw脚本分享)

Linux集群版及Windows单机版分布式版

  • 1.Linux集群版
    • [1.1 安装启动停止](#1.1 安装启动停止)
    • [1.2 将MinIO添加到服务](#1.2 将MinIO添加到服务)
  • 2.Windows
    • [2.1 官网安装](#2.1 官网安装)
    • [2.2 本地测试](#2.2 本地测试)
      • [2.2.1 cmd启动脚本](#2.2.1 cmd启动脚本)
      • [2.2.2 winsw脚本](#2.2.2 winsw脚本)
  • 3.总结

1.Linux集群版

官网下载地址 https://min.io/download#/linux;

官网安装文档 https://min.io/docs/minio/linux/index.html。

1.1 安装启动停止

每个节点的安装可参考Linux单机版,集群版的启动脚本:

bash 复制代码
#!/bin/bash
export MINIO_ROOT_USER=minioadmin
export MINIO_ROOT_PASSWORD=minioadmin
/usr/local/bin/minio server --config-dir /home/minio/data \
        --address "0.0.0.0:9029" --console-address ":9000" \
        http://xxx.xxx.xx.xxx:9029/home/minio/data \
        http://xxx.xxx.xx.xxx:9029/home/minio/data \
        http://xxx.xxx.xx.xxx:9029/home/minio/data > /home/minio/data/minio.log

集群版的停止脚本:

bash 复制代码
#!/bin/bash
ps -ef | grep minio | grep -v 'grep' | awk '{print $2}'| xargs kill -9
 
if [ $? -ne 0 ];then
  echo "MinIO service stop failed."
  exit 1
fi

1.2 将MinIO添加到服务

创建minio.service

bash 复制代码
vim /etc/systemd/system/minio.service

添加内容:

bash 复制代码
[Unit]
Description=Minio service
Documentation=https://docs.minio.io/
 
[Service]
WorkingDirectory=/opt/minio/run/
ExecStart=/opt/minio/run/run.sh
ExecStop=/opt/minio/run/stop.sh
 
Restart=on-failure
RestartSec=5
 
[Install]
WantedBy=multi-user.target

修改权限:

bash 复制代码
chmod +x /etc/systemd/system/minio.service && chmod +x /opt/minio/run/minio && chmod +x /opt/minio/run/run.sh && chmod +x /opt/minio/run/stop.sh

使用systemctl启动集群:

bash 复制代码
# 是配置文件 minio.service 生效
systemctl daemon-reload
# 启动服务
systemctl start minio
# 设置开机启动
systemctl enable minio
 
# 查看集群状态
systemctl status minio.service
# 端口号
ufw allow 9029
# 重置
systemctl restart ufw

2.Windows

2.1 官网安装

bash 复制代码
PS> Invoke-WebRequest -Uri "https://dl.min.io/server/minio/release/windows-amd64/minio.exe" -OutFile "C:\minio.exe"
PS> setx MINIO_ROOT_USER admin
PS> setx MINIO_ROOT_PASSWORD admin123
PS> C:\minio.exe server F:\Data --console-address ":9001"

2.2 本地测试

2.2.1 cmd启动脚本

  • 单机版的启动:
bash 复制代码
@echo off
rem setx MINIO_ROOT_USER admin
rem setx MINIO_ROOT_PASSWORD admin123
minio.exe server D:\minio_data --console-address ":9001"
exit
  • 单机多目录的举例:
bash 复制代码
@echo off
rem setx MINIO_ROOT_USER admin
rem setx MINIO_ROOT_PASSWORD admin123
minio.exe server C:\minio_data E:\minio_data --console-address ":9001"
exit
  • 分布式的启动:
bash 复制代码
@echo off
rem setx MINIO_ROOT_USER admin
rem setx MINIO_ROOT_PASSWORD admin123
minio.exe server --config-dir E:\minio_data http://tcloud:9000/data/minio/data --console-address ":9001"
exit

2.2.2 winsw脚本

xml 复制代码
<service>
  <id>minio-server</id>
  <name>MinIO-Server</name>
  <description>This service runs MINIO OBJECT STORE.</description>
  <env name="MINIO_HOME" value="%BASE%"/>
  <executable>%BASE%\minio.exe</executable>
  <arguments>server D:\minio_data --console-address ":9001"</arguments>
  <logpath>%BASE%\logs</logpath>
  <log mode="roll-by-size-time">
    <sizeThreshold>1024</sizeThreshold>
    <pattern>yyyyMMdd</pattern>
    <autoRollAtTime>00:00:00</autoRollAtTime>
    <zipOlderThanNumDays>5</zipOlderThanNumDays>
    <zipDateFormat>yyyyMMdd</zipDateFormat>
  </log>
  <env name="MINIO_ROOT_USER" value="admin" />
  <env name="MINIO_ROOT_PASSWORD" value="admin123" />
</service>

3.总结

  • MinIO的安装部署还是比较简单的;
  • 部署方式比较多样。
相关推荐
三言老师2 小时前
K8s集群运行时自动化运维全覆盖落地实操(下)
linux·运维·服务器·网络
ltl3 小时前
HAProxy HTX 与 HTTP 路径:内部表示、改写落点与协议分叉
linux
ltl3 小时前
可拆分 OS:CXL 内存池化如何动摇本地 DRAM 假设
linux
ltl3 小时前
Tetragon 强制执行:Override 与 SIGKILL 各自保证什么
linux
lengjingzju3 小时前
编译与调试完全指南—第6章 性能分析工具
linux
躺不平的理查德4 小时前
嵌入式 Linux 系统移植与 SD 卡量产镜像制作
linux·运维·服务器
Mr.亮先生4 小时前
# 把 DeepSeek 官方 Agent 工作台,直接装进 Windows 启动器里
windows·deepseek·harness
一直走下去-明5 小时前
centos7无法安装tcpreplay
linux·运维
吹什么轩5 小时前
linux网络:TCP套接字基础
linux·网络·tcp/ip
时空无限6 小时前
ubuntu dpkg -l 输出第一列解释
linux·运维·ubuntu