FastDFS是以纯C语言实现的一款开源轻量级分布式文件系统,支持Linux、FreeBSD、AIX等UNIX类系统。
FastDFS不是通用的文件系统,不支持POSIX接口方式,只能通过专有API对文件进行存取访问,目前提供了C、Java和PHP API为互联网应用量身定做,解决大容量文件存储问题。
主要功能有:文件存储,文件同步,文件访问(文件上传/下载),适合以中小文件(建议范围:4KB < file_size<500MB)为载体的在线服务,如相册网站、视频网站等等。
FastDFS由跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client)构成。
1、跟踪器-Tracker
跟踪服务器,主要做调度工作,起负载均衡的作用。在内存中记录集群中所有存储组和存储服务器的状态信息,是客户端和数据服务器交互的枢纽。客户端访问集群的时候会随机分配一个Tracker来和客户端交互;
2、存储节点-Storage
存储服务器(又称:存储节点或数据服务器),实际存储数据的地方,文件和文件属性(meta data)都保存到存储服务器上。Storage server直接利用OS的文件系统调用管理文件。Group可以隔离不同应用的数据,不同应用的数据放在不同group里面;
3、客户端-Client
作为业务请求的发起方,通过专有接口,使用TCP/IP协议与跟踪器服务器或存储节点进行数据交互。每个客户端服务器需要安装Nginx。
由于FastDFS产品非常轻量简单,支持最小化部署,所以目前还有部分用户在使用该产品。但FastDFS被使用在生产环境还有很多隐患和不足:
FastDFS主要缺陷
01XEOS对象存储
XEOS (XSKY Enterprise Object Storage)通过全新的存储技术手段,基于通用服务器硬件构建了一个近乎无限扩容、持续在线、可跨地域访问的高性价比存储架构体系,在保证了数据高安全性的同时,打破存储规模和地域限制的壁垒,降低企业 IT 建设的投入,满足了新业务形态的多源化存储需求。
XEOS完备的企业级存储特性,如:多副本/EC、QoS、负载均衡、小文件归并、统一命名空间、数据分层等,完美解决了FastDFS的诸多产品问题,平滑的适配了其使用场景。
02X3DS辅助FastDFS 平滑迁移至XEOS
X3DS(XSKY 3D data management System)是XSKY提供的立体数据管理系统。可提供非结构化数据的DR(Disaster Recovery,灾难恢复),DP(Data Protection,数据保护)和DM(Data Migration,数据迁移)这三大管理能力,是一个立体的三维数据管理平台。
支持非结构化数据的复制、迁移、备份、归档功能,支持丰富的数据管理策略,满足不同用户的个性化要求。支持多存储后端协议(如:CIFS,NFS,FTP,S3,BOS,OSS,FastDFS等),极大的兼容了市场上主流文件传输协议。
支持跨厂商的文件和对象存储之间数据相互移动,支持跨云的数据上云和下云,适应性广,避免用户被设备厂商和公有云厂商锁定。迁移任务支持断点续传,应对海量数据迁移过程中,如发生机房掉电等故障,故障恢复后,再次启动迁移任务可以实现断点续传,有效节省迁移时间。
1、整体迁移方案架构
2、方案特点
可配置迁移QoS;
支持主流协议迁移;
为保证数据可用,业务切换时需要短暂停机做最终数据一致检查;
支持—file-from,指定文件迁移;
支持脚本工具导出FastDFS集群文件ID;
迁移任务支持断点续传。
3、具体部署方案
整体操作流程:
创建源端
创建目标端
创建迁移任务
数据迁移中
产品安装部署:
1.目标XEOS集群部署
网络需要与源端集群业务网络连通;
参照《星辰天合分布式存储系统软件安装手册》完成XEOS分布式对象存储安装,初始化配置,调试完毕,准备就绪。
2.信息收集,集群规划
收集原有FastDFS集群相关信息;
结合客户需求定制,规划新集群相关配置信息。
3.迁移流程规划
迁移项目实施需有详尽的方案规划,针对不同的业务应用或者租户,优化切割时间节点;
评估重点业务,为保证迁移的有效性和安全性,需要对验证迁移前后数据的一致性和完整性做整体规划;
确定迁移步骤,顺序,工具,实施人员等信息,给出具体的实施指导手册和计划,以及对应的回退方案。
4.目标端集群配置
目标端集群对应资源的创建(对象资源,永久Token等);
确定新集群和应用业务的对接。
5.Nginx安装
下载并配置FastDFS-Nginx-Module模块,完成在Storage所有节点上Nginx的安装;
Storage节点上对接配置Nginx,并设置开机自启动;
测试Nginx模块。
6.数据迁移
安装配置X3DS
X3DS产品支持融合部署在XEOS存储节点,不需要额外的资源消耗;
上传解压X3DS安装包,一键安装部署;
添加X3DS节点(支持单节点和多节点部署,多节点部署建议至少3个节点) ;
在目标端XSKY存储上创建永久Token;
参照手册创建源端的FastDFS和目标端的XEOS S3的Remote类型;
检查业务网络的连通性,待迁移数据需可以在X3DS业务节点访问。
数据迁移
部署用户提供的文件ID列表保存在X3DS业务节点上;
预测试,使用小部分数据先预测试,验证方案可行性;
配置迁移任务;
迁移完成后,检查一致性。
7.迁移完成,业务切换
迁移完成后,业务切换,验证数据一致性。
03迁移案例
某新消费服务平台在新数据中心建设上采用XSKY XEOS来满足其非结构化数据存储需求。原数据存储在FastDFS文件系统中,总文件数量超过48亿个,总容量超过700TB,数据类型大部分为100-500kb的PDF文件。为了实现数据的统一管理和维护,需要将原FastDFS集群上的数据迁移至新建XEOS对象存储集群中。
1、迁移方式
采用在线迁移的方式进行;
需要多次迁移,停业务完成最后的迁移;
短暂离线迁移主要用于校验数据一致性。
2、第一期迁移
完成数据迁移共计600W+文件;
共计迁移时间4小时。
3、改造后优势
(免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。 )