VMware Virtual SAN实战
上QQ阅读APP看书,第一时间看更新

章节概要

本章的核心内容如下:

❑ 软件定义数据中心;

❑ 为什么要SDDC;

❑ SDDC的核心组件;

❑ Virtual SAN在SDDC中的定位。

软件定义数据中心(Software Defined Data Center, SDDC)是在虚拟化领域中最早由VMwrae公司于2014年初提出来的概念。它是由计算虚拟化、存储虚拟化、网络虚拟化、自动化、一体化监控等系列模块结合在一起,形成的一个All-in-One的大型自动化云计算数据中心。

根据最近这2年全球科技发展动态来看,SDDC无疑是未来数据中心的趋势,同时从提出SDDC概念的VMware公司的各种动向来看,无论是从VMworld大会展示的主题,还是从VMware公司的产品构成等多个方面的综合,都表明了它的未来发展趋势。目前,VMware公司应该说是为数不多的能够用自己一家的产品实现一个完整的软件定义数据中心的公司。

为什么需要软件定义数据中心?业务系统越来越多,x86设施越来越复杂,企业针对系统、数据、安全、响应速度等方面的需求越来越高,企业数据中心已经发展到需要一个强大的、具备创新性的产品架构出现,而SDDC很明显满足这个条件。

软件定义数据中心给客户带来的优势主要有下面几个方面:

❑ 为用户交付统一的平台;

❑ 实现融合式业务与办公交付;

❑ 强大的安全性与控制能力;

❑ 大幅度缩减企业新业务上线的时间。

❑ 可以轻松实现Public Cloud与Hybrid Cloud接口。

软件定义数据中心的结构如图2-1所示。

图2-1

2.1 VMware软件定义数据中心产品清单

归纳起来,VMware公司的软件定义数据中心产品如下:

❑ vSphere;

❑ VSAN;

❑ NSX;

❑ vRealize Automation Center;

❑ vRealize Operations Manager;

❑ Horizon。

从最基础的构成来看,上述产品中,最基础、最核心的产品是前5个。接下来将介绍前5个产品的结构和特征。

2.1.1 vSphere 计算虚拟化

在SDDC的概念中,通常会将vSphere定义为SDC(Software Defind Compute)。在VMware公司的产品线里,它有着绝对的基础性、中心化地位,VMware公司几乎全系列产品都围绕着vSphere展开,vSphere的存在,是VMware得以称霸x86虚拟化领域的重要支撑点。

vSphere从发布至今经历了超过50个版本,从1.0到今天的6.0,有着长足的发展和变化,图2-2所示为vSphere的产品结构形态。

从图2-2中可以看出,vSphere的核心工作模式就是通过虚拟化技术允许在一台强劲的物理服务器上运行多台虚拟机,实现资源最大化利用,帮助企业从空间、电力、制冷和运营成本等多方面长期节省资源开销。

图2-2

作为基础服务器虚拟化产品,它有着强大的稳定性、功能性、可用性、可扩展性等一系列好处。由于本书重点阐述的是Virtual SAN,所以就不再过多地夸赞它了。

友情提醒:对vSphere产品部署不太熟悉的读者,请快速跳转到5章,第5章专门介绍如何安装部署vSphere相关组件产品。

2.1.2 Virtual SAN存储虚拟化

Virtual SAN的出现补齐了SDDC的最后一块短板,也算是开启了存储虚拟化的大门。在SDDC中,对Virtual SAN的定义就是SDC(Software Defined Storage),它利用高速闪存与机械盘或全闪存结构的技术方式,第一次可以与中端,甚至部分高端存储在性能上正面对抗。而在可靠性上,与虚拟化环境相比甚至更胜一筹。Virtual SAN的结构示意图如图2-3所示。

图2-3

在Virtual SAN中,一切都是对象,核心对象就是虚拟机和虚拟机中的相关文件,正是对这些文件的处理,完成了Virtual SAN的文件承载。结合类似分布式RAID技术,对虚拟机进行数据安全保护,再结合条带化技术实现按需对象切片,高性能输出。

有了Virtual SAN,就可以完成折衷性价比的VMware软件定义数据中心超融合架构设计的数据承载模块了。

2.1.3 NSX网络虚拟化

NSX是VMware公司将2012年收购的Nicira公司与VMware自身针对网络虚拟化部分的积累结合起来,推出的网络虚拟化产品,也是目前全球范围内为数不多的具备商用能力和商用案例的纯软件网络虚拟化解决方案。

NSX包含网络交换、网络安全、分布式路由、VPN、Load Balancer等功能,可以实现Software Overlay。同时,结合Micro-Segment技术,可以帮助企业在纯软件环境中实现大二层的复杂网络环境。

它的架构组件包含以下几个关键性的组件:

❑ NSX Manager;

❑ NSX Controller;

❑ NSX vSwitch;

❑ NSX Edge;

❑ Distributed Firewall;

❑ Distributed Logical Router。

上述组件结合起来,就可以从功能上实现对于下列业务与物理层的解耦:

❑ Logical Switching:从物理网络层面解耦的大二层网络。

❑ Logical Routing:在虚拟网络之间实现跨网段数据转发。

❑ Logical Firewall:分布式虚拟防火墙功能,有较高的性能输出。

❑ Logical Load Balancer:支持软件实现应用程序层面的负载均衡。

❑ Logical Virtual Private Network:Site-to-Site的VPN功能。

❑ VMware NSX API:通过REST API与包含vRA、OpenStack之类的云计算管理平台结合。

❑ Service Composer:帮助在虚拟基础架构环境中部署和分配网络与安全到应用程序。管理员可以将相关的服务映射到对应的安全组。

NSX与vSphere环境的基础结构示意如图2-4所示。从图中可以快速了解到NSX网络虚拟化产品与vSphere的管理。

图2-4

NSX作为网络虚拟化产品,既可以单独与vSphere结合,也可以融合在SDDC环境中,作为其中的SDC(Software Defined Network)组件部分,为SDDC提供无缝的软件融合式网络。

截止到本书定稿时间,NSX最新版本是6.2.0,如果有读者对NSX实现SDN的技术感兴趣,基础部分可以查询虚拟人的官方网站去查看同样是笔者编写的NSX系列基础文档。当然,如果更多人感兴趣,未来,也可以考虑针对NSX单独编写一本书。

2.1.4 vRealize Automation Center自动化云平台

vRealize Automation Center的前身是VMware从Dell公司收购的CAC产品,VMware公司收购CAC后,将其更名为vCAC,全称为vCloud Automation Center,用作VMware公司私有云自动化管理平台。截至本书完稿时,vCAC最新版本是7.0,并且从6.0开始,由vCloud Automation Center更名为vRealize Automation Center。因此,vRealize Automation Center在VMware的SDDC解决方案中,承载的是自动化的部分功能。利用它,可以在SDDC中轻松实现如下功能:

❑ Infrastructure as a Server;

❑ Application as a Service;

❑ XaaS;

❑ Daas。

vRealize Automation Center通过与vCenter Server的有机组合,可以轻松将vSphere、NSX、VSAN等功能纳入自己的统一协作空间中,再结合自动化的Worflow (vRealize Orchestrator),就可以展现Self-Service Portals与自动化动作流程。

借助vRealize Automation Center,用户可以轻松处理全自动化的工作流程、新的虚拟机请求、审批、生命周期管理等工作,再结合ITBMS组件,即可输出企业的SDDC财务报表信息。而这一系列的特征,正是云计算的基本特征。因此,基于这样的认知基础,我们通常会把vRealize Automation Center称为VMware公司的私有云计算管理平台。

vRealize Automation Center可以管理的对象包含但是不限于vSphere(SDC),它还能统一管理下列产品:

❑ vCloud Director;

❑ OpenStack;

❑ Citrix XenServer;

❑ KVM;

❑ SCVMM;

❑ Hyper-V;

❑ UCSM;

❑ iDRAC;

❑ NetApp Flex Array;

❑ AWS;

❑ vCloud Hybrid Service。

因此,从功能与扩展管理能力的角度看,它是足够强大的。它还可以与VMware公司的vCloud AIR产品连接展现更多功能。当然了,对于企业用户而言,利用它来构建一个SDDC会更重要一些。vRealize Automation Center所能做的事情如图2-5所示。

图2-5

当前,最新版本的vRealize Automation Center是7.0,但是如果要生产环境的部署与应用,还是建议使用vRealize Automation Center 6.2.1。

至此,SDDC的一个完整产品组件就全部呈现在大家的面前了,也就说,利用vSphere、VSAN、NSX、vRealize Automation Center可以为企业实现一个最基础的SDDC环境。

2.1.5 vRealize Operations Manager统一监控

有了一个完整的SDDC环境之后,就意味着企业有了一个完整的云计算平台。但是,由于这个平台由多个组件构成,每个组件的工作状态、统计信息、是否存在性能问题、是否出现故障问题,等等一系列的问题,都需要有很好的处理方案,这样才能够为企业交付高效运维能力。

VMware公司针对这个需求的答案是:vRealize Operations Manager(vROPS),当前最新版本是6.1.0。利用vROPS,可以轻松实现针对下列产品的统一监控与报表生成。

❑ vSphere;

❑ NSX;

❑ Virtual SAN;

❑ vRealize Automation Center;

❑ Horizon;

❑ Database。

除了上述产品外,vROPS还可以针对整个SDDC环境提供一个统一的环境硬件监控。自动化的报表能力和自定义的报表能力在SDDC运营中是非常必要的。

记得早在2013年左右虚拟人举行一年一度的技术沙龙时,笔者在沙龙上就阐述过未来的运维要求是怎样的。当时提出的超级运维概念,实质上针对的就是SDDC的运维能力。传统的数据中心管理技能在未来已经不再实用,在自动化的SDDC环境中,要求工作人员至少具备理解和使用SDDC核心组件的能力。同时,要求工作人员对于vROPS这样的统一监控平台具备轻松驾驭、灵活输出的能力。vROPS的界面Dashboard可以比较灵活地展现出当前整体SDDC的状态,如图2-6所示,Dashboard窗口中的Health、Risck、Efficiency分别代表当前SDDC的状态。

图2-6

图2-7所示的Dashboard则是进一步深入展示了vROPS这个统一监控平台强大的整体环境状态把控能力。通过图2-7中的Risk选项可以很轻松地知道当前存在哪些可能的问题。通过Efficiency选项可以看到当前系统的运行效率,在vCPU、vRAM和Disk几个方面的利用率情况,当前的资源分配是否存在浪费,当前环境是否存在可回收的资源部分:

图2-7

vRealize Operations Manager作为统一监控平台,它是强大的。虽然它的部署不太复杂,但想要真正用好,还是需要很多知识储备的。因此,笔者也会考虑根据需要专门针对vRealize Operations Manager的深度使用方式撰写一本关于这个产品的书籍。

2.1.6 Horizon 桌面虚拟化

Horizon在SDDC中不是必选项,因为它帮助企业实现的功能是桌面虚拟化,而桌面虚拟化的概念放到云计算平台中之后,就变成了现在很多云计算服务商所说的云桌面或桌面云。

Horizon有很多版本,其间的名字、功能也是几经变化,由最早的VDI变成View,再到Horizon View和目前最新的Horizon。名字的变化不但意味着版本的更新,也意味着不断增强的性能和不断新增的组件。截止到现在,最新的Horizon版本是6.2,在Horizon 6.2中,存在如下3个大的产品组件:

❑ View;

❑ Mirage;

❑ Workspace。

如图2-8所示,Horizon中包含了上述三个组件。

图2-8

这3个组件的用途分别如下:

❑ View用于帮助企业实现虚拟桌面,它的竞争产品是Citrix的XenDeskop和微软的VDI。当然,现在还多了一些基于KVM解决方案的国产桌面虚拟化解决方案,例如华为、H3C等公司的产品。

❑ Mirage是企业桌面系统的统一管理平台,可以帮助企业实现针对桌面系统的统一管理,这个统一管理包含统一升级、统一打补丁、统一部署软件、统一安全保护等功能,也可以实现远程分支机构统一桌面的高效率、低成本管理。

❑ Workspace用于存放虚拟桌面与虚拟应用程序,某种程度上比较类似于企业的内部虚拟桌面逻辑空间归类工具。登录Workspace,就可以轻松实现桌面应用虚拟化与桌面虚拟化的访问和展示。

图2-9为一个接入了类似vRealize Automation Center的云计算管理平台的Horizon环境,这也是一个相对成熟、可商用的结构。

图2-9

上述内容结合起来,可以构建一个强大的SDDC,而上述组件分开存在,也可以为企业按需提供不同层面的服务输出。

VMware公司正是利用上述产品组件帮助企业实现了一体化SDDC的交付。当然了,在SDDC中还可以按需纳入更多其他的第三方产品。例如,Veeam Backup &Replication用来做数据安全备份、Site Recovery Manager用来做数据中心异地容灾、Stretched Cluster用于实现双活存储等。正因为可以灵活地增减不同的组件,所以软件定义数据中心才会有较大的吸引力。因为做这些事情都不需要过多考虑Hardware Compatibility的事情,基本实现了软件与硬件的分离。

2.2 软件定义数据中心之软件定义存储

从软件定义数据中心的字面意思就可以看出,这要求用纯软件来实现。而一个数据中心涉及的主要组件就是计算部分、网络部分、存储部分、安全部分等。要实现软件定义数据中心就必须存在软件定义存储。

只有利用软件定义存储,才可以灵活实现高性能、高弹性、硬件无关和分布式等软件定义数据中心需要的基本特征,从而将所有的存储对象软件化,按需实现不同SLAsSLA是Service Level Agreement的缩写,表示服务等级的意思,通常用来形容业务可靠性或可用性级别。的业务等级交付。

当前,全球范围内的软件定义存储——对象存储的主要产品有下列几款:

❑ 从OpenStack项目衍生出来的Ceph分布式存储项目;

❑ Swift存储;

❑ Virtual SAN;

❑ VVoLS;

❑ Datacore;

❑ Storage Virtual VSA。

利用这些产品,都可以构建一个对象存储,而且都可以实现软硬件分离的软件定义存储的基础特征。但是构建一个SDDC并不是说实现了软硬分离之后,就可以了。还有很多问题需要考量,尤其是不同产品组件之间的配合选型问题。

2.2.1 构建软件定义数据中心的概念

构建软件定义数据中心的方式有两种,一种是用厂商封装的成型软件定义数据中心产品,如VMware公司的EVO:RACK、EVO:RAIL之类的。这类产品内置了一个BOX,可即插即用。另一种方案是自行DIY一个软件定义数据中心,这种方式可以借助开源计算虚拟化、网络虚拟化、存储虚拟化之类的方案来实现,不过这样做的技术成本和后续问题实在数不胜数了。因此,通常都不会选择这种方式,这种方式对于提供方和用户方来说都是灾难。

目前,笔者推荐的解决方案是利用VMware公司完整的产品线自行DIY软件定义数据中心,而2.1节阐述的组件是其中的关键,这些组件各自的用途是:

❑ vSphere负责SDC部分。

❑ VSAN或VVoLS负责SDS部分。

❑ NSX负责SDN部分。

❑ vRealize Automation Center负责Automation部分。

❑ vROPS负责统一监控部分。

利用这些产品的组合,就可以形成一个初具雏形的软件定义数据中心环境。这个环境虽然没有统一的管理界面可用,但是绝对具备软件定义数据中心的完备特征,用户如果需要一个统一的UI,则完全可以开发一个Home Page,利用这个Home Page分别调度相关组件,即可完成从基础的软件定义数据中心统一管理整个数据中心相关组件。

2.2.2 软件定义存储选择

从VMware公司的软件定义存储概念来看,它将软件定义存储定义为两种类型:VVoLS和Virtual SAN。

这两种VMware SDS存储解决方案的结构示意如图2-10所示,图左边部分是Virtual SAN,右边部分是VVoLS,两者可以共存于vSphere平台中。

图2-10

2.2.3 VVoLS技术特征

VVoLS(vSphere Virtual Volumes)是针对共享存储的一种软件定义存储技术。它通过对EMC、NimbleStorage、NetApp、HITCHI、DELL之类的存储产品公司结合VMware公司提供的VASA接口类型来实现软件定义存储功能,允许虚拟机直接对存储进行操作,跳过VMFS,变相实现业务与硬件的分离。VVoLS的结构示意图如图2-11所示。

图2-11

VVoLS的技术特色如下:

❑ VVoLS利用Storage Container(SC)来实现跨厂商的虚拟存储池。

❑ Protocol Endpoint(PE)负责处理虚拟机IO,每个存储设备对应一个PE,虚拟机的IO发到PE后,由PE定向到对应的VVoLS。

❑ Storage Provider(SP)负责实现vCenter与存储设备之间的通信。这是一个VMware公司提供的标准接口,由存储厂商在存储端实现,利用VASA (VMware vStorage APIs for Storage Awareness)接口与vCenter之间建立存储配置通道。VVoLS可实现虚拟机到存储设备的双向通信,而在这之前只能实现单向信息流通信。

利用VVoLS技术最终可实现VM-Aware存储的模型,进而可以轻松实现虚拟机快照等业务。

VVoLS的应用优势如下:

❑ 可以简化存储的运维,轻松实现快速调整存储。

❑ 可以借助云计算自动化工具进行自动化调配。

❑ 可以轻松利用Array本身的功能。

❑ 可以执行动态配置。

❑ 可以提供虚拟机级别的颗粒度控制。

❑ 支持与策略结合的自动化合规性保障。

❑ 可以有效提升容量利用率。

但是,这种VVoLS技术对存储的要求是很高的,简单说就是要求物理存储支持VVoLS-Aware,普通的存储是不行的。因此,虽然它是一个很好的概念,但是这个概念的实现成本太高了。

2.2.4 Virtual SAN技术特征

Virtual SAN是另一种软件定义存储的选择。低成本、高效率、高性能输出、高扩展能力等多方面的综合功能输出是它最大的价值体现。如果说VVoLS方案在成本、准入门槛等方面都更高,那么Virtual SAN则是有着下列几个方面的优势:

❑ 超级简单的配置;

❑ 超级简单的UI提供;

❑ SPBM策略驱动;

❑ 超强弹性;

❑ 超高性能输出;

❑ 无缝整合vSphere;

❑ 无重复化固定资产投资;

❑ 无中断扩容;

❑ 运营人员超易入手。

一系列优势的结合,都充分证明了一点:如果要选择VMware公司的SDDC解决方案,软件定义存储的最佳选择就是Virtual SAN。Virtual SAN基础概念、结构和用途在第1章已经初步介绍了,这也是本书的核心内容。

利用Virtual SAN构建VMware版本的DIY SDDC方案,只需要购买Virtual SAN的License,然后将企业现有的vSphere平台升级到5.5 Update 1以上的版本即可。而要构建一个具备生产能力、生产可靠性的软件定义存储产品,自然是让vSphere升级到vSphere 6.0,至少选用2.0版本的Virtual SAN来完成软件层面的准备。

之所以这样做,是因为要想改造企业现有的环境,完成软件定义存储的准备工作并不需要大动干戈,只需要为服务器增补合适的闪存卡、万兆网络、HDD磁盘即可。

再结合2.1节对于Virtual SAN的描述,即可轻松明白为何在VMware DIY SDDC的构建中选择Virtual SAN作为软件定义存储组件了。

2.3 为软件定义数据中心准备Virtual SAN

为软件定义数据中心准备Virtual SAN这个软件定义存储在第3章会详细阐述。这里只是简单说明。准备Virtual SAN的基础要求如下:

❑ 3台以上的x86服务器;

❑ 3块以上闪存设备;

❑ 3块以上HDD设备;

❑ 兼容Virtual SAN的I/O Controller;

❑ 最小千兆网络,最佳万兆网络;

❑ vSphere 6.0服务器虚拟化。

2.4 本章小结

关于软件定义数据中心的概念,本章并没有从完整技术层面完善每一个组件的功能、用户描述和初始化配置。毕竟,如何构建一个企业软件定义数据中心不在本书的范畴。

本章的主要内容是软件定义数据中心的存在方式、组件构成和SDS在SSDC中的定位。

本章阐述了SDC、SDS、SDN、Automation、vROPS以及Horizon在SDDC中的用途,也为笔者计划后续出版书籍《利用VMware产品实战构建企业级SDDC》开个小头,让读者对SDDC的大概念构成和用途有一个前导性的了解。

本章也重点阐述了VMware SDS产品中VVoLS和Virtual SAN的技术特征和部分技术细则,尤其详细介绍了VVoLS。而对于Virtual SAN本书就是围绕它展开的,所以本章除了它的基础结构外,其他都是泛泛而谈,更多详细内容,请看后面的章节。