TaoCloud SSAN+VMWare vSphere超融合解决方案
VSAN那么好,用户还会考虑其他存储方案吗?
VMWare vSphere是业界领先的虚拟化平台,VSAN是一种新型的分布式软件定义存储,vSphere+VSAN可谓是完美的虚拟化整体解决方案。但是,永远不要低估用户的诉求,只要存在较大的实际动力,在一些特定的场景下,用户就会主动寻求替换VSAN的存储解决方案。
TaoCloud SSAN就是其中一种绝好的替换VSAN方案。SSAN是典型的分布式块存储,SSAN+vSphere这两者计算存储超融合可提供一体化的虚拟化/私有云解决方案,同样可以帮助客户获得更好的高性能、高可用、扩展性、业务连续性、简化管理、更低的整体成本。
本文介绍TaoCloud SSAN + VMWare vSphere的超融合解决方案,重点阐述方案架构、系统部署、系统测试等内容,旨在为技术人员进行POC测试或系统实施提供参考。
一、VSAN简介
VMware VSAN,全称VMware Virtual SAN,简称VSAN。我们可以把VSAN看成是一种vSphere Storage,是vSphere虚拟机后端的企业级高性能存储。VSAN其实就是基于服务器端存储的共享分布式对象存储系统,可以用来取代vSphere后端的外置磁盘阵列。
以往vSphere后端的共享存储需要外置磁盘阵列,才能支持vSphere各种高级功能,如vMotion、HA、FT、DRS等。现在,在许多场景下,VSAN能够支持得更好,因为VSAN是内嵌到vSphere内核的高级功能,它使用和管理极其简单,可以完美地配合VMware SPBM实现基于存储策略驱动的自动化,以虚拟机甚至VMDK的颗粒度分配存储资源,还能与vSphere各种其他功能无缝地紧密地集成在一起。
VSAN把vSphere集群服务器各个节点内的SSD(固态硬盘)和HDD(硬盘),聚合在一起,构成一个共享的存储池。然后,再由存储池按照预先创建好的存储策略(用户不创建,则自动使用系统默认策略),分配存储空间给集群内的虚拟机使用。如果借助NAS插件,也可提供共享的文件空间给其他集群,或者物理机使用。
VSAN是一种基于软件的分布式存储解决方案,可在任何标准X86服务器上运行,只要I/O Controller (控制器)、SSD和HDD在VSAN HCL (Hardware Compatibility List,兼容列表)内,就可运行。VSAN的HCL非常丰富,因此VSAN为用户的选型提供了非常高的灵活性。
(注:以上VSAN简介引自微信公众号”乐生活与爱IT”,感谢Peter Ye)
二、SSAN简介
TaoCloud SSAN是典型的ServerSAN产品,遵循软件定义存储理念,可从X86服务器硬件平台的本地存储资源中创建基于服务器的SAN,以便按需提供具有弹性的、可扩展的存储容量和性能。SSAN采用去中心化的全对等Share-nothing架构,融入Scale-out分布式块存储技术,闪存优化技术,超融合技术,安全加固技术,构建高效、可靠、智能、弹性的存储计算平台。
SSAN采用Scale-out横向扩展存储架构,聚合X86服务器内的存储和计算资源,可最小从3个X86服务器节点动态扩展到上千个X86服务器节点,实现EB级的海量存储容量和大规模I/O并行的存储性能。SSAN支持动态的性能扩展,随着新存储节点的加入,整体性能持续线性增加。
SSAN遵循SDS软件定义存储的设计理念,充分整合各类 IT硬件能力(CPU、内存、总线、磁盘、网络等),以存储软件的高度优化和硬件资源最大化利用为目标,构建高效,智能、可持续升级的开放型软件定义存储系统。SSAN集合多种企业级数据服务功能(例如 QoS、自动精简配置和快照),可实现大规模、高可靠、高性能、超融合的存储应用,非常适合对可扩展性和存储性能要求不断提升的应用场景,如数据库、虚拟化、云计算等。
针对虚拟化应用场景,SSAN支持融合/超融合部署模式,每个SSAN存储节点同时也是计算节点,通过标准iSCSI接口实现高效的I/O数据访问。在SSAN中可配置高性能SSD介质,实现存储加速或自动分层部署。SSAN支持高效的快照机制,可支持无限数量的并发快照,非常适合虚拟化应用中的虚拟机批量创建/克隆等需求。
TaoCloud SSAN分布式融合存储差异性特点如下:
1)KISS简单系统,无中心对称式系统架构;
2)单卷最大256TB,卷级冗余策略,支持副本和纠删码;
3)iSCSI标准接口,支持多路径,易于对接各种应用系统;
4)支持FC和NAS(NFS/CIFS/FTP)协议导出;
5)单一集群支持多个存储池,支持物理和融合部署;
6)WebGUI管理系统,支持三员分立权限管理;
更多SSAN产品资料请从http://www.taocloudx.com 获取。
三、超融合方案
3.1、vSphere+SSAN超融合方案
VMWare vSphere是业界领先的虚拟化平台,可用于桌面云和服务器虚拟化。以前,vSphere采用传统的SAN/NAS外置存储,无论在性能、可用性、扩展性、管理性、成本等方面都是极大的挑战,实际应用中难以满足需求,还要承担极高的成本。当前,vSphere主推VSAN替换传统的SAN/NAS存储,VSAN内嵌于vSphere内核中,它是一种软件定义的分布式存储,可以更好地实现vMotion、HA、FT等高级功能和更高的性能,技术上堪称是vSphere完美的存储解决方案。
那么问题来了,VSAN那么好,用户还会考虑其他存储方案吗?答案是肯定的。永远不要低估用户的诉求,只要存在较大的实际动力,在一些特定的场景下,出于成本、管理、立旧、跨平台、本地化支持等诸多因素考虑,用户就会主动寻求替换VSAN的存储解决方案。以下是一部分源自实际的客户诉求,例如:
1)项目预算不足,VSAN成本太高,按VDI/CPU/Core许可;
2)VSAN对硬件配置和兼容性要求过高,SSD基本是必需的;
3)用户使用免费版的VMWare vSphere,不可能再购买VSAN许可;
4)作为独立存储替换传统SAN/NAS存储,VSAN无法作为独立存储;
5)同时支持多种虚拟化平台,比如KVM、XEN、OVM;
6)服务器以及存储资源立旧,VSAN对硬件要求高;
针对如上特定场景需求,TaoCloud SSAN就是其中一种绝好的替换VSAN方案。vSphere支持NFS/iSCSI/FC等外部存储系统,SSAN采用标准的iSCSI接口与其进行对接和融合。
TaoCloud SSAN是典型的Server SAN,借助于软件定义存储、开放式X86标准架构和高性能SSD存储介质,SSAN可以替换传统SAN/NAS存储,更好地满足虚拟化对存储的新需求。采用TaoCloud SSAN构建分布式块存储平台,提供可靠、高效的数据存储服务,可以实现模板数据、镜像数据、配置数据、业务数据的统一存储。SSAN可与VDI主机实现融合部署,进一步提升I/O效率比降低成本。根据性能、成本综合考虑,可配置全SSD模式或SSD+HDD混合模式。VDI主机与SSAN之间可通过iSCSI对接,SSAN的SSD Cache功能可实现在配置少量SSD的情况下实现很高的性能,高效的ROW快照及克隆功能可支持快速、批量的创建虚拟机。实践表明,TaoCloud SSAN可以很好地支持VMWare vSphere虚拟化平台,作为替换VSAN的一种绝好的选择。
SSAN支持物理分离和融合/超融合部署方式。简单地讲,物理分离即计算(这里指虚拟化)和存储各自独立部署,存储通过iSCSI/FC物理连接到计算节点。超融合是融合的一个子集,融合是指计算和存储部署在同一个节点上,相当于多个组件部署在一个系统中,同时提供计算和存储能力。融合系统中,计算和存储仍然可以是两个独立的组件,没有相互依赖关系。比如,TaoCloud SSAN+oVirt方案,一个节点的Redhat/CentOS系统上SSAN和oVirt物理融合,共享主机的物理资源。超融合架构最早由Nutanix提出,它与物理融合不同在于,重点以虚拟化计算为中心,计算和存储紧密相关,存储由虚拟机而非物理机CVM(Controller VM)来控制并将分散的存储资源形成统一的存储池,而后再提供给Hypervisor用于创建应用虚拟机。
这里采用SSAN+vSphere超融合架构方案,每台物理服务器既是vSphere计算节点,同时也是SSAN存储节点。每一个vSphere主机需要先配置一个虚拟机作为控制器(CVM),并将物理主机上的磁盘和网卡透传给CVM,所有CVM上部署SSAN并形成统一的存储池,用户虚拟机均创建在这个存储池上。超融合架构实现了计算、存储、网络等资源的统一管理和调度,具有更弹性的横向扩展能力,极大简化了复杂IT系统的设计,这种方案可以更好地提高资源利用效率,进一步降低了成本。方案优势如下:
1)弹性存储,支持在线快速扩容;
2)高可用存储,数据多副本,存储不中断;
3)高性能存储,闪存优先,本地I/O优先,高效的快照和克隆;
4)iSCSI标准接口,支持各类VDI平台;
5)超融合架构,进一步提升效率,降低成本;
6)支持定制化开发,满足个性化的资源管控需求;
3.2、方案拓扑
为了便于方案POC测试,这里采用3节点超融合架构方案,实际应用根据需求确定集群规模。SSAN采用副本方式保证数据安全性和可用性,副本策略可以根据实际需求灵活设置,POC测试采用三副本策略。存储介质推荐全SSD或SSD+HDD,网络互连建议10GbE,POC环境采用全SSD/万兆。测试拓扑如下:
3.3、硬件环境
硬件项目 |
配置 |
数量 |
提供者 |
X86服务器 |
E5 2620v2双路CPU; 64GB内存; |
3台 |
|
SSD |
Intel DC3700 400GB |
6块 |
|
万兆网卡 |
Intel X520-SR2万兆网卡 |
3块 |
|
万兆交换机 |
48口博科10GbE交换机 |
1台 |
|
万兆模块和网线 |
SFP+光纤 |
3套 |
3.4、软件环境
软件项目 |
配置 |
提供者 |
VMWare vSphere |
6.0试用版 |
VMWare |
CVM OS |
CentOS 6.7 x86_64 (2.6.32-573) |
用户/TaoCloud |
SSAN |
1.3.2 |
TaoCloud |
IP地址 |
3个管理IP +3个数据IP,分为两个网段 |
用户 |
四、系统部署
4.1、vSphere部署
VMware vSphere是一套服务器虚拟化解决方案,核心组件包括ESXi Hypervisor和vCenter Server。ESXi是一个hypervisor,类似于Xen的虚拟层,用于把X86服务器的硬件进行虚拟化。一旦一台X86服务器硬件上安装了ESXi,底层的硬件就被虚拟化了,可以用这台服务器创建、配置、多个虚拟机。vCenter服务器是用于管理一个或者多个ESXi服务器的工具。
vSphere详细部署请参考官方文档,这里仅作简要介绍。
4.1.1 准备工作
ESXi Hypervisor需要CPU虚拟化(VT)功能支持,CVM透传磁盘需要AHCI功能支持。开机启动进入BIOS设置,开启虚拟化VT功能和AHCI功能。
4.1.2 ESXi部署
ESXi对硬件兼容性要求比较高,需要硬件型号在HCL兼容性列表当中,包括服务器、CPU、磁盘、网卡、RAID卡、SSD等,否则系统将无法成功安装。安装过程中,首先检查硬件兼容性,确认磁盘和网卡信息,如果需要支持HA和FT,则至少需要两块以上网卡,官方建议6块网卡。为了安全性,建议修改默认ROOT帐户密码。安装完成重启后,建议修改ESXi主机的IP、Hostname、DNS等网络信息。
ESXi是基于linux的系统,可以通过vSphere Client来连接,也可以使用vCenter Server连接ESXi,都是基于图形化界面来管理系统。vSphere Client管理非常有限,诸如vMotion等功能都不能操作,因此建议使用vSphere Client连接vCenter Server服务器来实现对多台ESXi服务器的管理。
4.1.3 硬件透传
超融合架构中,出于性能考虑,需要将主机PCIe物理设备透传(Pass Through)给SSAN控制虚机CVM。选择ESXi物理主机,在配置-->高级设置中标记需要直通的设备,配置完需要重启ESXi物理机生效。
4.1.4 CVM创建
SSAN+vSphere超融合架构,每台物理服务器既是vSphere计算节点也是SSAN存储节点。每一个ESXi主机需要先配置一个虚拟机作为控制器(CVM),并将物理主机上的磁盘和网卡透传给CVM。这里有三个ESXi节点,分别在其上创建了ssan-test01、ssan-test02、ssan-test03作为SSAN CVM,并将透传的磁盘和网卡分配给CVM。
4.2、SSAN CVM部署
4.2.1 CVM OS安装
每个vSphere节点上分别创建好一个CVM控制虚拟机,之后进行操作系统和相关软件的安装。每个CVM安装相同版本的操作系统,Linux OS采用CentOS 6.7 x86_64 (2.6.32-573)最小模式。如果是Intel的万兆网卡和SSD,Centos 6.7可以直接支持,不需要额外安装驱动。其他厂商的万兆网卡和SSD,请按照厂商文档安装对应驱动。
4.2.2 SSAN软件安装
SSAN集群节点自动化进行安装配置,直接执行ssan_install.sh即可。
(1)集群节点自动安装
./ssan_install.sh
输入节点序号(如0, 1, 2),将自动安装SSAN软件包,并自动进行相关系统配置。SSAN每个节点上执行此步骤,多个节点可以并行安装。第一个节点安装时,如果SSAN集群配置文件ssan_install.conf不存在,则会进行交互式输入,也可以手动编辑,其他节点可以直接使用此配置文件。
交互输入信息包括:
ssan_node_nr: ssan节点数量,缺省是3;
zk_node_nr: zookeeper节点数量,缺省是3;
zk_client_port: zookeeper客户端端口,缺省是2181;
zk_server_port: zookeeper服务器端口,缺省是2888:3888;
ntp_server: NTP服务IP地址,可选配置项,保证节点时间同步即可;
webgui_server: ssan webgui管理节点IP,可选配置项,推荐配置;
node1_mip: 第1个节点管理IP,必填配置项;
node2_mip: 第2个节点管理IP,必填配置项;
node3_mip: 第3个节点管理IP,必填配置项;
(2)启动集群服务
SSAN集群管理依赖zookeeper、sagentd和suiagentd服务。集群所有节点安装配置完成后,需要在每个节点手工启动服务,或者直接reboot也可以。请确认每个节点以上服务都处于Running状态。
4.2.3 WebGUI安装
SSAN支持命令行和WebGUI两种管理模式,推荐使用WebGUI进行集群管理。管理节点可以单独部署,也可以部署在其中一个SSAN节点上。这里我们选择第一个节点作为管理节点。
./ssanweb_install.sh
第一个节点上直接运行上述ssanweb安装脚本,自动安装ssanweb-1.3.2-1.el6.x86_64.rpm和webgui运行环境所需求的依赖包,包括httpd、mysql、php等,并自动完成webgui运行环境的配置。安装完成后,请确认mysqld、httpd服务处于Running状态。
4.2.4 SSAN集群配置
SSAN遵循大道至简的设计原则,系统管理和应用非常简易方便,系统采用基于WebGUI的多语言图形化管理界面,管理员可以轻松进行配置、监控和管理。对于一个全新部署的SSAN系统,建议采用如下顺序进行配置管理。
(1)增加节点:集群由多个物理节点组成资源池,必须先有集群节点;
(2)初始化磁盘:集群节点的磁盘资源,需要初始化才能够被SSAN管理和使用;
(3)创建OSD:OSD管理一个节点上一块或多块物理磁盘,它提供对象存储功能;
(4)启动SSAN:一个SSAN节点有一个或多个OSD进程组成,启动以激活存储资源;
(5)初始化集群:第一次启动需要初始化集群,之后集群资源才能正常使用;
(6)创建虚盘VD:集群正常后可以随意创建虚拟磁盘,相关配置在创建时指定;
(7)创建iSCSI Target:SSAN采用iSCSI协议访问,需要虚盘创建iSCSI目标端;
(8)iSCSI发现与登录:客户端采用iSCSI协议访问虚盘存储资源;
4.2.5 创建虚拟磁盘
这里我们把vSphere中所需要的全部存储都放置于SSAN存储池中,包括vCenter虚拟镜像、VM模板和VM数据存储。在SSAN WebGUI管理平台中创建三个虚拟磁盘VD,均采用三副本冗余策略,容量均为200G。
4.3、vSphere配置
前面我们已经部署好vSphere和基于CVM的SSAN系统,接下来我们将把SSAN存储资源分配给vSphere,并部署vCenter来管理vSphere集群。iSCSI多路径、虚拟HA和FT,这是需要特别注意的配置。
4.3.1、配置SSAN存储
SSAN CVM部署中已经创建好三个200GB的虚拟磁盘ssan-test1、ssan-test2、ssan-test3,通过vSphere Client连接ESXi进行存储配置。SSAN采用标准iSCSI协议与ESXi连接,可以使用一个或多个虚拟磁盘,出于性能考虑,这里为每一个ESXi配置一个虚拟磁盘,并设置三条iSCSI多路径,故障切换策略为Failover。测试性能时,建议将客户虚拟机均衡创建在三个SSAN存储域。
4.3.2、vCenter部署
VMware vCenter是VMware vSphere套件中一个强大的主机和虚拟机集中管理组件,vSphere许多高级功能,只有在vCenter下才可以配置实现,并且vSphere许多管理模块只能集成安装在vCenter环境中,无法独立安装运行,通过对vCenter的管理可以对一台或者多台VMware vSphere进行管理配置,因此VMware vCenter是VMware vSphere的主要管理平台。
vCenter Server可以采用物理服务器或者ESXi虚拟机安装,这里采用虚拟机,内存8GB,64位Windows Server 2008。安装过程这里不再赘述,具体请参考官方部署文档。成功安装后,使用vSphere Client连接vCenter Server,就可通过管理界面管理数据中心、集群、vSphere主机、HA、FT、vMotion等功能。这里我们创建了一个ssan-test数据中心和test123集群,集群中包括了三个vSphere主机节点,集群中已经创建好三个SSAN CVM,以及之前部署的vCenter Server。
4.3.3、配置集群HA
vShpere HA功能用于检测故障,对集群中运行的虚拟机提供快速恢复功能。核心功能包括主机监控和虚拟机监控功能,用于在检测不到信号时最大程度地缩短停机时间。必须打开vShpere HA功能,才能使用FT(Fault Tolerance)功能。HA、FT都必须在集群模式下才能应用,创建集群时打开vsphere HA和DRS,启用主机监控。
4.3.4、配置虚机FT
vSphere Fault Tolerance (FT) 通过创建始终与主虚拟机保持同步的虚拟机实时卷影实例,使应用在服务器发生故障的情况下也能够持续可用。一旦出现硬件故障,vSphere FT 就会自动触发故障切换,确保零停机并防止数据丢失。故障切换完毕后,vSphere FT 会自动创建一个新的辅助虚拟机来为应用提供持续保护。
FT功能是针对每个虚拟机单独配置的,主要是面向关键应用的虚拟机,一般的应用虚拟机配置集群HA功能即可。虚拟机启用FT功能后,同一个虚拟机就会出现两个虚拟机:主虚拟机和辅助镜像虚拟机,其中辅助虚拟机是只读的,可以通过FT测试功能测试虚拟机的切换。
五、系统测试
5.1、功能测试
1、测试方法
按上述方法和步骤成功部署和配置SSAN+vSphere计算存储超融合系统,我们就可以将vSphere中所有的虚机存储放置于SSAN存储池,包括vCenter Server、CVM和Guest VM所涉及的Image镜像和云盘存储。功能测试重点验证数据存储域、虚拟机磁盘、快照克隆回滚等常规存储功能点,均在vCenter管理系统中进行操作。功能测试场景非常多,这里列举了一部分存储相关核心测试用例。
2、测试场景
5.2、高可用测试
1、测试方法
SSAN提供了多种数据可靠性和可用性机制,包括副本/纠删码机制、iSCSI多路径,为vSphere的高可用性提供基础支撑,包括vCenter和Guest VM的高可用。这里重点模拟iSCSI路径故障和主机故障来验证SSAN和vSphere的安全性和高可用性,包括HA和FT功能。
2、测试场景
5.3、性能测试
1、测试方法
性能是评估一个存储产品最为关键的指标,包括IOPS、带宽和延迟,这里采用FIO进行测试分析。
FIO是一个I/O标准测试和硬件压力验证工具,它支持13种不同类型的I/O引擎,支持块设备和文件系统测试,广泛用于标准测试、QA、验证测试等,支持Linux, Windows等操作系统。
2、测试场景
六、总结
VMWare vSphere是业界领先的虚拟化平台,广泛用于桌面云和服务器虚拟化。VSAN是一种新型的分布式软件定义存储,内嵌于vSphere内核中,可以更好地实现vMotion、HA、FT等高级功能和更高的性能,vSphere+VSAN可谓是完美的虚拟化整体解决方案。然而在一些特定的场景下,出于成本、管理、立旧、跨平台、本地化支持等诸多因素考虑,用户就会主动寻求替换VSAN的存储解决方案。
SSAN是典型的Server SAN,借助于软件定义存储、开放式X86标准架构和高性能SSD存储介质,SSAN可以替换传统SAN/NAS存储,更好地满足虚拟化对存储的新需求。SSAN支持物理分离和融合/超融合部署方式,可以更好发挥本地存储优先访问策略优势,可以提高资源利用效率,进一步降低了成本。
实践表明,SSAN+vSphere超融合架构可提供一体化的虚拟化/私有云解决方案,SSAN是一种绝好的替换VSAN方案。
(全文完)