随着近几年的云服务发展和普及,云存储的优势得到了越来越多开发者的认可,成本低、易用和便捷等方面优势明显的云存储,备受青睐。但是对于很多企业来说,直接采用云存储,仍会面临以下问题:
1、现有的服务架构难以直接整体迁移到云存储上;
2、既有代码难以进行大范围的改动以适配全新的接口;
为解决此问题,在TaoCloud已有产品的基础上,研发云存储网关产品Tgateway,可以协助您实现云存储的无缝衔接,让您更加平滑地将业务迁移上云。本文将围绕Tgateway的架构和应用场景进行讨论。
Tgateway云存储网关架构
Tgateway的整体架构图如下,由四个部分组成:
核心集群:
- 由一个主从模式的分布式任务调度系统和4种主要类型的任务组成,调度系统根据参与节点的资源情况,将提交的任务分发到合适的节点;
- 4种主要类型的任务分别为:创建文件元数据、上传文件到云、下载云上文件到本地、删除已上传文件的本地空间(云上数据保留);
- Tgateway核心集群,可以只部署在一个节点,或由一个主节点和多个从节点组成的集群;
管理:
- 用户对远端设备的配置,以支持AWS S3协议的云存储为例,需要配置主机和端口,桶名,用户名和密码;
- 统计、日志、系统状态信息的查看;
- 上传和下载策略的配置;
- 提交各种任务;
元数据集群:
存储用于各种任务相关的元信息。元信息包括文件的名称、路径、大小、创建时间、写入数据的所在分片位置和时间戳等。
数据同步插件:
- 用户以NFS/CIFS/FTP/Posix协议写入的文件,或iSCSI接口访问卷时,该插件在不影响写入本地存储或称本地缓存性能的情况下,收集写入分片位置等关键信息,存入元数据集群;
- 当用户读取一个文件的某块内容时,如果不在本地,则将自动从远端存储设备上的下载相应的文件到本地。为了性能,原始的性能文件,将按固定大小分片格式化后,存储到远端存储设备上。
策略
Tgateway支持两种策略类型,分别为时间类型和容量类型。对于提交的每个策略,将会生成一个独立的作业,根据策略类型,产生不同的任务。以实时策略为例,它将实时地将符合条件的文件元信息提交到上传队列,上传任务将处理队列中的文件。
(1) 时间类型策略:实时性(一旦数据写入后,则上传)和周期性(比如3天,表示3天没有更新后,则上传)。
(2) 容量类型策略:通过上下水位阈值控制文件上传。对于未上传过的本地文件,一旦空间使用达到上水位,则将本地文件上传;对于已上传的本地文件,则删除本地空间,保留上传空间中的文件。
写过程
以实时策略为例,讨论一个文件从产生到保存进云存储中的过程。当创建文件时,数据同步插件将产生一条文件路径信息,存储到元数据集群中。文件元数据创建任务,将依据路径信息创建一条完整的文件元信息。而后,实时扫描任务,将该文件标记为待上传状态,上传任务将执行该文件分片上传到云存储中,并释放本地文件所占空间和保留存根。
整个过程图示如下:
读过程
讨论已经上传到云存储并且删除了本地数据的文件,Tgateway支持两种方式的下载。
(1) 当应用程序读取文件时,根据读取的位置,数据同步插件将自动触发对应分片文件的下载,并将下载的分片文件保存到原文件对应的位置,后续的读取步骤按本地文件的方式完成。
(2) 批量下载方式,收到提交的批量下载请求后,将生成下载作业,分析任务将根据该作业提供的参数,将需要下载的文件插入队列,而后,下载任务执行,从云存储中获取文件,保存到本地,待整个作业完成后,用户可以通过管理界面查看下载结果。
整个过程下图所示:
应用场景
(1) 医疗PACS影像归档上云存储:
医院每天产生大量PACS影像,如果只使用本地存储设备,将需要经常定期对存储设备进行扩容,那么存储成本和运维成本都随之不断增大。而PACS影像数据,有一个明显的特点,就是,访问频率将随着时间的推移,不断降低,特别适合将这些低频访问的影像存储到成本更低的云存储设备。另外,Tgateway提供的实时上传功能,使得云存储可以作为PACS影像存储的备份系统,在本地存储空间吃紧的状态时,通过提交删除策略,可以将已经保存到云存储的文件,删除对应的本地文件并保留存根,当未来需要读取时,可以逐个或批量下载到本地。
(2) 视频监控上云:
随着高清视频的迅速普及,对后端存储系统提出更高的容量和性能需求,然而,通过部署Tgateway系统,定制冷却周期策略,能将保存时间超过指定周期的视频文件,上传到没有容量限制的云存储上,立即释放本地空间或通过提交策略删除已经上传到云存储的本地版本,可以大大降低总的存储成本。
(3) iSCSI卷网关:
对于只支持iSCSI卷存储的视频流数据,通过Tgateway网关,实现这类数据流轻松上云,达到扩展存储容量的目的。
方案优势
Tgateway为解决特定的存储场景和友商的业务痛点而设计,使存储上云、容量扩充、数据分层、协议互通、管理简单触手可及。