有了MinIO,你还会用FastDFS么?

标签: | 发表时间:2020-08-20 23:30 | 作者:
出处:https://mp.weixin.qq.com


最近看到 ReadHat在搞 Ceph的培训,而且是收费的,真的是吓了一跳。难道真要搞这么复杂这么强大的存储方案么?有了 MinIO,我知道我永远和 Ceph无缘了。

再说FastDFS。为什么我讨厌FastDFS,其实不是因为它不好用,也不是因为它部署困难,最大的原因就是它的名字。什么东西加个Fast就变味了,比如: fast boy

开个玩笑,FastDFS还是伴随了我们很多岁月的。而且,Minio的 min也不是什么谦虚的词。

撸完一遍 FastDFS,感觉真是日了狗了。部署是贼麻烦,而且它的SDK是不全的,文档也是各处飞。在了解了MinIO之后,终于可以扔掉FastDFS了,真心高兴。

MinIO是apache项目,有着贵族血统,骄傲不失风范。它拥有着较高的性能,而且100%兼容s3。

什么意思呢?**如果你是私有云,搭建一套s3,就相当于拥有了aws最先进的s3存储。**它最适合存储非结构化数据,如照片,视频,日志文件,备份和容器/ VM 映像。对象的大小可以从几 KB 到最大 5TB。很多商业公司背地里拿MinIO做开发,改吧改吧界面,最后说是自己做的,结果把掉一层皮后,发现就是MinIO。

更重要的是,它与现在的虚拟技术,如k8sk3s、etcd、docker等深度集成,可以说就是为了云环境而生的。再也不用在虚拟环境调试那些恶心人的配置文件了。Minio主要为人工智能、机器学习而设计,并适用于其他大数据负载。从架构与功能方面考虑,Minio是一个比较好的开源对象存储解决方案。

说到这里你或许能够猜到, 这家伙是用go写的。使用go写的应用,干干净净就一个运行程序,看着就清爽。就像SpringBoot打成一个jar包那样清爽。

安装多简单?请看官方gif。

minio有中文文档,见:https://docs.min.io/cn/ 。内容很全,从安装到原理,一应俱全。

接下来我们稍微看一下最关心的高可用。Minio采用了 纠删码技术,即便您丢失一半数量(N/2)的硬盘,您仍然可以恢复数据。Minio在分布式和单机模式下,所有读写操作都严格遵守read-after-write一致性模型。这个也难怪,对象存储都是存的比较大的数据,写入耗时比协调耗时要长的多,这就没必要使用类似Raft或者Paxos一样的复杂协调机制。

这是启动之后的访问界面,可以看到非常清爽的界面。可以说是一清二白,如果你想要做一些自定义的售卖,只需要开发一层皮即可。

在使用方面,这个就和s3非常像了。事实上,你甚至可以使用 s3cmd来操作Minio。可以看下这些基本命令,会Linux的应该一点压力都没有。

    ls       列出文件和文件夹。      
mb 创建一个存储桶或一个文件夹。
cat 显示文件和对象内容。
pipe 将一个STDIN重定向到一个对象或者文件或者STDOUT。
share 生成用于共享的URL。
cp 拷贝文件和对象。
mirror 给存储桶和文件夹做镜像。
find 基于参数查找文件。
diff 对两个文件夹或者存储桶比较差异。
rm 删除文件和对象。
events 管理对象通知。
watch 监听文件和对象的事件。
policy 管理访问策略。
session 为cp命令管理保存的会话。
config 管理mc配置文件。
update 检查软件更新。
version 输出版本信息。

SDK方面,提供了Java、JavaScript、Python、Golang、.Net等各种语言的sdk,集成变的更加容易。

其他的就不啰嗦了,中文文档的内容很全。文件服务很多,比如ceph、swift、hbase、hdfs、glusterfs,甚至是mongo等,相比较而言,Minio可以说是最好用的了。其实,Minio的作者,就是glusterfs的创始人。后者在2011年被红帽收购。

就像是MySQL被Oracle收购之后,又出来了Mariadb。你可能觉得公司亏了,但大公司根本不缺这点钱,收购并不一定是想要建设,他们只是想要消灭前进路上的一些威胁而已。

作者简介: 小姐姐味道 (xjjdog),一个不允许程序员走弯路的公众号。聚焦基础架构和Linux。十年架构,日百亿流量,与你探讨高并发世界,给你不一样的味道。我的个人微信xjjdog0,欢迎添加好友,进一步交流。

相关 [minio fastdfs] 推荐:

有了MinIO,你还会用FastDFS么?

- -
Ceph的培训,而且是收费的,真的是吓了一跳. 难道真要搞这么复杂这么强大的存储方案么. 为什么我讨厌FastDFS,其实不是因为它不好用,也不是因为它部署困难,最大的原因就是它的名字. 什么东西加个Fast就变味了,比如:. 开个玩笑,FastDFS还是伴随了我们很多岁月的. FastDFS,感觉真是日了狗了.

FastDFS FAQ

- - 企业架构 - ITeye博客
定位问题首先要看日志文件. 出现问题时,先检查返回的错误号和错误信息. 然后查看服务器端日志,相信可以定位到问题所在. FastDFS适用的场景以及不适用的场景. FastDFS是为互联网应用量身定做的一套分布式文件存储系统,非常适合用来存储用户图片、视频、文档等文件. 对于互联网应用,和其他分布式文件系统相比,优势非常明显.

fastdfs使用实战(Java实例篇)

- - 行业应用 - ITeye博客
一、创建一个maven的webproject,叫file-manager:mvnarchetype:create-DgroupId=platform.activity.filemanager-DartifactId=file-manager-DarchetypeArtifactId=maven-archetype-webapp.

FastDFS分布式文件系统

- - 开源软件 - ITeye博客
       FastDFS是一个开源的轻量级 分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题. 特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务,如相册网站、视频网站等等.

FastDFS分布式文件系统架构

- - 企业架构 - ITeye博客
FastDFS分布式文件系统架构.            FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题. 特别适合以文件为载体的在线服务,如相册网站、视频网站等等. 二、 FastDFS系统架构.

FastDFS+Nginx轻量级分布式文件系统安装使用

- - Linux - 操作系统 - ITeye博客
FastDFS的安装使用. FastDFS是一个开源的轻量级 分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题. 特别适合以文件为载体的在线服务,如相册网站、视频网站等等. FastDFS服务端有两个角色:跟踪器(tracker)和存储 节点(storage).

分布式文件系统FastDFS设计原理及技术架构

- - mysqlops
FastDFS是一个开源的轻量级分布式文件系统,由跟踪服务器(tracker server)、存储服务器(storage server)和客户端(client)三个部分组成,主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务. Storage server(后简称storage)以组(卷,group或volume)为单位组织,一个group内包含多台storage机器,数据互为备份,存 储空间以group内容量最小的storage为准,所以建议group内的多个storage尽量配置相同,以免造成存储空间的浪费.