深度学习后端分布式存储ceph技术建议书

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

AI平台分布式存储

(ceph)

技术建议书

目录

1.前言 (3)

2.现状 (3)

3.技术调研 (4)

3.1.要求 (4)

3.2.技术选型 (4)

3.2.1.分布式存储分类 (4)

3.2.2.特性对比 (5)

4.ceph技术原理 (6)

4.1.基本组成 (6)

4.2.逻辑架构 (7)

4.3.数据流程 (8)

5.资源要求 (9)

5.1.硬件指标 (9)

5.1.1.cpu (9)

5.1.2.内存 (10)

5.1.3.硬盘 (10)

5.1.4.日志盘 (10)

5.1.5.osd节点密度 (11)

5.1.6.分配方式 (11)

5.2.网络结构 (12)

5.3.软件兼容性 (13)

5.4.快速配置参考 (14)

6.数据安全 (15)

6.1.用户 (15)

6.2.认证机制 (15)

6.3.用户分类 (16)

6.4.授权类型 (17)

7.存储割接 (17)

8.其他 (18)

1.前言

目前公司AI平台所用后端数据存储包含三种方式,对象存储(OSS):冷数据,备份数据,共享存储(NFS):热数据,训练任务用数据,节点存储(DEV):服务器自身磁盘,除了节点存储,其他两类在迁移容器云后依然保留,节点存储则不再使用。

由于nfs服务的局限性,建议使用分布式共享存储替换当前的nfs方式,以满足后续的因业务增长,对存储的容量和性能更高要求。

2.现状

目前物理服务器5台,借用其他业务测试用主机构建NFS高可用,单机磁盘裸容量36T,为了增加磁盘的读写效率,同时保障数据安全性,做了RAID5+RAID0组合方式,该架构目前提供共计20T共享热数据文件存储。

由于nfs容易上手,部署方便且快速,维护十分简单,在项目前期可以作为简单的共享存储使用,伴随着用户训练任务的增长,nfs方式的短板日趋明显,扩容受限,已不能够支撑后续多任务,多用户对数据的大批量、高性能读写请求。

当前存在问题:

a.容易发生单点故障,虽然采用keepalived高可用,但增加了维护的复杂度,同时更拔高了其他短板的表现,尤其在连接管理,效率性能方面,并且在两节点切换期间不可避免存在数据丢失情况;

b.扩容受限,在高并发下NFS效率/性能有限;

c.客户端没用用户认证机制,且数据是通过明文传送,无安全保障;

e.多台机器挂载NFS服务器时,连接管理维护麻烦;

3.技术调研

3.1.要求

目前公司提供的存储,能够和AI当前架构对接的仅限于OSS对象存储,其他的hdfs,hive、hbase均无法采用,公司的NAS资源有限,目前支撑其他项目,无扩容计划,不借用,在无资源和资金支撑下,分布式存储选择需要以下要求:

✓文件存储:支持POSIX接口,可以像普通文件系统(如ext4)那样访问

✓开源性:不采用第三方公司产品,或二次封装方式;

✓安全性:能够满足最基本的用户接入控制,并不限于此;

✓去中心化:高可用,能够纵向升级和横向扩展,即分布式需求;

✓通用性:普通硬件,即能够正常运行Linux服务器即可;

3.2.技术选型

分布式存储已经研究很多年,但直到近年来,伴随着谷歌、亚马逊和阿里等互联网公司云计算和大数据应用的兴起,它才大规模应用到工程实践中。如谷歌的分布式文件系统GFS、分布式表格系统google Bigtable,亚马逊的对象存储AWS,阿里的TFS等都是很好的代表,同时也催生了一大批优秀的开源分布式存储系统,包括ceph、swift、Lustre和glusterfs等。

3.2.1.分布式存储分类

分布式存储按其存储接口分为三种:文件存储、块存储和对象存储。在主流的分布式存

储技术中,HDFS/GPFS/GFS属于文件存储,Swift属于对象存储,而Ceph可支持块存储、对象存储和文件存储,故称为统一存储。

文件存储

通常支持POSIX接口(如glusterfs,但GFS、HDFS是非POSIX接口的),可以像普通文件系统(如ext4)那样访问,但又比普通文件系统多了并行化访问的能力和冗余机制。主要的分布式文件存储系统有TFS、cephfs、glusterfs和HDFS等。主要存储非结构化数据,如普通文件、图片、音视频等。可以采用NFS和CIFS等协议访问,共享方便。

块存储

这种接口通常以QEMU Driver或者Kernel Module的方式存在,主要通过qemu或iscsi 协议访问。主要的块存储系统有ceph块存储、sheepdog等。主要用来存储结构化数据,如数据库数据。数据共享不方便。DAS和SAN都是块存储类型。

对象存储

对象存储系统综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势。以对象作为基本的存储单元,向外提供RESTful数据读写接口,常以网络服务的形式提供数据访问。主要的对象存储系统有AWS、swift和ceph对象存储。主要用来存储非结构化数据。

3.2.2.特性对比

按照选型要求和各技术特性对比,规划采用ceph方式的文件系统。

4.ceph技术原理

4.1.基本组成

Ceph 支持三种存储接口:对象存储RGW(rados gateway)、块存储RBD(rados block device) 和文件存储 CephFS,这三个接口只是在客户端的封装库不同,到服务端了都是对象存储;

对象存储(RGW:RADOS gateway)

Ceph 对象存储服务提供了 REST 风格的 API ,它有与 Amazon S3 和 OpenStack Swift 兼容的接口。也就是通常意义的键值存储,其接口就是简单的GET、PUT、DEL和其他扩展;

块存储(RBD:RADOS block device)

RBD 是通过librbd库对应用提供块存储,主要面向云平台的虚拟机提供虚拟磁盘;RBD类似传统的SAN存储,提供数据块级别的访问;

目前 RBD 提供了两个接口,一种是直接在用户态实现,通过 QEMU Driver 供 KVM 虚拟机使用。另一种是在操作系统内核态实现了一个内核模块。通过该模块可以把块设备映射给物理主机,由物理主机直接访问。

文件存储

相关文档
最新文档