EDS——EDS文件/对象存储相关功能介绍
  

999的demo 3247

{{ttag.title}}
本帖最后由 999的demo 于 2024-6-24 00:39 编辑

EDS产品架构
EDS(EnterpriseDistributed Storage,企业级分布式存储)采用分布式存储架构,提供分布式存储服务,在统一平台下提供块、文件、对象三种存储服务。
EDS软件整理架构
PGW负责存储协议的接入,每个节点均有负责协议接入的网关
MDS负责保存文件系统的元数据,管理目录结构;3.x版本在开源基础上进行优化,在510版本直接重构。
OSD负责存储数据,包括数据的复制、故障重建、扩容后再均衡,采用基于日志的强一致性协议。
MON监控服务
负责监控整个集群的运行状态,维护展示集群状态的各种图表,采用paxos强一致性协议(分布式一致性协议的一种)
分布式缓存层
phxTire:基于NVMe SSD的分层,缓存数据,提升数据访问吞吐
phxCache:持久化缓存小文件/对象,聚合后写回到数据存储层;均采用raft强一致性协议(基于日志的一致性算法)
分布式数据库——主要解决小文件合并问题
phxKV对接MDS(存储文件元数据),降低元数据存储时延,保存小文件/对象合并的索引;采用raft强一致性协议
EDS读写流程
将完整条带数据写入到分部署缓存phxTire,将小文件/对象写入到phxCache
EDS写入流程
EDS读取流程


文件及对象存储功能特性
小文件合并
从EDS3.0.5开始支持小文件合并。默认合并的大小为4M,可以更改
小文件的痛点
存储空间利用率大于数据实际大小,写放大严重(个对象至少会分配384K的空间,如果数据很小的话也会占用384K的空间)
系统缓存大量小文件元数导致内存耗尽
小文件导致数据重建速度缓慢
小文件合并写入原理
通过phxCache将多个小文件合并,当数据大小达到设置的阈值时会将该数据存放到OSD中;而小文件在合并之后的大文件中的位置(元数据)写入到了phxKV中去。
可以减少底层索引数量(底层元数据数量)
小文件合并读取原理
从phxKV读取文件元数据,然后找到该小文件在大文件中的位置和大文件所对应的条带,从中读取小文件。
EC纠错码(n+m)
EC算法是数据冗余的一种技术,类似RAID5使用校验位来实现冗余
EC和RAID5的区别
EC可以是跨节点的,EC校验的硬件单位可以是单个磁盘、一组磁盘、1个主机或一组主机十分灵活;而RAID5一般是由节点内的若干块盘组成,只能容忍硬盘故障,不能容忍节点故障。
EC和副本的区别
EC的故障恢复比副本更复杂,副本直接再copy一份即可
EC比副本的优势是成本,例如相比于3副本EC在保证同样可靠性的同时,并不需要保存3份数据
ECn+m的概念
N就是存储的数据位,M就是存储的校验位;EC4+2就表示4位存数据,2位存校验,即可用存储为2/3
EC4+2的具体分片原理,如下图
chunk:将数据进行分片,如图分成4个片d1、d2、d3、d4
encode:根据4个数据片,生成2个校验片,这样就形成4+2的EC数据片
EC4+2允许这6个数据片任意损坏2个假如损坏了d2和c1,如下图
decode:通过d1、d3、d4、c2,根据EC的计算,可以算出原始的数据块
re-encode:将原始的数据块分成d1、d2、d3、d4,再次计算出c1、c2
replace:将损坏的数据块d2、c1进行替换掉即可
EC4+2:1和EC4+2的区别
EC 4+2:1(故障域为硬盘组)
每个数据带包括4个数据块和2个编码块,允许任意2块磁盘故障而不影响数据完整性或任意1个节点故障而不影响数据完整性,该策略最少需要3个节点数(3个故障域)
EC 4+2(故障域为主机节点)
4+2指的是每个数据带包括4个数据块和2个编码块,允许任意2块磁盘故障而不影响数据完整性或任意2个节点故障而不影响数据完整性,该策略至少需要6个节点数(6个故障域)
EDS故障域
EC的单位可以是一组磁盘或单个主机,这个单位就可以简单理解为故障域
EDS有两种故障域,半主机故障域和整主机故障域
整机故障域(一个主机就是一个故障域)
对于EC4+2来说,需要EDS节点数大于等于6,此时每个主机节点就是一个故障域
对于EC8+2来说,需要EDS节点数大于等于10,此时每个主机节点就是一个故障域
半主机故障域(一个主机就是两个故障域)
由于EC4+2需要6个故障域,当使用3台主机做EC4+2时,一个主机就为两个故障域,此时就称为半主机故障域
由于EC8+2需要10个故障域,当使用5台主机做EC8+2时,一个主机就为两个故障域,此时就称为半主机故障域
故障域内SSD和HDD之间的关系
单个SSD最多可配置10个HDD
在3x版本中,SSD和HDD是以磁盘组的形式存在的,因此添加ssd必须添加hdd
在5x版本中,SSD不在故障域内,独立出来了,因此在扩SSD时可以单独扩,不受故障域影响
磁盘扩容
由于数据是平分到每个故障域内的,因此扩容必须保障每个故障域内的磁盘是一致的(如果不一致,遵循最小短板原理);在故障域内的数据又是平分到每个磁盘上的,所以磁盘的容量也需要一致(如果不一致,遵循最小短板原理)
因此在半主机故障域时,每个主机内有两个故障域,扩容磁盘时SDD和HDD需要是双数;在单主机故障域时,扩容的磁盘可以是单数
文件快照
文件存储提供了基于目录的快照,支持生成用户所需的指定目录在某个时间点上的一致性映像,在不中断正常业务的前提下,快速(秒级)得到与源文件系统一致的数据副本。副本生成之后立即可用,并且对副本的读操作不再影响源文件系统中的数据。
通过快照技术可以解决如在线备份、数据分析、应用测试等难题。
快照原理(采用COW写时复制技术实现)
创建快照:
创建快照以后,如果源卷的数据发生了变化,那么快照系统会首先将原始数据拷贝到快照卷上对应的数据块中,然后再对源卷进行改写
删除快照:
删除快照时就直接删除对应的快照LUN就可以了
对象多版本
与快照相对应,是对象存储的数据保护技术
开启对象多版本功能后,在同一个资源中可以存储相同的文件(即文件名相同,但是内容不同的就可以理解为多版本),在数据被误删后,能够通过历史版本来快速恢复
对象版本的控制
在下载时需要指定版本下载
删除对象不会彻底删除,会将对象存放在已删除列表里
注意事项
如果开启小对象合并功能,多版本功能是无法使用的
WROM
WORM(Write One ReadMany)特性利用软件机制模拟传统光盘归档功能,WORM能够将文件设置为写保护状态,处于此状态的文件只能被读取,不能被更改、删除或重命名,从而有效防止数据被错误或恶意地删除或篡改
特权删除
允许具有CIFS共享管理员权限的用户删除处于保护期内的文件(但是仍然不能修改文件内容)
注意事项
同一个共享目录不支持WROM与回收站同时使用
非空目录不支持设置WROM
文件WROM功能开启后不支持关闭
文件防病毒
仅对CIFS生效
主要应用于文件共享场景,共享存储可以提供安全能力,能够检测和处置写入的病毒,从而提升整体安全能力。
实现原理
通过CIFS协议上传到EDS后,都会立即触发病毒异步扫描。存储会根据扫描结果自动处置可疑文件,可疑文件对客户端可见,但无法访问。
高安全模式:打开未扫描完成的文件时会等待扫描完成才能打开。客户端不会访问到恶意文件,该模式对性能影响较大,适用于冷数据归档场景;
高性能模式:允许打开未扫描完成的文件,后台会同步进行病毒扫描。客户端可能会访问到恶意文件,该模式对性能影响较小,适用于通用场景。

打赏鼓励作者,期待更多好文!

打赏
3人已打赏

平凡的小网工 发表于 2024-6-15 22:01
  
多谢分享,图文结合,有助于工作。
一个无趣的人 发表于 2024-7-4 16:56
  
图文结合,步骤清晰,有助于工作。
飞翔的苹果 发表于 2024-8-8 08:00
  
每天坚持打卡学习签到!!
发表新帖
热门标签
全部标签>
西北区每日一问
技术盲盒
安全效果
每日一问
【 社区to talk】
干货满满
技术笔记
产品连连看
新版本体验
技术咨询
功能体验
GIF动图学习
2023技术争霸赛专题
每周精选
标准化排查
通用技术
自助服务平台操作指引
信服课堂视频
秒懂零信任
安装部署配置
排障笔记本
答题自测
原创分享
技术晨报
社区新周刊
POC测试案例
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
社区帮助指南
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
高手请过招
升级&主动服务
高频问题集锦
全能先锋系列
云化安全能力

本版版主

107
51
12

发帖

粉丝

关注

本版达人