让人兴奋的国庆7天长假,实质上就是融合了双双休的超融合。今天就是祖国的节日,愿可爱的读者们国庆节日快乐,怎么喝都不倒,怎么吃都苗条。
今天我们不讨论SDS(如vSAN、Nexenta、ScaleIO等软硬件解耦,以及我比较认可的ViPR和DJ数据控制分离的产品)技术,也不讨论融合基础架构和超融合基础架构的概念和区别(有很多介绍的文章,大家可以谷歌或度娘一下),而是聚焦在融合基础架构的生态、主要产品和解决方案。
在讨论融合和超融合架构之前,我们先回顾下场景。从目前来看,主要应用场景包含轻负载虚拟化(VDI、资源池)、混合负载(高性能、或虚拟机租赁等)和数据库加速(以Oracle Exadata为典型)。绝大多数融合架构都是基于某种特定应用或场景而设计,这也是融合架构相比传统服务器、网络和存储积木搭建基础架构的优势所在。
此外,还有之前市场上出现的Oracle SPARC SuperCluster通用一体机、Teradata Aster集成系统、IBM PureSystem专家集成系统、PureApplication应用一体机、PureData大数据和PureScale DB数据库一体机、以及各个厂商的HANA一体机(如 HP AppSystem for HANA)等。随着VMware主推VSAN Ready Node,我们所熟知的HDS/ Fujitsu / SuperMico /HP/Dell Supur EVO: Rail等产品都转向了VSAN Ready Node。
我们再来看看目前主流的融合集成架构,主要分为融合基础架构和超融合基础架构。融合基础架构实质上就是联合验证过、并进行调优和优化过的基于积木搭建的系统,如VCE的VBlock、VxBlock、VCN联盟FlexPod等。超融合系统顾名思义就是高度集成服务器、网络、存储、虚拟化甚至应用的融合系统,也是我们讨论的重点。
目前在市场上,超融合基础架构产品本来就种类繁杂,再加之各自厂商鼓吹,使得客户在面对大量特性同质化产品时,经常面临或陷入选择困窘,不知道到底哪家的产品才能比较切合自己的真实诉求。为了让大家对目前主流架构有个直观的感觉和了解,在此也对各家厂商的产品和方案进行了简述。
谈起超融合,我们就不得不提Nutanix,Nutanix除了本身提供基于超微服务器提供融合系统外,还把软件软件OEM给不同厂商,如Dell、联想等知名厂商。下面我打算以Nutanix超融合系统为例,谈谈我个人对超融合系统如何选择的理解,其他系统如FusionCube、VxRail、VxRack等系统分析,将会在以后文章中陆陆续续呈现给大家。
Nutanix主要有NX-1000、NX-3000、NX-6000、NX-8000和NX-9000系列,在Nutanix的最新官网上已经将NX-7000系列去掉,该系列与NX-8000都是单节点类型,NX9000系列从原来的两节点调整为四节点。
应用场景
根据现网情况和需求匹配,选择融合系统产品。确定是只支持纯虚拟化环境应用,还是需要同时支持物理机部署架构或者混合部署架构。Nutanix超融合系统是专为虚拟化应用设计,具有很好的虚拟化软件兼容性(vSphere,Hyper-V,KVM),支持10GE/GE网络组网。但如何需要应用支持虚拟化和物理机混合部署,那可能需要选择其他融合系统。如果部署的应用是明确的(如Oracle OLTP),为了保证性能和可靠性,并且在商务接受范围内,我们选购Oracle一体机可能是比较合适的。
性能要求
一般情况超融合性能都是能满足应用要求。但是决定性能的主要因素在于网络和软件堆栈,如果在10GE/GE网络组网情况下不能满足要求,或有InfiniBand网络的诉求下,Nutanix不能很好满足。Nutanix的软件运行于VM中,基于NDFS文件系统,Nutanix内部采用文件系统,然后封装各种不同的存储协议应对不同的虚拟化平台。在性能和时延上有一定损失,但支持SSD做Cache功能,且数据在本地存储,根据数据热点在不同磁盘或节点间迁移;也支持大规模扩展能力。
关键特性支持
丰富的高级特性也是需要重点考虑,如去重,压缩,自动动分级存储,备份,容灾等高级特性都是企业级存储必备的基本特性。ScaleOut存储架构实现弹性增长和扩容,采用副本机制(支持2-3副本)、支持EC来满足数据保护要求;广泛的虚拟化兼容(vSphere,Hyper-V,KVM,另外还提供自有的基于KVM虚拟化),灵活自动化安装部署;提供工具快速安装等。
软件堆栈和架构
超融合架构目前主要有两种,一种如vSAN可以集成在Hypervisor层,而另一种如Nutanix,需要在Hypervisor上面运行一个控制虚机CVM来提供存储服务。Nutanix在架构上分为Prism和Acropolis,Prism 是Nutanix超融合产品的管理系统,可以查看多Clusters的存储,计算资源以及状态,并提供Rest API,CLI等接口;Acropolis是Nutanix超融合产品的虚拟化平台管理系统,对Nutanix Distributed Filesystem(NDFS),AMF以及Hypervisor进行管理。
Acropolis分为分布式存储DSF、应用移动性架构AMF和虚拟化管理器VM。Nutanix支持vSphere,Hyper-V、Acropolis Hypervisor(KVM)等多种虚拟化平台,采用了统一的将存储软件部署于CVM的架构。分布式存储软件通过Hypervisor的Intel VT-d(VM直接通路)技术特性,访问服务器的本地存储硬件,如SSD,HDD等,并通过NFS,iSCSI接口向所在节点的业务VM提供存储;支持压缩,去重以及复制容灾等高级特性。
每个节点运行着hypervisor(支持ESXi、KVM、Hyper-V)和Nutanix控制器虚机(CVM)。Nutanix CVM中运行着Nutanix核心软件,服务于所有虚机和虚机对应的I/O操作。通过VM直接通路技术,对于运行着VMware vSphere的Nutanix单元,SCSI控制(管理SSD和HDD设备)被直接传递到CVM。
Nuntanix通过为数据建立副本,拷贝到其他Nutanix节点存放,来对数据进行多副本保护(支持EC)。数据从虚拟机先写入到本地Nutanix节点的SSD硬盘中划分出来的OpLog逻辑区域(相当于Cache的作用),本地节点的CVM将数据从本地的SSD的OpLog拷贝到其他节点的SSD的OpLog,拷贝份数可配置。当其他节点CVM确定数据写入完成后给出应答写入完成。
云兼容能力
Nuntanix实现了与OpenStack的深度集成,通过OpenStack的开发能力使得整个方案按需扩展节约成本,不但发挥了超融合优势,而且实现通过OpenStack对接不同的服务器虚拟化平台。整个架构包含前端API和由技术、存储资源组成的基础架构服务,由OpenStack控制器、Nutainux OpenStack Driver和服务虚拟机组成。
OpenStack控制器可以部署在物理机、虚拟机中或是OpenStack on Nutanix虚拟机中,提供OpenStack用户界面和API服务,处理所有对OpenStack的API调用。Nutainux OpenStack Driver负责处理来自OpenStack控制器的API/RPC调用,并转换成本地Nutanix API;OpenStack控制器也可以和Nutainux OpenStack Driver安装在同一个服务虚拟机中,服务虚拟机就是安装有Nutainux OpenStack Driver的虚拟机。
客户端以Web接口、Http、SDK或CLI等API来与OpenStack控制器通信,OpenStack控制器与服务虚拟机OVM通信,并用OpenStack驱动把相关接口转化成Nutanix自身的Rest API调用。
微服务化能力
Colud Native和微服务化是未来趋势,Nutanix超融合实现对Docker容器技术的支持,全面解决了容器应用数据持久化的问题。Nutanix 通过ACS(Acropolis Container Services)提供了基于Nutanix平台Docker容器化应用的简单部署和管理功能。
Nutanix Docker Machine Driver可实现Docker宿主机在Nutanix平台的快速部署,Nutanix将Docker数据卷容器存放Nutanux提供的iSCSI存储上,任意Docker宿主机的容器故障或者被删除,都可以在另外的Docker宿主机上基于原来的数据卷容器启动新的容器应用。Nutanix采用Docker in VM的方式也实现有效隔离保证容器间的安全性。
另外,设备采用高密度,节省机房机架空间,如Nutanix 2U可以配置4个节点,包含了存储与计算,比以往机架式、刀片服务器与磁盘阵列的解决方案节省了大量的空间。简化管理运维也需要考量,通过GUI管理多套设备,可以对单个Cluster内的资源如存储、VM、Hypervisor等进行监控、管理和状态显示等。