LizardFS 3.13.0-rc2集群文件系统更新

经过一年的停滞发展 恢复 致力于容错分布式文件系统的新分支 蜥蜴F 3.13 и 发表 第二个候选版本。 最近 发生 开发 LizardFS 的公司所有者发生变化,采用了新的管理层并更换了开发人员。 近两年来,该项目已经退出社区,并没有得到足够的重视,但新团队打算恢复之前与社区的关系,与其建立密切的互动。 项目代码是用C和C++语言编写的并且 分发者 根据 GPLv3 许可。

蜥蜴皮 这是 分布式集群文件系统,它允许您将数据分布在不同的服务器上,但以单个大分区的形式提供对它们的访问,该分区的使用方式与传统磁盘分区类似。 使用 LizardFS 安装的分区支持 POSIX 文件属性、ACL、锁、套接字、管道、设备文件、符号和硬链接。 系统没有单点故障;所有组件都是冗余的。 支持数据操作的并行化(多个客户端可以同时访问文件)。

为确保容错性,数据被划分为副本,副本分布在具有冗余性的不同节点上(多个副本放置在不同节点上);如果节点或驱动器发生故障,系统将继续运行而不会丢失信息,并自动重新分布数据考虑到剩余的节点。 要扩展存储,只需在不停止维护工作的情况下连接新节点即可(系统本身将部分数据复制到新服务器,并考虑到新服务器平衡存储)。 您可以执行相同的操作来减小集群的大小 - 您可以简单地禁用从系统中删除的过时设备。

数据和元数据分开存储。 运行时,建议安装两台主从模式运行的元数据服务器,以及至少两台数据存储服务器(chunkserver)。 此外,为了备份元数据,日志服务器可用于存储有关元数据更改的信息,并允许您在所有现有元数据服务器损坏时恢复操作。 每个文件都分为块(块),大小最大为 64 MB。 块根据所选的复制模式在存储服务器之间分布:标准(明确确定要放置在不同节点上的副本数量,包括与各个目录相关的副本数量 - 对于重要数据,可以增加副本数量,对于重要数据,可以增加副本数量。减少不重要数据)、XOR (RAID5) 和 EC (RAID6)。

存储可以扩展到 PB 大小。 应用领域包括归档、虚拟机映像存储、多媒体数据、备份、用作DRC(灾难恢复中心)以及用作高性能计算集群中的存储。 LizardFS对于任何大小的文件都提供了非常高的读取速度,并且在写入时,在写入整个大中型文件、没有不断修改、打开文件的密集工作以及一次性操作的情况下,它表现出了良好的性能。一堆小文件。

LizardFS 3.13.0-rc2集群文件系统更新

在 FS 的功能中,我们还可以注意到对快照的支持,反映文件在某一时间的状态,以及“回收站”的内置实现(文件不会立即删除,并且可用于恢复一段时间)。 对分区的访问可以通过 IP 地址或密码进行限制(类似于 NFS)。 配额和服务质量管理机制允许您限制某些类别用户的大小和带宽。 可以创建地理上分布式的存储设施,其各个部分位于不同的数据中心。

LizardFS 项目成立于 2013 年,作为一个分支 驼鹿FS,主要区别在于基于 Reed-Solomon 纠错码的复制模式(类似于 raidzN)、扩展的 ACL 支持、Windows 平台的客户端的存在、额外的优化(例如,将客户端和存储服务器,块(如果可能的话)与当前节点一起发送,元数据缓存在内存中),更灵活的配置系统,支持数据预读、目录配额和内部返工。

LizardFS 3.13.0 计划于 3.13 月底发布。 LizardFS XNUMX的主要创新是使用共识算法来确保容错(发生故障时切换主服务器) (使用我们自己的 uRaft 实现,之前已在商业产品中使用过)。 使用uRaft可以简化配置并减少故障恢复延迟,但需要至少三个工作节点,其中一个用于仲裁。

其他变化:基于FUSE3子系统的新客户端,解决了纠错问题,nfs-ganesha插件已用C语言重写。 更新 3.13.0-rc2 修复了几个导致 3.13 分支之前的测试版本无法使用的关键错误(3.12 分支的修复尚未发布,从 3.12 更新到 3.13 仍然会导致数据完全丢失)。

2020年,工作重点是发展
阿含,一个新的完全重写的 LizardFS 内核,据开发人员称,与分支 3.12 相比,其性能将提高三倍。 Agama 将过渡到基于异步输入/输出的事件驱动架构 阿西欧,主要在用户空间工作(以减少对内核缓存机制的依赖)。 此外,还将提供新的调试子系统和支持性能自动调整的网络活动分析器。

LizardFS客户端将添加对版本控制写入操作的全面支持,这将提高灾难恢复的可靠性,解决不同客户端共享访问相同数据时出现的问题,并显着提高性能。 客户端将转移到其自己的在用户空间运行的网络子系统。 基于 Agama 的 LizardFS 的第一个工作原型计划于 2020 年第二季度准备就绪。 同时,他们承诺实现将 LizardFS 与 Kubernetes 平台集成的工具。

来源: opennet.ru

添加评论