由 XSKY星辰天合 发布于2020-04-23
抵抗不确定性的 “免疫力”
这次疫情 “黑天鹅”,让许多企业用户开始意识到,系统的数字化能力是抵御包括疫情在内的诸多不确定性风险以及未来就绪的最佳途径。
通过将数字化转化为生产方式,无缝融入商业模式和全场景体验,构建线上线下的一体化链条,让企业真正获得抵抗不确定性的 “免疫力”;而这样的前提在于:
第一,在如此快速变化的时代,业务和需求都在快速迭代,用户的应用也正在更多的向云原生和微服务架构转型,这要求基础设施能够快速部署以及灵活可扩展;
第二,当下的经济环境,需要在技术先进性和经济合理性中找到平衡支点;
第三,如果说企业的 “免疫力” 来自于系统的数字化能力打造,那么稳定、持续的数字化能力输出大概率来自于系统的健壮性。核心的数据基础设施如果同样拥有了 “免疫力”,无疑能够更好的抵御各种故障对系统的冲击,保证上层业务的正常运行。
XSKY SDS V4.2 正式发布
日前,为了帮助企业用户更好的应对当下不确定性的大环境,增强抵抗各种不确定性的 “免疫力”,XSKY 正式迭代发布了 V4.2 版本,带来了一系列新功能以及增强的特性,让 SDS 更加可靠,易用和可运维。

本次版本中,带来了数据校验增强,硬盘亚健康处理,网络亚健康处理,闲时自动重平衡四大重磅功能,从数据端到端安全、硬件组件的亚健康管理和容量管理三大领域进行 “免疫力” 提升,同时还带来了场景化进一步增强等九项新增与优化功能;并全新发布 XSKY S3 Console 对象接口产品,帮助客户进一步降低使用对象产品的门槛。
基于上述发布,客户在一系列业务场景中实现了性能倍增,以及面对多样化的工作负载,进一步简化运维,增强抵御系统故障的能力:
1、VMware 场景,vSphere 中 vMotion、克隆操作的复制性能提升了 1.5 倍;
2、容器场景,Pod 创建速度更快,以 100 个 Pod 创建速度为例,从 30 + 分钟优化到 4 分钟,效能提升 7.5 倍;
3、相同硬件配置情况下,整个系统支持对象数比上一个版本提升了 1 倍。
以上是场景中显著提升的部分,同时还有整体系统性能稳定性的提升。
可靠性增强
1、高强度实时数据校验
数据静默错误是现代存储系统最难处理的故障之一。现在机房周边环境复杂,特别是 SSD 的大量使用,使得外部的强干扰导致本来输入的 0/1 的高低电平发生改变而发生静默错误的几率越来越大。
XSKY 过去版本在多副本 (EC) 数据保护已经积累了大量的数据安全性保证措施,同时支持定期后台数据扫描来检查不一致。
在 V4.2 版本中,我们又增加了一个强有力的数据保护措施,通过在 IO 路径加入了实时数据校验机制来确保数据读写的即时安全。该措施使得在写 IO 的时候,底层存储引擎会计算写入数据的 CRC 值并记录到对应数据的元数据中;
读 IO 的时候,会读出数据,同时计算 CRC 值然后与元数据中记录的 CRC 比对,如果不一致,告警,使用其他副本数据来恢复,恢复后同步会打印告警消息。
实时 IO 流程的数据校验使得分布式系统整体容错性大大增强,同时解决了数据一致性的即时性问题,避免任何情况下应用从存储系统中读取可能的不一致数据。

实时数据校验可以按照卷的粒度开启或者关闭,内部实验室性能综合测试评估对系统的性能峰值影响少于 10%。建议关键业务开启实时数据校验功能,避免静默错误的发生。
2、硬盘亚健康检测
硬盘亚健康引起的系统性能抖动是分布式存储极难处理的现象之一,自动检测集群中的慢盘和坏盘,告警并自动隔离,是存储系统在健壮性上的必要支撑。
在新版本中,XSKY 进一步完善了检测方法和处理机制。坏盘判断相对简单,会通过检测 SCSI/NVME 的 IO 指令错误码,以及相关设备的介质事件发生(如拔盘)等进行坏盘决策。
而判断慢盘是最需要经验的。XSKY 根据现网大量的已部署集群的工程经验,将算法应用到所有的存储介质守护进程 (OSD) 中进行实时分析,其采用三个维度来判断慢盘:
纵向时延比较:本 OSD 的性能延迟超过阈值的次数;
横向时延比较:与存储池内其他 OSD 平均延迟进行比较,通过标准差计算相应偏离;
IO 粒度:当一个 IO 在本 OSD 对应介质中处理超过一定时间的 。
这种立体的判断方法,使得系统识别慢盘的准确度和速度都大幅提高。
新版本也进一步完善了慢盘的处理流程,采用告警-隔离-重试,逐步递进:
告警:上述检测机制发现的所有磁盘亚健康情况都会发送对应告警到界面,提示用户检查;
隔离:当且仅当出现 IO 粒度慢盘和坏盘时,系统会指定守护进程(OSD)自动退出;
重试:当且仅当出现 IO 粒度慢盘和坏盘情况 OSD 主动退出时,系统会根据对应的错误情况来连续尝试拉起一定次数来,如继续异常则不再拉起该 OSD。重试过程中由于 OSD 已经隔离退出,因此不会影响在线 IO。
3、网络亚健康检测
分布式系统,网络的稳定性对系统的性能影响非常大。XSKY SDS 新版本可以自动识别集群网络故障,发送告警信息,协助管理员快速排查网络问题。
实现原理如下:
系统所有守护进程通过分布式网络延迟检测算法,实时判断不同节点的网络延迟和副本之间数据复制的网络延迟来获得当前系统内所有节点的实时网络情况;
计算出系统所有节点中 1min, 5min, 15min 内的网络延迟的平均值作为评判基线;
遍历系统所有节点的 1min,5min,15min 的网络延迟数据,通过标准差计算分析偏离指数,当指数超过阈值时则认为网络有问题。
4、存储池容量分布闲时自动重平衡
分布式存储,在进行扩容或者缩容的时候,会触发存储池进行重平衡。由于算法的拓扑适应性或者人为干预,也有小概率情况下出现算法自动计算的存储池容量不平衡的情况出现。
以前出现这种情况,需要运维人员进行手动的容量再平衡。在新版本中,加入了智能检测这种情况并且智能启动重平衡的全自动化处理流程,避免极端情况下由于某个 OSD 写满(超过阈值)而引起业务不能写入的现象。
分布式存储系统利用闲时(晚上 12 点 - 2 点,可配置),对于容量不均衡的存储池(容量差异大于 1%)进行重平衡。自动重平衡会以最低恢复带宽进行,也可以关闭,避免对峰值业务造成影响。
场景化增强
1、OpenStack 场景优化
很多用户选择 XSKY SDS 代替 OpenStack 自带的开源软件定义存储。为了解决资源消耗问题,XSKY 自研了具有专利技术的 XDC 模块,提供 LibRBD proxy 代理,通过代理劫持客户端访问 RBD 的命令,将无序的访问命令统一管理起来,根据系统资源使用情况按需打开 RBD 通道,从而达到资源的有效管理。
在快照选择上,XSKY 提供 ROW (Redirect on Write) 技术。传统存储 COW 快照后在写性能方面的效率要比 ROW 低很多,但是在读性能 ROW 的效率要低于 COW 快照。而软件定义存储的整体性能可由多节点负担,且 XSKY 产品在读性能方面做了大量优化,因此,在 SDS 产品中采用 ROW 快照,可有效规避传统存储创建快照后存在的性能问题。

但上述改动使得 OpenStack 支持多套存储和跨池克隆等场景处理起来比较复杂。在新版本里,XSKY 通过对纳管开源 Ceph,在线数据迁移和跨池克隆等功能模块持续进行优化,性能和稳定性都得到较大的提升。

2、VMware 场景优化
XSKY 内部统计,大约有 1/3 的存储应用场景都是 VMware 场景。在新版本中,XSKY 持续对 VAAI 接口进行优化。本版本的优化主要有两点:
UNMAP 的支持粒度从 4M 改为 1M。因为 ESXi 应用大部分都是 1M 粒度,所以对于 ESXi 的 UNMAP 操作可以显著增加容量释放空间;
XCOPY 直接从最底层 OSD 到 OSD 进行数据复制,性能提升 1.5 倍。对于虚机克隆和迁移操作显著减少了时间。
3、容器场景优化
新版本针对 CSI 的 API 接口持续进行优化,提升批量创建 Pod 的速度,提升了单集群支持 Pod 的数量,并且把通过 API 创建的资源和通过系统 UI 创建的资源进行隔离,提升了安全性。

XSKY 的 CSI 很早就支持 RAW 卷、卷扩容、快照和克隆等增值特性。这次新版本加入了对用户名和密码进行加密保存的支持,并且支持容器的 MPIO 特性,在三层网络下也可以部署延展集群,实现容器的同城双活。

4、S3 对象存储策略优化
对象存储在企业市场使用,和公有云场景不同,需要更多的精细化管理控制。在这次发布的新版本里,IT 管理员可以根据业务需要,对 S3 用户通过 API 创建的存储桶可以灵活指定存储策略。

如上图所示,如果管理员允许使用 Location 参数,S3 用户调用 S3 Put Bucket API 创建存储桶时,可以使用携带 LocationConstraint 参数来指定要使用的存储策略。
但是如果管理员想控制某些用户的存储策略,则可以通过设置禁止使用 Location 参数,则 S3 用户创建桶时只能选择管理员设置好的存储策略(可以指定某个策略,也可以使用缺省策略,甚至可以在不同策略里轮询)。
可运维增强
1、集成巡检工具
从 V4.2 版本开始,XSKY SDS 管理节点内置了巡检工具,只需要启动运行,就可以自动完成巡检并提交巡检报告。在 V4.2 版本以前的集群,可以从官网下载最新的工具进行集群巡检。
获得巡检结果后,通过官网上传巡检结果文件,后台 XSKY 售后支持系统会利用内部知识库以及智能分析系统来进行故障或隐患的发现,生成巡检报告,并提供给用户。

2、文件访问日志
支持针对文件的操作,进行日志记录,满足审计等客户需求,方便操作追溯。
3、告警记录优化
告警记录优化,增加了告警自动恢复机制,错误码,告警原因,详情和处理意见,使得用户可以自行针对处理建议进行修复,也增强了系统的透明性,使得运维更便捷。
4、优化归并文件空洞扫描
可按照策略进行空间扫描进行二次归并,及时进行空间回收,提高对象存储空间使用率。
5、存储桶对象数规格提升和告警优化
新版本对索引池的性能进行持续优化,相同硬件配置的情况下,整个系统支持对象数比上一个版本提升了 1 倍。并且可以在界面看到单桶已经存储文件数量,超出存储文件数阈值限制写入,保证已写入桶数据的预期性能。
推出全新XSKY S3 Console软件
对象存储通过 S3 API 来使用,这种方式对于很多企业用户来说不太直观。他们希望有一个工具,可以类似公有云一样,实现文件的上传和下载等基本的操作。
XSKY S3 Console 是一款面向 XSKY S3 用户的便捷管理对象存储服务的图形化 Web 应用程序,主要提供了丰富的桶、文件夹及文件等级别的管理功能。帮助使用 XSKY 对象产品的客户降低使用门槛。
本次新版本中,XSKY 的对象存储内置了 S3 Console 功能。用户只需要安装好对象存储,打开浏览器就可以直接基于 S3 Console 来使用对象存储。

通过 XSKY S3 Console,对象存储就不仅仅只适合开发人员使用,普通用户也可以很方便的使用对象存储。
小结
XSKY SDS V4.2 的发布,使得 XSKY SDS 的健壮性、性能、易用性和可运维能力都有了大幅的提升,保证上层业务稳定运行,助力客户利用 SDS 的优势更加敏捷应对疫情带来的影响。XSKY S3 Console,则拉近了对象存储和用户的距离,可以加快对象存储在企业中的普及。
XSKY SDS V4.2 版本现已开放商业销售,了解新版本特性、索取相关资料与更多事宜,立即致电 400-016-6101 或发邮件至 contact@xsky.com,亦可咨询 XSKY 专业人员。