前言
让你去搭建一套本地分布式文件存储系统你会选择什么?
FastDfs,估计是大多数人的选择,但是复杂的集群搭建,没有一个完善的页面才做让很多人头秃,我也是这大多数人的一员。研究FastDfs集群搭建,寻找合适的开源的页面化可整合FastDfs系统,在进行接口改造,一整套下来差点没被开除。正发愁的时候发现了一篇文章一个简单易用的文件上传系统,打开一看就是今天主角MinIO
为什么要使用MinIO
- 轻便、简单、易使用
- 轻量化,占用内存少,安装方便,界面化操作使用更便捷
- 高性能
- MinIO 是全球领先的对象存储先锋,目前在全世界有数百万的用户. 在标准硬件上,读/写速度上高达183 GB / 秒 和 171 GB / 秒。
- 可扩展
- MinIO利用了Web缩放器的来之不易的知识,为对象存储带来了简单的缩放模型。 这是我们坚定的理念 “简单可扩展.” 在 MinIO, 扩展从单个群集开始,该群集可以与其他MinIO群集联合以创建全局名称空间, 并在需要时可以跨越多个不同的数据中心。 通过添加更多集群可以扩展名称空间, 更多机架,直到实现目标。
- 与Amazon S3 兼容
- 亚马逊云的 S3 API(接口协议) 是在全球范围内达到共识的对象存储的协议,是全世界内大家都认可的标准。 MinIO 在很早的时候就采用了 S3 兼容协议,并且MinIO 是第一个支持 S3 Select 的产品
Docker快速搭建单机版MinIO
- Docker搭建单机版
docker run -d --restart=always \
-p 9000:9000 \
-p 9090:9090 \
--name minio \
-v /mnt/data/miniodata:/data \
-e "MINIO_ROOT_USER=minioadmin" \
-e "MINIO_ROOT_PASSWORD=minioadmin" \
quay.io/minio/minio server /data --console-address ":9090"
- 启动成功后访问页面http://192.168.40.154:9090/login
- MINIO_ROOT_USER 对应账号
- MINIO_ROOT_PASSWORD 对应密码
Docker快速搭建MinIO纠删码模式
-
什么是纠删码
- 纠删码是一种恢复丢失和损坏数据的数学算法, Minio采用Reed-Solomon code将对象拆分成N/2数据和N/2 奇偶校验块。 这就意味着如果是12块盘,一个对象会被分成6个数据块、6个奇偶校验块,你可以丢失任意6块盘(不管其是存放的数据块还是奇偶校验块),你仍可以从剩下的盘中的数据进行恢复,是不是很NB<