2.2.2 SNIA之存储标准化建议:SMI-S

有时,会有人误以为软件定义存储就是类似IBM SVC、EMC VPLEX这类基于网络的存储虚拟化,而实际上后者只是存储虚拟化的一部分,是软件定义存储非常小的一部分。

基于网络的存储虚拟化,能够跨越异构的磁盘阵列,在更大的范围,如数据中心内,形成一个大的存储资源池,统一分配和监控来自不同存储厂商的存储资源。

当我们讨论池化,也即异构存储之间的管理的时候,一定会涉及存储标准化,只有当大家开放接口并遵循共同的标准(也即规范)的时候,也就是用相同的“语言”对话时,才有可能被调用、被管理。

随着用户的数据不断增加,为了不被单一厂商锁定,规模较大的用户的存储网络往往包含了来自多个存储厂商的外置磁盘阵列,每个阵列都有自己的存储管理软件,这些阵列之间缺乏互联互通,管理复杂度增加。为了解决这一个问题,2002年,SNIA(全球网络存储工业协会)提出了存储管理建议规范SMI-S(Storage Management Initiative Specification),希望在存储网络中的存储设备和管理软件之间提供标准化的通信方式,从而使存储管理实现厂商无关性,使得存储管理系统具备鉴别、分类、监控和控制物理及逻辑资源的能力,提高管理效率,降低管理成本,促进存储的发展。

SMI-S是一种中间件性质的规范,定义了存储管理软件和受管对象之间的交互机制。它提供了多种特性以简化SAN的管理。首先,在SMI-S标准中定义了统一的数据模型,使用基于Web的企业管理(Web-Based Enterprise Management, WBEM)技术和公共信息模型规范(Common Information Model, CIM), SMI-S的代理可以与交换机、磁盘阵列等各种支持CIM的设备进行交互,获取其管理相关的数据并返回给请求方。使用SMI-S可以免除设计管理数据传输机制的麻烦,对各种设备和组件直接进行带内或带外的管理,甚至两者并用。SMI-S还提供了基于HTTP的CMI-XML传输机制,以增强适用性。

SNIA对于SMI-S标准寄予了很高的期望,跨越的版图非常宏伟。从图2-6(摘自Storage Management from SMI-S to Management Frameworks),可以看出来,它希望做到,存储管理软件能够识别磁盘阵列、光纤交换机、IP交换机、磁带库、FC HBA卡、iSCSI HBA卡等各种各样与存储相关的设备,并通过存储管理服务,自动发现、部署和配置存储资源。

图2-6 SNIA SMI-S

SMI-S标准发布以后,得到了大多数主要存储供应商的支持,截至2015年,已经超过500个产品支持SMI-S标准。最新的标准是SMI-S v1.6.1,在SNIA官网能够下载到详细的规范,规范包括8篇文章,其中的一篇Storage Management Technical Specification, Part 4 Block Devices,长达1144页。仅仅关于Automated Storage Tiering的描述就长达77页。

在推行这一标准的过程中,SNIA也曾直言不讳地提到了自身面临的问题:

1)SMI-S标准走向市场的时间漫长。

2)存储厂商研发新特性的过程中,规范的确立花费1年,厂商实施再需要6个月(笔者持怀疑态度),用户方接受并实施需要2年甚至遥遥无期。

3)需要加速标准走向用户的过程。