MinIO分布式存储技术预研报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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.预研环境
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如下表所示:
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.14/data_14 http://172.16.150.21/data_21
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访问地址,实验环境下的地址信息如下:
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节点,直到剩下最后一个活动节点,观察endpoint下pdf文件状态。
1)当关闭一台主机的条件下,其余节点的endpoint上的pdf是可观
测的。同时所有节点的export的test路径下pdf文件未丢失。2)当关闭二台主机的条件下,其余节点的endpoint上的pdf是可观
测的。同时所有节点的export的test路径下pdf文件未丢失。3)当关闭三台主机的条件下,最后一个节点的endpoint上,未观测
到pdf文件。但所有节点的export的test路径下pdf文件未丢失。实验结果:在minio分布式主机异常状态下,至多丢失一半数量(N/2)的硬盘,任然可以在剩余的endpoint页面下观测到上传文件。
5.3.实验3
实验目的:验证在minio分布式异常主机状态恢复后,minio分布式存储的安全性
实验过程:依次恢复三台主机,直到所有主机的minio程序运行正常,观察endpoint下pdf文件状态。
1)当恢复一台主机的条件下,只有一台主机的endpoint上的pdf文
件是可观测的。同时所有节点的export的test路径下pdf文件未丢失。
2)当恢复两台主机的条件下,所有主机的endpoint上的pdf文件是
可观测的。同时所有节点的export的test路径下pdf文件未丢失。
3)当恢复三台主机的条件下,所有主机的endpoint上的pdf文件是
可观测的。同时所有节点的export的test路径下pdf文件未丢失。实验结果:在minio分布式异常主机恢复状态下,当正常状态的硬盘数量> N/2的时,可以在任何正常节点的endpoint页面下观测到上传文件。
5.4.实验4
实验目的:验证在minio分布式异常主机状态下,节点删除文件时,minio分布式存储的安全性
实验过程:依次关闭minio节点,直到剩下最后一个活动节点,观察在一个节点删除文件后,剩余endpoint下pdf文件状态。
1)当关闭一台主机的条件下,任意节点上删除pdf文件,则除关闭
的主机外,其余主机上的pdf文件都会被删除,包括endpoint页面和export路劲下。如果此时关闭主机恢复正常,则关闭主机endpoint页面上的pdf文件未被观测,但export路径下的pdf文件还保留。
2)当关闭两台主机的条件下,在剩余的任意节点上点击删除pdf文
件将不被执行。同时所有节点的export的test路径下pdf文件未丢失。
实验结果:在minio分布式异常主机状态下,只有当正常状态的硬盘数量> N/2的时,才运行删除endpoint页面下的文件。