glusterfs集群几种卷模式
分布卷
- 分布卷也称为哈希卷,多个文件在多个 brick 上使用哈希算法随机存储。
- 应用场景: 大量小文件
- 优点: 读/写性能好
- 缺点: 如果存储或服务器故障,数据将丢失
- 不指定卷类型,默认是分布卷
- brick 数量没有限制
- 补充说明:因为文件实际上只存在一台数据机上,所以若出现故障则文件直接丢失,读写会根据哈希算法在不同的的brick上去读写数据,效率较高
条带卷(类似RAID0)
- 将文件分成条带,存放在多个 brick上,默认条带大小128K
- 应用场景: 大文件
- 优点: 适用于大文件存储
- 缺点: 可靠性低,brick 故障会导致数据全部丢失
- brick为1以上
- 补充说明:因为条带化之后能更加充分的使用磁盘空间,并且能将文件分块存在多块brick上,但是同时文件丢失一块则全部数据不可用,易丢失,读写时会同时往多个brick里存入或读取文件块,使用了多块brick的io速度,并且块体积小,性能较高
复制卷(类似RAID1)
- 多个文件在多个brick上复制多份,brick 的数目要与需要复制的份数相等,建议brick分布在不同的服务器上。
- 应用场景: 对可靠性和读性能要求高的场景
- 优点: 读性能好
- 缺点: 写性能差
- brick为2或2的倍数
- 补充说明:文件存入后会在brick上复制,从而起到冗余效果,但同时会占用一半的磁盘空间,读时因为多块brick上都有文件所以分brick去读性能较好,写入会因为复制的原因较慢,性能较弱
分布条带卷
- 多个文件在多个节点哈希存储,每个文件再分条带在多个brick上存储
- 应用场景: 读/写性能高的大量大文件场景
- 优点: 高并发支持
- 缺点: 没有冗余,可靠性差
- brick为2以上
- 补充说明:对文件进行哈希存储后再进行条带化,同样继承了分布卷和条带卷的优点,读写性能相对特别高但同时数据易丢失
分布复制卷
- 多个文件在多个节点哈希存储,在多个brick 复制多份存储。
- 应用场景: 大量文件读和可靠性要求高的场景
- 优点: 高可靠性,读性能高
- 缺点: 牺牲存储空间,写性能差
- brick为2或2的倍数
- 补充说明:对文件进行哈希存储后再进行复制,得到了数据文件的高可用性,但同时牺牲了一半的磁盘空间和写性能
分布条带复制卷(类似于raid01)
- 多个大文件在多个节点哈希存储,存储时分成条带,并且保存多份。
- 应用场景: 大量大文件并且对可靠性要求高的场景
- 优点: 读/写/可靠性比较均衡
- 缺点: 牺牲存储空间,写性能相对差
- brick为2或2的倍数
- 补充说明:相当于分布式条带卷和分布式复制卷的折中点,虽然牺牲了一半的磁盘空间,但数据的可靠性得到了保障,并且由于条带化的原因读写性能得到了一定的均衡
分散卷(类似RAID5)
- 分散卷基于校验码,它基于条带编码,并分布到多个brick上存储。
- 应用场景: 对冗余和磁盘空间都敏感的场景
- 优点: 在冗余和磁盘空间上取得平衡
- 缺点: 要求消耗额外的资源进行验证,对性能有一定的影响
- 分散卷需要指定冗余 brick 数量,冗余数要小于 brick 数量。例如创建一个 4 个brick 冗余的分散数 最多允许1个brick故障而不丢失数据
- 补充说明:读写性能不是太出众,由于资源验证的原因,但是保障了文件的高可用性解决了磁盘使用率太高的问题
如果觉得该文章对你有帮助的话请给我点个👍吧,感谢