VMware SDS之十: VMware SPBM之SolidFire篇

【编者Peter Ye 按】

本篇文章的主体部分是杨峰介绍的SolidFire。


在进入主题之前,首先分享一个好消息:

国内第一本专门阐述VMware软件定义存储的书籍 - 《VMware软件定义存储:原理剖析和设计指南》,已经在京东、China-Pub (互动出版网) 等网站上预售了(有些店铺的到货时间可能得到2月5日左右),这本书籍是由4位VMware资深专家(臧铁军、赵杰、苏旭和我)联合翻译的,其中臧铁军和赵杰都是VMware全球CTO大使成员,苏旭是VMware中国少有的对VMware云管理、vSAN、桌面虚拟化都有深入了解的复合型专家之一。大家只要在上述购书网站里键入关键词:VMware 软件定义存储,即可搜索到。



好,言归正传。

2017-12-03,微信公众号“乐生活与爱IT”发表的VMware SDS之九,也即《VMware SDS之九:  VMware软件定义存储鲜为人知的另一部分》,我们介绍了VMware SPBM之NimbleStorage和3PAR篇 。今天将要介绍VMware SPBM之SolidFire篇。


SolidFire是一家全闪存阵列的存储厂商,成立于2010年,其存储控制器基于标准的x86服务器,最大可扩展到100个节点;

2015年12月,SolidFire被NetApp收购;

2017年6月,NetApp基于SolidFire推出超融合一体机。


大概在2012年或2013年,我对SolidFire就有所耳闻。当时,研究涉猎到OpenStack块存储的时候,记得只有4家存储支持Cinder接口,分别是NetApp,Nexenta,SolidFire和另外一家(忘记了厂商名)。后来,在我的印象中,SolidFire也是最早支持VMware SPBM的存储厂商之一,而且它的QoS做得不错。


杨峰在NetApp大中华区负责SolidFire,之前曾是EMC Isilon的技术大拿,在存储行业内积累了丰富的经验。下面将分享他对于VMware SPBM(对应的技术标准是Virutal Volumes,简写为VVols)与SolidFire结合的心得。文章的后面部分有备注:SolidFire是什么?


---Begin---


一、什么是VVOLS


关于VVols,参见Peter Ye 的微信公众号 “乐生活与爱IT”专栏中的以下文章:

1、2015-09-27 《SDS自动化之实现 – 存储策略之发展 & SPBM是什么(含Virtual Volumes大全)》


http://mp.weixin.qq.com/s/0BAblfdR86HHdAnfgxa68A


以及


2、2017-12-03《VMware SDS之九: VMware软件定义存储鲜为人知的另一部分》 


http://mp.weixin.qq.com/s/t4oc4ADzOU9K5eI10yiAeA


摘要介绍一下VVols的重点概念:


第一、VVols。


VVols全称Virtual Volumes(虚拟卷), 是VMware用来替换已有NFS和VMFS的全新一代虚拟化平台存储架构,与原有存储方式不同,VVols通过API,允许虚拟机直接与存储进行读写交互,而无需在虚拟化层创建任何文件系统,文件系统由虚拟机直接创建。在部署VVols时,存储只需要映射给虚拟化平台一个或多个Storage Container(存储容器)并限定容量,而无需实际划分存储容量,当创建虚拟机时,每个虚拟机会在存储端自动生成卷(通常一个虚拟机需至少3个卷),用户可以在vCenter界面直接对这些存储卷进行备份,恢复,克隆,数据容灾等操作并通过SPBM设定相应的自动化策略,结果就相当于直接对虚拟机进行类似的操作。负责管理通讯和自动化策略的模块是VASA Provider,由每个存储厂商提供,负责进行实际数据交互操作的称ProtocolEndpoint(简称PE),类似于目录挂载点,实际虚拟机的数据会经过PE代理转发给真正的存储卷。

 

 

第二、VMware SDS平台。

VMware SDS平台包括控制管理平面/Control Plane -Storage Policy Based Management (缩写为SPBM, 基于存储策略的管理),和数据平面/Data Plane。而数据平面包含三大部分:vSAN、Virtual Volumes(简写为vVols)和云存储。随着虚拟化和云计算的逐渐普及,存储自动化的需求会越来越迫切,这样软件定义存储业界最成熟的产品SPBM将逐渐成为商业软件中事实上的标准。



第三、SolidFire提供的两种数据平面访问方式。

SolidFire对VMware环境提供两种数据平面访问方式,一种是通过原生iSCSI协议支持,直接被ESXi挂载为datastore,这种方式是最传统的方式,将会有其它文章专门进行阐述;另外一种方式则原生支持VVols方式。这两种数据平面访问方式最大区别在于QoS实现的粒度不同,原生vSAN支持针对数据卷做QoS,而原生VVols方式则可以对VM/VMDK粒度做QoS设置。



本文将详细介绍SolidFire提供的VVols访问方式及其实现。


二、SolidFire如何与VVols结合


SolidFire提供的VVols整体架构图如下(目前SolidFire操作系统Element10.0并不支持VVols 2.0,在后续版本中会实现):



通过VVols,SolidFire看起来像一个原生虚机自感知(VM-aware native)的存储系统,可以为每个VMDK自动创建可设置QoS的卷,使得vSphere获得跟Openstack Cinder驱动类似的功能;用户可以在vCenter界面直接对这些存储卷进行备份,恢复,克隆,数据容灾等操作并通过SPBM设定相应的自动化策略,结果就相当于直接对虚拟机进行类似的操作。

 


 

2.1 管理平面


SolidFire提供的控制管理平面整合了以下三个功能:

第一、  SolidFire VASA插件,通过8444端口对外提供访问。VASA插件在vCenter/ESXi和SolidFire之间提供带外通讯方式。通过SPBM策略与vCenter之间进行交互。在SolidFire集群内由cluster Master服务节点提供VASA响应,节点之间提供高可用性保护。


第二、  整合SolidFire VASA插件后,在vCenter内可以针对SPBM策略的CONFIG和DATA VVolsS 定义QoS,对QoS的更改实时生效,并且跟vSphere tags绑定



在多种负载,高度自动化应用环境中强烈建议使用vSphere Tags功能,此功能可以应用于VMs、datastores和其它inventory objects;  vSphere tags功能尽管是可选的,但是非常推荐跟SPBM结合使用,以便更好地实现负载均衡功能。其中SPBM相当于告诉VMware使用QoS功能,而vSpheretags则相当于告诉VMware在哪个inventory objects或者datastore上使用该功能。



2.2 数据平面


SolidFire的VVolsS的数据平面提供了协议端点(Protocol Endpoint),存储容器(storage container)和VVolsS datastore等功能。

第一、VVolsS服务是通过Protocol Endpoints(PEs)发现的,每个SolidFire集群提供一个PE,SCSI命令不会直接发到PE端;PE是一个512字节的设备,VVolsS不受上限256个LUN的限制(在ESXi6.5中是512)。


第二、存储容器可以通过SolidFire GUI界面或者直接通过API创建,尽管是容器,但是却具有整个集群的所有功能,而且随着集群规模的扩展,其能力也随之扩展。每个用户可以使用一个或者多个容器,并提供完善的报表功能。


第三、VVolsS Datastore跟vCenter传统datastore类似,区别在于可以选择所属存储策略(SPBM);另外在VVolsS datastore之间移动虚机相当于虚机拷贝。


2.3 SolidFire提供VVolsS数据平面的具体步骤

第一、在SolidFire图形管理界面上(GUI)激活VVolsS功能,此功能一旦激活就不能关闭。


第二、  在vSphere中注册VASA插件


第三、在SolidFire上创建存储容器


第四、  创建VVols datastore,每个SolidFire集群最多支持8000个VVols。



第四、  创建SPBM策略


第五、  创建vsphere tags (这个有特色)


如果vCenter inventory有多个datastore,就可以尝试采用vsphere tag来控制虚机创建在哪个datastore上。

1.   在vcenter中,找到Tags&Custom Attributes


2.   选择categories标签

3.   选择new category icon

4.   配置如下相关内容:

a.   在categoray name中填写名字“SolidFire”

b.   在Description中填写描述

c.    在Cardinality选择“Many tags per object”

d.   在Associable Object Types中选择Datastore和Datastore cluster(如果使用datastore clusters)

e.   点击OK

5.   选择Tags标签

6.   点击New Tags

7.   在如下New Tags对话框中,输入如下信息:

a.   在Name中输入Tag名字

b.   在Description中输入描述

c.    在Category中选择刚才创建的“SolidFire”类

 

d.   点选OK


8.   重复以上步骤创建更多vsphere tags.

 



另外可以使用SVMotion功能可以将虚机从VMFS迁移到VVolsS上,或者直接在VVolsS datastore上创建虚机。

3.4 在SolidFire的VVolsS数据平面上部署虚机

第一、创建虚机到选择存储步骤:

第二、选择不同的SPBM策略,每个策略对应不同QoS设置。


2.4  在SolidFire的VVols数据平面上部署虚机


第一、创建虚机到选择存储:


第二、选择不同的SPBM策略,每个策略对应不同QoS设置。



三、总结

VMware VVols降低了存储管理负担,SolidFire提供了非常强大的对VVols功能的支持,尤其是基于VVols可以实现强大的虚机粒度QoS功能。SolidFire和VVols二者的充分结合,将大大提高虚拟化平台管理水平。


下表是SolidFire提供的VVols方式和vSAN或者VMFS方式的对比:


但是管理员在部署VMware VVols之前一定要仔细规划,检查现有环境中SolidFire的配置,使得SolidFire发挥其优势,并提供高可用性服务是非常重要的。

此外,一定要审核传统数据保护规划,一旦VMware VVols充分利用了SolidFire提供的诸如数据压缩、快照以及克隆这样的特性,VMware VVols的功能以及总体优势就完全体现出来了


四、备注 - SolidFire是什么?

SolidFire是NetApp于2016年收购的一家分布式全闪存储产商,并购后,被NetApp整合为一条新产品线,目前被称为Cloud Infrastructure Unit,主要面向下一代数据中心建设。SolidFire以其非常独特的五大功能在全闪存储产品中独树一帜,目前市场上并没有跟它对标的产品。

  1. 1.1五大功能

SolidFire目前是软硬一体的产品,其操作系统名为ElementX,除了NetApp自己的硬件之外,目前只跟思科一家硬件有绑定。其整体架构图如下:


ElementX软件具有独特的五大功能,分别介绍如下:



首先,横向扩展;SolidFire是真正做到基于分布式的全闪block存储,其横向扩展性可以从四节点起配,最大扩展到100个节点(其它友商的全闪产品最多能够支持16个节点就已经达到上限)。因为每个节点都提供容量和IOPS性能,因此添加节点就可以使得容量和IOPS同时获得增加,当然减少节点也不会影响系统正常运转。前后端网络统一采用万兆接口,对外提供iSCSI接口,并通过千兆网络提供管理功能。


其次,性能保障;QoS功能是SolidFire最大的特点,可以针对卷设置IOPS最小值、最大值和突发值,而且是根据不同数据块大小(4k,8k等等)来进行设置。很多其他厂商也支持QoS功能,但一般都是尽最大努力确保,而SolidFire则可以做到保证承诺(Guarantee)的QoS,甚至在发生故障情况下,也可以确保承诺的QoS。QoS功能可以很好地解决虚拟化环境中启动风暴带来系统不稳定和不同应用之间相互影响的问题。



SolidFire默认的QoS功能是可以对卷设置三种配额,如果跟VMware的VVOLS技术结合,则可以实现对虚机粒度的QoS功能。其实现方法在文中其他位置有详述。

 

第三、自动化管理;SolidFire提供丰富的API功能,可以嵌入到用户自开发界面,PaaS平台、容器编排器等架构中,实现无需运维监控的创建卷、扩容卷、删除卷、设置QoS等重要功能。SolidFire采用share-nothing的架构,运维人员无需做性能调优,分层,RAID规划,甚至故障恢复演练。


 

第四点,数据保证;SolidFire采用全局镜像的方式对数据进行保护。因此,应对节点故障和硬盘故障都是没有问题的。SolidFire还可以实现实时的复制(支持同步和异步),提供容灾能力。存储复制支持VMWareSRM,并且利用SIOC提供QoS功能(此功能目前只有SolidFire可以提供)。


 

第五点,在线压缩和重删;SolidFire因为是全闪存储(不支持各种磁盘混插),因此对于SSD盘的各种功能都可以加以利用,并且不能关闭,例如支持在线重删、在线压缩(也支持后压缩)和thin provisioning,根据不同应用类型支持5-10倍数据压缩率。



---End---



微信公众号平台"乐生活与爱IT"在目前阶段,主要是分享软件定义存储(SDS),及VMware vSAN相关的文章,偶尔也会分享虚拟化、云计算、大数据、区块链、人工智能等,甚至生活类的好文章。欢迎投稿,特别是原创文章。如果原创文章首次是在"乐生活与爱IT"发表,视质量和阅读量能获得20~500元的稿费。我的QQ号:9269216另外,如果还有赞赏收入,作者可获得60%


欢迎对SDS感兴趣的朋友,加入软件定义存储讨论 QQ群:122295009,可下载原创的一些文章,及其他有参考价值的文档。可直接搜索群号,或者扫描如下二维码:


同时,欢迎您加入 "开放讨论群-SDS&虚拟化" 微信群,并邀请其他对SDS和虚拟化感兴趣的朋友加入此微信群。可以通过添加如下管理员之一的微信号,建议添加管理员时,告知你的公司名和姓名,方便备注保存。

sdg8848

libo9538

yangzhuan

dts0103

欢迎您通过扫描关注微信公众号:“乐生活与爱IT”。


关注后,可以通过点击左下角的文章目录,通过输入三位数(记住!是三位数,目前第一位是0或者1)详细了解如何查看历史文章。


点击左下角“阅读原文”,可以看到《VMware SDS之九: VMware软件定义存储鲜为人知的另一部分》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值