1. 前言
1.1. 简介
1) MinIO 是在 Apache License v2.0 下发布的对象存储服务器。 它与 Amazon S3 云存储服务兼容。 它最适合存储非结构化数据,如照片,视频,日志文件,备份和容器/ VM 映像。 对象的大小可以从几 KB 到最大 5TB。
2) MinIO 服务器足够轻,可以与应用程序堆栈捆绑在一起,类似于 NodeJS,Redis 和 MySQL。
3) 一种高性能的分布式对象存储服务器,用于大型数据基础设施。它是机器学习和其他大数据工作负载下 Hadoop HDFS 的理想 s3 兼容替代品
1.2. 特点
Minio使用纠删码erasure code和校验和checksum来保护数据免受硬件故障和无声数据损坏。 即便丢失一半数量(N/2)的硬盘,仍然可以恢复数据。
2. 预研目的
检验在分布式部署条件下,minio在多种实验环境下的数据的安全性。
3. 预研环境
序号 系统 系统用户 软件版本 Minio RELEASE.2020-05-08T02-40-49Z Minio RELEASE.2020-05-08T02-40-49Z Minio RELEASE.2020-05-08T02-40-49Z Minio RELEASE.2020-05-08T02-40-49Z 虚拟机资源 cpu mem disk 2C 4G /dev/vda 1 centos7.6 Root Root Root Root 2 centos7.6 2C 4G /dev/vda 3 centos7.6 2C 4G /dev/vda 4 centos7.6 2C 4G /dev/vda 4. 环境部署
4.1. 系统初始化
1) 关闭防火墙 2) 关闭selinux
3) 关闭NetworkManager
4.2. 下载minio二进制包
curl -O https://dl.min.io/server/minio/release/linux-amd64/minio
4.3. 安装minio
chmod +x minio mv minio /usr/bin/
4.4. 创建节点export
在minio的4个节点上各创建1个export,为了方便理解给每个export取名为/data_{+ip地址的最后一位数},最后生成的export如下表所示:
序号 1 2 3 4
主机ip 172.16.150.5 172.16.150.14 172.16.150.21 172.16.150.24 Export名称 /data_05 /data_14 /data_21 /data_24 4.5. 编写运行脚本
cat minio_startup.sh #!/bin/bash
export MINIO_ACCESS_KEY=Admin#Geostar,5 export MINIO_SECRET_KEY=Super#Geostar,5 /usr/bin/minio
server
http://172.16.150.5/data_05 http://172.16.150.21/data_21
http://172.16.150.14/data_14 http://172.16.150.24/data_24 & chmod +x minio_startup.sh
4.6. 启动minio
echo “sh /root/minio_startup.sh” >> /etc/rc.local chmod +x /etc/rc.local
4.7. endpoint
MinIO正确程序启动后,每个节点都会生成一个endpoint访问地址,实验环境下的地址信息如下:
序号 1 2 3 4
主机ip 172.16.150.5 172.16.150.14 172.16.150.21 172.16.150.24 MinIO endpoint http://172.16.150.5:9000 http://172.16.150.14:9000 http://172.16.150.21:9000 http://172.16.150.24:9000 5. 预研实验
5.1. 实验1
实验目的:验证在minio分布式主机全都活动状态下,minio分布式存储的安全性
实验过程:登陆任意minio节点的endpoint,输入MINIO_ACCESS_KEY和MINIO_SECRET_KEY,创建一个bucket目录,取名为test。如下图所示:
上传一个docker_practice.pdf文件后,去往其他endpoint上查看,可以观察到其他endpoint上都会存有一份相同的文件。如下图所示:
访问linux文件系统,在所有节点的export目录下会有一个test文件夹,并存放有一个相同的pdf文件。如下图所示:
实验结果:在minio分布式主机都活动状态下,任意节点上传的文件都会在其他节点下保存一份,同时在endpoint页面下查看正常。
5.2. 实验2
实验目的:验证在minio分布式主机异常状态下,minio分布式存储
MinIO分布式存储技术预研报告



