
Minio集群部署
本文最后更新于 2024-05-22,文章内容可能已经过时。
Minio集群部署
一,分布式Minio概述
1.1概念
分布式minio可以在多个服务器节点上,多块硬盘上共享存储空间,提供对象存储服务。分布式minio由于多节点,避免了单点故障,保证文件存储的高可用。
1.2搭建流程简述
搭建分布式minio,主流程就是各个节点都要写一个相同的启动脚本,做一些配置,比如用户名,密码和文件存储的位置。然后依次去各个节点启动minio服务,启动的时候就会按照这个脚本的配置搭建分布式minio服务。
注意:
- 分布式Minio里所有的节点需要有同样的access秘钥和secret秘钥,即:用户名和密码
- 分布式Minio存放数据的磁盘目录必须是空目录
- 分布式Minio官方建议生产环境最少4个节点,因为有N个节点,得至少保证有N/2的节点才能可读,保证至少N/2+1的节点才能可写。这里只是作演示搭建,只有2个节点
- 分布式Minio节点时间差不能差距太多,最好同一内网
- 分布式Minio会在每个磁盘都存一份数据文件保证数据的可靠性与安全性
二,环境准备
2.1节点环境
准备虚拟机:3台centos7(配置好网络,保证3台虚拟机互通)
虚拟器安装和网络配置
192.168.10.101
192.168.10.102
192.168.10.103
准备搭建minio相关文件
minio:minio服务器文件。下载地址:minio
mc:mc客户端文件。这个用于执行minio命令行,搭建时候可不用。下载地址:mc
run.sh:minion分布式搭建启动脚本。手动创建,里面配置内容稍后介绍
2.2节点磁盘挂载
所有节点
2.2.1硬盘分区
分区/dev/sdb2与上述/dev/sdb1分区相同
2.2.2 格式化磁盘分区
2.2.3磁盘目录挂载
查看挂载成功df –h
设置分区在系统重启后自动挂载
在/etc/fstab文件末尾添加
重新加载配置
三,集群部署
3.1 minion目录创建
3.2 minio安装包下载
下载或者上传下载好的minio二进制文件
官网下载地址:
https://dl.min.io/server/minio/release/linux-amd64/minio
本文采用wget命令安装
下载minio到/data/minio目录下
3.3 集群启动文件配置
Minio默认9000端口,在配置文件中加入–address “127.0.0.1:9029” 可更改端口
注意 :
- MINIO_ROOT_USER:用户名,长度最小是5个字符
- MINIO_ROOT_PASSWORD:密码,密码不能设置过于简单,不然minio会启动失败,长度最小是8个字符
- –config-dir:指定集群配置文件目录
创建minio集群启动文件
集群节点192.168.10.101内容为
集群节点192.168.10.102内容为
集群节点192.168.10.103内容为
3.4 创建Minio.server
修改配置文件后需要重加载配置
3.5 权限修改
所有节点执行以下命令
3.6 启动集群
逐个节点启动
注意:启动集群时一定要检查自己的防火墙是否是关闭状态,如果不是关闭状态,则会出错
查看集群状态
查看启动日志
3.7 登录
http://任一IP:9000/
四,minio节点故障恢复数据
minio集群有纠删码机制,即使在集群数据盘挂掉一半的情况下,你集群中数据也是安全的。但是如果集群想要正常读写你需要有N/2+1的节点数才可以正常读写如果现有minio集群由于节点损坏或节点物理故障需更换节点时,请直接进行更换节点。
注意事项:
- 如果更换节点旧节点数据量较大,在节点更换时可以正常使用请先备份原有节点数据到新节点,避免同步的数据过多导致网络带宽被占用
- 如果数据量小,可以不进行备份数据,直接进行更换,节点启动完毕会自动同步数据
- 如果节点挂掉时集群还在读写数据,会导致集群挂掉的节点与其他minio节点数据不同,这里在恢复节点后需修复数据(自动修复,无需人为干预)
最好部署minio集群时使用hosts文件做地址解析,避免更换节点时修改minio配置文件参数
- 感谢你赐予我前进的力量