金融生产存储亚健康治理:升级亚健康 3.0 ,应对万盘规模的挑战

news2024/12/25 12:29:02

随着集群规模的不断扩大,硬盘数量指数级上升,信创 CPU 和操作系统、硬盘多年老化、物理搬迁等多种复杂因素叠加,为企业的存储亚健康管理增加了新的挑战。


在亚健康 2.0 的基础上,星辰天合在 XSKY SDS V6.2 实现了亚健康 3.0,并推出了亚健康 3.0 工具来实现新集群和老集群同时应对亚健康问题。



 问题和挑战


亚健康,又称 Fail slow,描述的是硬件虽然仍能正常运行,但性能大幅下降的一种状态。无论是硬盘、网卡、CPU、内存,这些硬件部件都可能陷入亚健康状态。当这些硬件处于这种状态时,这些硬件仍然能继续运行(不会停止工作),但其性能远不如正常情况。如果存储系统没有有效监控和容错机制,则会导致存储系统响应主机的时延增加、IOPS 和带宽降低,极端情况下甚至可能导致无法响应主机,从而打断主机业务

在星辰天合的产品理念中,我们需要确保存储系统的可靠性和高可用,同时也强调软硬解藕设计的灵活性。因此,我们持续努力提升产品在硬件亚健康方面的处理能力。在 XSKY SDS V5 版本里就推出了 亚健康 2.0,它能自动检测并隔离亚健康状态的存储盘。但随着集群规模的不断扩大,硬盘数量指数级上升,我们又一步发现了更多亚健康的优化空间,以确保客户业务连续性

  • 亚健康的场景本身非常复杂,需要针对不同的场景有不同的处理方案,因此我们需要一个足够灵活的亚健康处理框架。例如在某些 RAID 卡固件和版本里,如果一个硬盘发生高延迟且 IO 长期得不到处理,可能会导致 RAID 卡固件重置,进而影响该 RAID 卡下所有硬盘的 IO 处理,最终导致业务性能下降。在这种场景下,我们需要在第一时间内识别并处理首个出现亚健康的硬盘,避免波及系统中的其他硬盘。

  • 亚健康 2.0 是 XSKY SDS 内置能力,这意味着要应对新增的亚健康情况,必须升级整个存储集群版本,这种方式对于给客户带来了诸多不便,尤其是对于生产环境的存储集群,一方面亚健康问题需要不断更新和识别,另一方面存储集群的升级变更流程复杂。因此,我们迫切需要一种更敏捷的方式来推动亚健康新增能力的落地。

为了应对这些挑战,在亚健康 2.0 的基础上,XSKY SDS V6.2 实现了亚健康 3.0,并推出了亚健康 3.0 工具来实现新集群和老集群同时应对亚健康问题



 亚健康能力的版本迭代


我们先回顾星辰天合亚健康检测和隔离功能的历史,从亚健康 1.0 发布以来,逐渐升级功能,在此次发布亚健康 3.0 之后,将会在 2024 年发布亚健康 4.0 版本。

f11a00bc3bbdcbab35719da37ca2330c.jpeg

亚健康能力的版本迭代路线图



亚健康 3.0 算法原理


亚健康 3.0 在继承了 2.0 版本的成功经验的基础上,进一步完善了其不足之处。特别是在面对新硬件引入过程产生新的亚健康问题,其核心设计理念是将亚健康处理跟数据 IO 路径进行分离,从而实现外部检测与全局决策的能力。亚健康 3.0 模块负责亚健康场景的识别,但其本身运行和升级可以独立于存储系统本身。

针对于亚健康检测的复杂性和灵活多变的需求,我们的架构设计具备以下特点:

  1. 收集硬件关键指标,并对指标进行数学统计和处理,同时设有全局仲裁中心;

  2. 检测算法具备自适应性,能够自适应各种不同场景,同时准确性和灵敏度可调整;

  3. 隔离策略首先保证数据安全,其次再保证集群的整体性能;

  4. 我们的设计支持独立部署,兼容老版本集群。算法库采用可插拔方式,隔离策略要求可配置,保障业务连续性。

下面是亚健康 3.0 的软件架构:

745dd66ad528235b10060a2e436472d8.jpeg

亚健康 3.0 的软件架构



金融万盘规模案例


某金融客户在不同时间里在不同业务场景里部署了大规模 XSKY SDS 集群,期间不断扩容新的硬件。至今,其总硬盘数已超过 10000 块,其中很多硬盘已经持续运行了超过 4 年时间。由于硬盘本身的老化和正常的磨损,亚健康导致的系统性能波动偶尔发生。虽然可以通过升级存储集群版本来解决这些问题,但是由于严格的生产运维要求,对存储集群进行批量的升级动作太大,实施成本较高。因此,该客户采用了亚健康 3.0 工具的独立部署来解决这个问题。在该客户部署亚健康 3.0 工具的首个月中,成功识别出 21 块高风险的亚健康硬盘,且没有出现任何因亚健康检测和隔离导致的集群性能问题

cce50a493bf182d8a6386551b919d66b.jpeg

磁盘不能处理任何 IO,读写延时为 0,磁盘利用率达到 99%


在部署一个月内发现的故障硬盘是 21 块,月故障率是 0.21%,推算年化故障率为 2.5%。根据国内外的统计数据,HDD 的年化故障率根据使用的年限、品牌及型号的不同通常分布在 1%-5% 之间,因此 2.5% 的故障率属于在正常范围内。亚健康 3.0 工具从最初支持 SATA SSD、HDD,到后续支持信创 CPU 节点、国产化操作系统、NVME SSD,以及针对不同规格的 RAID 卡等等,几乎完整覆盖了当前各种存储介质和不同运行环境下的情况。



总结


亚健康 3.0 提供了先进的可靠性监测功能,引入创新的数学模型和统计框架,深入分析导致系统性能降级的部件级故障和周边系统故障,不仅能够实时监测网络和硬盘的亚健康状态,还能对故障部分进行主动隔离,从而提高系统的健壮性。

同时为了有效解决一些在网存储集群的亚健康问题,我们通过灵活的设计,将亚健康能力的升级完全独立于存储集群,这使得亚健康工具拥有独立持续迭代的能力


大规模存储盘的潜在风险

• RAID 卡和 SAS 卡固件问题

• HDD 慢盘和 SSD 性能抖动


痛点

• 业务连续性降级

○ 当硬盘进入亚健康状态后,业务响应时延急剧增加,极端情况下业务被 hung 住

• 运维管理困难

○ 维护操作繁琐

○ 缺乏故障定位工具

○ 换盘操作不够便捷

○ 导致业务受影响时间过长,运维成本高


产品优势

• 支持独立部署和升级,对存储集群无影响

• 精准判断+主动有效隔离,系统能够自愈,使得业务影响降低 98%

• 发生亚健康告警后,支持图形化的硬盘点灯和换盘操作


收益

• 无需升级旧存储集群就可以拥有亚健康盘治理能力,降低操作复杂度

• 亚健康故障对于业务影响降低 98%,保障业务连续性

• 大幅提升运维管理效率,提供硬盘亚健康的精准判断和主动有效隔离,大幅降低故障定位及解决难度,运维效率大幅提升。



未来展望


除了对于硬件亚健康实现精准判断和有效隔离外,我们已经开始规划亚健康 4.0 ,这一新版本不仅将覆盖硬件单体部件,还将扩展到全业务场景的服务和性能亚健康的检测和告警。

同时,我们还会对各大主流 SSD 厂商和型号的自定义 SMART 信息进行深入分析,皆在进一步提高预警能力,保证业务连续性和提高运维管理效率。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1044342.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode【474. 一和零】

给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度,该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集 。 示例 1: 输入:strs ["…

区块链实验室(27) - 区块链+物联网应用案例

分享最新的区块链物联网应用案例:HPCLS-BC

AI智能语音机器人的优势

1.高效自动拨号功能。 导入客户数据,外呼机器人自动拨号,无需看守,真人录音话术,定制场景问答和1秒内的问答响应,为客户带来真实准确的咨询体验。同时,每次通话结束后,外呼系统根据通话时间和关…

前端uniapp图片select联动文本切换

图片 代码 <template><!-- 这个是uniapp的下拉框 --><uni-data-select v-model"pay_type" :localdata"range" change"handleSelectChange"></uni-data-select><!-- 图片 --><image :src"dynamicImage&qu…

Linux Ubuntu配置Git的方法

本文介绍在Linux操作系统的Ubuntu版本中&#xff0c;配置分布式开源版本控制系统Git&#xff0c;随后基于Git克隆GitHub中项目的代码的详细方法。 在之前的文章分布式版本控制系统Git的下载、安装与使用其复制GitHub项目代码的方法&#xff08;https://blog.csdn.net/zhebushib…

ARM/X86工控机在轨道交通交通管理系统的应用(4)

交通管理系统 信迈XM-3000系列专为道路监控应用而设计。随着城市化的发展&#xff0c;道路车辆数目与日俱增&#xff0c;而道路监控对于时刻保障城市的安全是非常必要的。由于性能强大并支持宽温度工作&#xff0c;XM-3000系列成为交通管理系统应用的理想选择。 系统架构 交通…

网络安全之网站常见的攻击方式

这是作者自学的哈&#xff0c;不算课程内容。 网页中出现大量黑链 网站看着很正常&#xff0c;但是会隐藏一些链接。网页的链接几乎都是标签&#xff0c;这种黑链就是通过链接标签<a></a>或者script在里面链入恶意脚本&#xff0c;等待浏览者的访问&#xff0c;通…

定制开发游戏有哪些优势?

定制开发游戏具有许多优势&#xff0c;这些优势可以使游戏更具独特性和市场竞争力。以下是一些定制开发游戏的优势&#xff1a; 独特性和创新&#xff1a; 定制开发游戏允许开发者创建独特的游戏概念、玩法和故事情节。这使得游戏在市场上更加突出&#xff0c;吸引更多玩家。 满…

C#使用Zxing.dll组件解析二维码

C#使用Zxing.dll组件解析二维码 1.首先下载Zxing.dll组件&#xff0c;将dll组件放置debug文件夹中&#xff0c;引用参考&#xff0c;引入空间命名。 2.解码方法 string result string.Empty;//--解码private string RQDecode(Bitmap img){string errText string.Empty;Resul…

TVP专家谈腾讯云 Cloud Studio:开启云端开发新篇章

导语 | 近日&#xff0c;由腾讯云 TVP 团队倾力打造的 TVP 吐槽大会第六期「腾讯云 Cloud Studio」专场圆满落幕&#xff0c;6 位资深的 TVP 专家深度体验腾讯云 Cloud Studio 产品&#xff0c;提出了直击痛点的意见与建议&#xff0c;同时也充分肯定了腾讯云 Cloud Studio 的实…

【Elasticsearch】简单搜索(三)

简介&#xff1a;Elasticsearch&#xff08;ES&#xff09;是一个开源的分布式搜索和分析引擎&#xff0c;用于快速存储、搜索和分析大量数据。它具有高性能、可扩展性和灵活性的特点&#xff0c;被广泛用于构建实时搜索、日志分析、数据可视化等应用。 这篇文章主要介绍检索相…

HTML详细基础(一)H5标签入门

本帖为B站网课黑马程序员的学习笔记&#xff0c;总结了H5最核心的概念性质&#xff0c;适用于初学者或者应对期末考试的群体~ 目录 一.Html简介 二.开发工具 三.基础标签 1.核心基础 2.标题标签 3.段落标签 ​编辑 4.文本格式标签 5.盒子标签 6.图片标签 一.Html简介 H…

液氮超低温保存法的原理

细菌保存是有效保存活体微生物群体&#xff0c;使细菌不死、不衰、不变&#xff0c;便于研究和应用。保存细菌的方法有很多。保存原理是利用干燥、低温、隔离空气的方法&#xff0c;降低微生物菌株的代谢速度&#xff0c;使菌株的生命活动处于半永久性休眠状态&#xff0c;从而…

小程序编译器性能优化之路

作者 | 马可 导读 小程序编译器是百度开发者工具中的编译构建模块&#xff0c;用来将小程序代码转换成运行时代码。旧版编译器由于业务发展&#xff0c;存在编译慢、内存占用高的问题&#xff0c;我们对编译器做了一次大规模的重构&#xff0c;采用自研架构&#xff0c;做了多线…

【Elasticsearch】基础概念(一)

简介&#xff1a;Elasticsearch&#xff08;ES&#xff09;是一个开源的分布式搜索和分析引擎&#xff0c;用于快速存储、搜索和分析大量数据。它具有高性能、可扩展性和灵活性的特点&#xff0c;被广泛用于构建实时搜索、日志分析、数据可视化等应用。 本人主要介绍Elasticsea…

【自监督Re-ID】ICCV_2023_Oral | ISR论文阅读

Codehttps://github.com/dcp15/ISR_%20ICCV2023_Oral 面向泛化行人再识别的身份导向自监督表征学习&#xff0c;清华大学 目录 导读 摘要 相关工作 DG ReID 用于ReID的合成数据 无监督表征学习 Identity-Seeking Representation Learning 结果 消融实验 导读 新角度…

WPF Frame content binding page(Using MVVM)

前言 这个binding问题困扰了我几天时间了&#xff0c;弄了好的demo试了又试。之前老是认为是ItemsControl中数据模版DataTemplate中绑定Command问题&#xff0c;根据测试没问题。一直在考虑是否是绑定DataContext对象没指明同一个上下文对象问题。最后在MainWindow.xaml文件中F…

Nginx location 精准匹配URL = /xxx

Location是什么&#xff1f; Location是Nginx中的块级指令(block directive)&#xff0c;通过配置Location指令块&#xff0c;可以决定客户端发过来的请求URI如何处理&#xff08;是映射到本地文件还是转发出去&#xff09;及被哪个location处理。 匹配模式 分为两种模式&…

ETL增量抽取模式实践与调优

在ETL&#xff08;Extract, Transform, Load&#xff09;流程中&#xff0c;增量抽取是一种重要的数据提取方式&#xff0c;允许从源系统中仅提取发生变化的数据&#xff0c;以提高处理效率和减少资源消耗。增量抽取模式有多种实现方式&#xff0c;包括时间戳增量、增量标记和增…

Bug:Mac版Goland无法进行debug

Bug&#xff1a;Mac版Goland无法进行debug 报错&#xff1a; API server listening at: 127.0.0.1:58574 debugserver-(#)PROGRAM:LLDB PROJECT:lldb-1400.0.38.17 for x86_64 (running under translation). error: failed to launch process /Library/Developer/CommandLineT…