Lucien168
作者Lucien168·2019-01-11 09:35
存储工程师·地平线机器人

分布式文件存储Cephfs介绍及使用在线答疑难点技术问题总结

字数 1604阅读 2576评论 0赞 2

针对本场交流,还有以下几个技术方面的难点问题,特别拿出来作为典型问题分析,各位如有任何观点,欢迎在文章下部留言讨论。

cephfs下 如何实现多租户隔离?

可以通过多活mds,根据目录静态分片功能, 把不同的mds绑定到不同的目录上面,然后不同的目录给不同的用户使用,进而实现 多租户资源隔离的效果。详细请参考文章内容。


cephfs 多活mds 稳定性怎么样,能商业化使用吗?

目前多活mds 官方宣称在12(L)版本可以使用到生产环境。 社区也有大厂在生产环境使用,不过目前关于多活mds自动负载均衡在12版本还是有一定的, 目录静态分片社区也有不少用户在生产环境使用。
建议,生产环境如果需要用多活mds,可以考虑先上目录静态分片。


有没有好的dashboard系统?

目前主流的Ceph开源监控软件有:Calamari、VSM、Inkscope、Ceph-Dash、Zabbix等。

Calamari对外提供了十分漂亮的Web管理和监控界面,以及一套改进的REST API接口(不同于Ceph自身的REST API),在一定程度上简化了Ceph的管理。
优点:

  • 轻量级
  • 官方化
  • 界面友好
    缺点:
  • 不易安装
  • 管理功能滞后

Virtual Storage Manager (VSM)是Intel公司研发并且开源的一款Ceph集群管理和监控软件,简化了一些Ceph集群部署的一些步骤,可以简单的通过WEB页面来操作。
优点:

  • 管理功能好
  • 界面友好
  • 可以利用它来部署Ceph和监控Ceph

缺点:

  • 非官方
  • 依赖OpenStack某些包

Inkscope 是一个 Ceph 的管理和监控系统,依赖于 Ceph 提供的 API,使用 MongoDB 来存储实时的监控数据和历史信息。
优点:

  • 易部署
  • 轻量级
  • 灵活(可以自定义开发功能)

缺点:

  • 监控选项少
  • 缺乏Ceph管理功能

Ceph-Dash 是用 Python 开发的一个Ceph的监控面板,用来监控 Ceph 的运行状态。同时提供 REST API 来访问状态数据。

优点:

  • 易部署
  • 轻量级
  • 灵活(可以自定义开发功能)

CephFS对比HDFS如何?

ceph是一个统一存储系统,集对象,块,文件存储于一体。

  • 对象存储(Object Storage),既可以通过使用Ceph的库,利用C, C++, Java, Python, PHP代码,也可以通过Restful网关以对象的形式访问或存储数据,兼容亚马逊的S3和OpenStack的Swift。
  • 块存储(Block Storage),作为块设备像硬盘一样直接挂载。
  • 文件系统(File System) ,如同网络文件系统一样挂载,兼容POSIX接口。

hdfs只支持块存储。HDFS适合存储大文件,ChunkSize通常64M。

Ceph对比HDFS优势在于易扩展,无单点。HDFS是专门为Hadoop这样的云计算而生,在离线批量处理大数据上有先天的优势,而Ceph是一个通用的实时存储系统。


CephFS常被用来存储小文件(比如:图片),线上环境如果被误删了部分图片,如何恢复?

cephfs 是强一致性的,如果是单个副本删除了,会有三副本,数据不会丢失。
如果是客户端自己误删除了,找回来的可能性不大。
只能自己做灾备或者客户端双写做灾备。


CephFS 单个对象大小默认多大?最大能到多大?如果超过这个最大值,应如何处理?

不知道您是不是指的 文件布局 object_size大小吗?

object_size默认是4M, 可以通过指令设置修改, 针对不同的大文件或者小文件场景,可以来修改object_size 大小。
修改的指令是:

setfattr -n ceph.dir.layout -v "stripe_unit=16777216 stripe_count=16 object_size=16777216 pool=cephfs_data" /mnt/object_size_16M/

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

2

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广