利用“开源组件+关键核心代码自研”建设存储统一管理平台

一、 引言

当前,全球正处在数字化转型的关键阶段,创新的业务形态和经营模式不断涌现,推动着经济快速增长。数据作为推动企业转型的核心要素和重要资产,其价值已经得到了企业的高度认可。企业在充分享受数据红利的同时,爆炸式增长的数据总量也给存储系统带来了巨大的压力和挑战,根据华为《全球产业展望(GIV)》预测,到2030年全球数据将进入YB时代。作为承载核心业务数据的存储系统规模越来越大,数量越来越多,各类型号的新旧存储共存,导致存储管理难度不断加大,效率不断降低,使用成本不断上升。

二、 面临痛点

当前存储人员面临着多个厂商、多种型号的存储同时在线运维的场景,运维难度和复杂性越来越高,业界也缺乏能够统一纳管所有存储的管理平台,导致存储运维压力越来越大。造成这种问题原因主要有三个:

(1)企业为了避免被同一存储厂商的商务或技术绑定,会决策采购多个存储厂商的产品来规避风险;

(2)不同存储厂商为了适配企业的各类业务场景,抢占市场的占有率和追求高回报率,会开发出概念上具有领先性、指标参数上具有排他性的存储产品,这样就导致不同厂商的存储各异;

(3)同一存储厂商的存储产品,以Dell EMC的Unity、PowerStore、SC等系列产品为例,由于公司之间的并购、公司内的研发部门不同、产品实现原理和功能差异、产品更新换代等原因,在管理和维护上也不能做到统一管理。

由于以上原因,导致现网异构存储越来越多,存储管理难度不断加大,运维效率不断降低,使用成本不断上升。针对异构存储的管理,目前业界在这方面的解决方案主要有商业软件和全开源软件两种,但均有较大的限制:

(1)商业软件(存储厂商或第三方厂商开发),主要限制如下:

• 收费昂贵

• 技术支持完全依赖于原厂商

• 产品兼容性有限

• 个性化功能无法定制

代表产品:DELL EMC ViPR SRM、IBM Spectrum Control等。

(2)全开源软件,主要限制如下:

• 产品提供的功能有限

• 使用出现问题无技术支持

• 产品兼容性有限

代表产品:来自捷克的一款开源产品。

基于以上限制,我们考虑开发一套专门的存储统一管理平台,主要通过对存储系统的告警、容量、性能和配置等数据进行采集,经过分析和处理后,以数字化、可视化的管理方式对外呈现,方便存储运维和管理人员进行分析与决策。

三、 管理需求

在存储运维管理工作中,需要管理的传统存储设备主要分为光交和存储两大类。根据日常运维工作中的实际需要,我们总结了常见的管理需求,光交的管理包含监控、自动化运维以及配置等内容,存储的管理包括监控、容量、性能以及配置等内容。通过思维导图归纳整理如下所示:(图1)

图1 管理需求思维导图

四、 技术架构

1、架构设计

完全从零开始完整建设存储统一管理平台是一项长期而又复杂的工程。如何降低开发工作量,同时实现关键技术自主可控,考验着存储运维人员的智慧。兼顾这两个诉求,企业可以考虑采用业界主流开源组件+关键核心代码自研的模式来建设存储统一管理平台。基于以上考虑,规划设计了存储统一管理平台的架构,具体如下:(图2)

图2 存储统一管理平台架构

2、技术原理

在技术实现上,光交或存储均提供CLI或API接口,我们可以借助流行的Python语言,通过相关接口定时抓取光交和存储的信息,然后将告警和容量信息存入关系型数据库MySQL、性能数据存入开源时序数据库Influxdb,最后借助开源的Grafana对用户进行可视化呈现。

3、技术选型

在实际部署中,充分考虑到技术的先进性和维护的便利性,主要组件技术选型如下:

• 编程语言:开源语言Python,用于编写运行程序的语言;

• 关系型数据库:开源关系型数据库MySQL,用于存储告警、容量、配置等变动较少的数据;

• 时序数据库:开源时序数据库Influxdb,用于存储性能这类实时变化的数据;

• 前端呈现:开源可视化展示工具Grafana,用于以可视化的方式向用户展示存储信息。

五、 实践

架构和技术选型确定以后,下一步就是具体实现过程。为防止各厂商不同型号产品的高度耦合导致出现问题后定位分析困难,建议针对不同厂商、不同型号的产品设计不同的采集程序,实现各型号产品数据采集的微服务化。

我们以存储性能管理为例,详述具体实现过程。首先在存储上创建账号(考虑到操作的安全性,建议创建只读账号,可以防止误操作带来的影响),专门用于存储性能抓取。完整的流程图如下:

图3 存储性能管理流程图

程序启动时,首先会去运行CreatDB模块,检验数据库表是否在,如果存在则进行下一步;如果不存在则创建对应的数据库表。下一步将通过Login模块并行登录所有存储设备,抓取存储的性能数据信息,并将获取的存储性能数据通过InsertDB模块插入对应的数据库表中,最后通过Logout模块登出存储。由于程序开启了多线程并发技术,因此整个过程仅需几秒就可以完成。

最后,用户只需在Grafana上按照规则配置好对应的面板,就可以通过Grafana查看到对应的存储性能数据。

图4 存储性能效果图

如上是在Grafana上展示的存储性能效果图,通过开源组件Grafana的自带功能,管理员可以选择时间段对比查看所有存储的整体性能情况,找到指定时间段内性能压力最大或者最小的存储设备,也可以查看某台存储的性能数据,分析该存储是否存在性能瓶颈问题。

六、结语

通过存储统一管理平台,实现对光交和存储设备的管理,可以极大的提高管理效率,提升存储运营管理的数字化水平。下一步我们将针对存储管理平台中的已有数据,继续深挖其潜在价值。

最后需要讲的是,存储管理平台的建设不是一朝一夕的事情,需要在长期的运维实践中不断丰富完善,统一管理平台也没有普适性,各单位还是要依据本公司的实际情况,开发适合自身情况的管理平台。

请使用浏览器的分享功能分享到微信等