Minio安装(集群,企业级部署,多节点多硬盘部署)

前期准备

网络和防火墙

  • 网络互通:每个节点都应该能正常访问其他节点
  • 防火墙策略:防火墙端口开放,服务端口9000,控制台端口;例如开放9000端口
firewall-cmd --permanent --zone=public --add-port=9000/tcp
firewall-cmd --reload
  • 相同监听端口:所有Minio服务器使用的端口要保持一致
  • 推荐负载均衡:官方建议使用负载均衡来管理与集群的连接(例如Nginx)

连续的主机名

        创建服务器池时,MinIO需要使用扩展符号 {x...y} 来表示一系列连续的MinIO主机;MinIO支持在部署中使用连续的主机名  IP地址来表示每个Minio Sever进程。 

        对于非连续的主机名或ip地址,可以通过DNS配置,来重新定义映射关系;

        配置DNS主机名映射

# /etc/hosts

192.168.92.100 minio1.amos.com 
192.168.92.102 minio2.amos.com 
192.168.92.104 minio3.amos.com 
192.168.92.106 minio4.amos.com 

        然后,我们就可以使用扩展符号 minio{1...4}..com 来指定整个主机名范围

存储需求

  • 使用本地存储
    • 直接连接存储在性能和一致性方面比网络存储NAS、存储区域网络SAN、网络文件存储NFS有显著优势。
  • 使用xfs格式化驱动器
  • 使用一致类型的驱动器
  • 使用一致大小的驱动器
  • 配置顺序挂载驱动器

内存要求

从RELEASE.2024-01-28T22-35-53Z版本开始,MinIO在分布式设置中为每个节点预分配了2GiB的内存,而在单节点设置中预分配了1GiB的内存。

时间同步

多节点系统需要保持时间和日期同步,以维持稳定的节点间操作和交互。可以使用ntp或chrony使用同一个时间服务器进行同步;

容量规划

MinIO建议在达到70%使用率之前,规划足够的存储容量以存储 至少 2年的数据。

安装步骤

在各节点安装Minio二进制包

wget https://dl.minio.org.cn/server/minio/release/linux-amd64/minio
chmod +x minio
sudo mv minio /usr/local/bin/

创建systemd系统启动服务文件

创建文件:vim /usr/lib/systemd/system/minio.service

[Unit]
Description=MinIO
Documentation=https://minio.org.cn/docs/minio/linux/index.html
Wants=network-online.target
After=network-online.target
# minio二进制文件的路径
AssertFileIsExecutable=/usr/local/bin/minio

[Service]
WorkingDirectory=/usr/local

# 默认用户与用户组
User=minio-user
Group=minio-user
ProtectProc=invisible

EnvironmentFile=-/etc/default/minio
ExecStartPre=/bin/bash -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /etc/default/minio\"; exit 1; fi"
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES

# MinIO RELEASE.2023-05-04T21-44-30Z adds support for Type=notify (https://www.freedesktop.org/software/systemd/man/systemd.service.html#Type=)
# This may improve systemctl setups where other services use `After=minio.server`
# Uncomment the line to enable the functionality
# Type=notify

# Let systemd restart this service always
Restart=always

# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=65536

# Specifies the maximum number of threads this process can create
TasksMax=infinity

# Disable timeout logic and wait until process is stopped
TimeoutStopSec=infinity
SendSIGKILL=no

[Install]
WantedBy=multi-user.target

# Built for ${project.name}-${project.version} (${project.name})

创建环境变量文件

创建配置文件 vim /etc/default/minio

# 主机名和驱动器号
# (端口 9000)

MINIO_VOLUMES="http://minio{1...4}.amos.com:9000/disk/minio{1...4}"

# 控制台端口

MINIO_OPTS="--console-address :9001"

# 管理员账号

MINIO_ROOT_USER=minioadmin

# 管理员密码

MINIO_ROOT_PASSWORD=minioadmin123

 创建用户

groupadd -r minio-user
useradd -M -r -g minio-user minio-user
chown minio-user:minio-user /disk/minio1 /disk/minio2 /disk/minio3 /disk/minio4

配置DNS映射

vim /etc/hosts

添加如下内容
192.168.92.100 minio1.amos.com
192.168.92.102 minio2.amos.com
192.168.92.104 minio3.amos.com
192.168.92.106 minio4.amos.com

配置防火墙端口

sudo firewall-cmd --permanent --zone=public --add-port=9000/tcp
sudo firewall-cmd --permanent --zone=public --add-port=9001/tcp
firewall-cmd --reload

运行和启动MinIO服务器进程

# 启动服务
sudo systemctl start minio.service
# 查看状态
sudo systemctl status minio.service
# 查看日志
journalctl -f -u minio.service
# 设置开机自动重启
sudo systemctl enable minio.service

访问Minio

浏览器访问

访问任意一台服务器都可以

http://192.168.92.100:9001

创建桶

上传文件

随意上传一些文件

查看各节点下是否都存在

查看各节点路径下文件是否存在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

院长Amos

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值