经过一年的停滞发展
蜥蜴皮
为确保容错性,数据被划分为副本,副本分布在具有冗余性的不同节点上(多个副本放置在不同节点上);如果节点或驱动器发生故障,系统将继续运行而不会丢失信息,并自动重新分布数据考虑到剩余的节点。 要扩展存储,只需在不停止维护工作的情况下连接新节点即可(系统本身将部分数据复制到新服务器,并考虑到新服务器平衡存储)。 您可以执行相同的操作来减小集群的大小 - 您可以简单地禁用从系统中删除的过时设备。
数据和元数据分开存储。 运行时,建议安装两台主从模式运行的元数据服务器,以及至少两台数据存储服务器(chunkserver)。 此外,为了备份元数据,日志服务器可用于存储有关元数据更改的信息,并允许您在所有现有元数据服务器损坏时恢复操作。 每个文件都分为块(块),大小最大为 64 MB。 块根据所选的复制模式在存储服务器之间分布:标准(明确确定要放置在不同节点上的副本数量,包括与各个目录相关的副本数量 - 对于重要数据,可以增加副本数量,对于重要数据,可以增加副本数量。减少不重要数据)、XOR (RAID5) 和 EC (RAID6)。
存储可以扩展到 PB 大小。 应用领域包括归档、虚拟机映像存储、多媒体数据、备份、用作DRC(灾难恢复中心)以及用作高性能计算集群中的存储。 LizardFS对于任何大小的文件都提供了非常高的读取速度,并且在写入时,在写入整个大中型文件、没有不断修改、打开文件的密集工作以及一次性操作的情况下,它表现出了良好的性能。一堆小文件。
在 FS 的功能中,我们还可以注意到对快照的支持,反映文件在某一时间的状态,以及“回收站”的内置实现(文件不会立即删除,并且可用于恢复一段时间)。 对分区的访问可以通过 IP 地址或密码进行限制(类似于 NFS)。 配额和服务质量管理机制允许您限制某些类别用户的大小和带宽。 可以创建地理上分布式的存储设施,其各个部分位于不同的数据中心。
LizardFS 项目成立于 2013 年,作为一个分支
LizardFS 3.13.0 计划于 3.13 月底发布。 LizardFS XNUMX的主要创新是使用共识算法来确保容错(发生故障时切换主服务器)
其他变化:基于FUSE3子系统的新客户端,解决了纠错问题,nfs-ganesha插件已用C语言重写。 更新 3.13.0-rc2 修复了几个导致 3.13 分支之前的测试版本无法使用的关键错误(3.12 分支的修复尚未发布,从 3.12 更新到 3.13 仍然会导致数据完全丢失)。
2020年,工作重点是发展
LizardFS客户端将添加对版本控制写入操作的全面支持,这将提高灾难恢复的可靠性,解决不同客户端共享访问相同数据时出现的问题,并显着提高性能。 客户端将转移到其自己的在用户空间运行的网络子系统。 基于 Agama 的 LizardFS 的第一个工作原型计划于 2020 年第二季度准备就绪。 同时,他们承诺实现将 LizardFS 与 Kubernetes 平台集成的工具。
来源: opennet.ru