乐高服务器之Server SAN到超融合择天记

来源:互联网 发布:java aes 128算法 ecb 编辑:程序博客网 时间:2024/04/30 06:08

从清明节开始,淡淡的雾霾天气就若即若离的盘踞在北京的上空,好不容易有这么一个小长假,却碰到了雾霾天气,还真不知道去哪儿比较好,真是令人沮丧。

突然间想起好友龙哥——服务器狂人,他的实验室里经常会有一些新奇的设备,前两天还看到他在朋友圈里秀机器,反正没地儿去,干脆去找龙哥。

龙哥的实验室距我住的地方有5km,说远不远,但是因为没有顺路的公交车,去的次数还真不多。好在现在满大街的共享单车,出门骑上摩拜,十五分钟就到了。心里暗自思忖,共享模式确实解决了好多传统模式难以解决的问题。

这不是你想象中的2U4

透过实验室窗户,龙哥正在机柜后面摆弄一台2U的机器,心里挺纳闷,龙哥也搞了十几年服务器了,怎么还对这种“老家伙”保有兴趣?

几个月没见,龙哥风采依旧,带我直接进了实验室,我们搞基(机)的人啊,做事儿都这么直接。

“来看看我弄的新玩意。”龙哥很自豪地给我介绍他的“新玩具”。

“不就是2U4节点服务器吗?这有啥新鲜的,见得多了。”我很不明白龙哥为什么会把这玩意儿当“宝贝”。

“淡……定!再仔细看看,你确定只是一台2U4?”看龙哥那略显得意的神情,我有些心虚。

赶紧凑上去细看,居然有8个节点,在2U机架的空间内上下两行排列,每个节点都是1U高度、四分之一宽,节点上有个铭牌:FC430,这是服务器型号。机箱左侧赫然几个银色凸出小字:DELL PowerEdge FX2

好高的密度!比2U4整整多出一倍。不过,“这么小的节点,不会是单路服务器吧?”我在惊讶之余仍有些不敢相信。

“怎么会!这不是一般的2U4,从渊源来讲,这属于刀片式服务器的演化,是一套全新的多节点设备。传统2U4是将4个计算节点压缩到一套2U机箱内,由机箱提供存储,并集中供电和散热。而这套戴尔PowerEdge FX2,机箱除了集中供电和散热外,还有PCIe扩展槽、交换机等I/O功能,就是不像常规2U4那样提供传统硬盘位(存储),而是把硬盘放在特定的节点上——每个计算节点上也有,更像刀片式服务器的2U机架形态。至于你质疑的四分之一宽计算节点FC430,别看它宽度只有12厘米,但是它很长……”说着龙哥将其中一个节点缓缓拉出,我一眼就看到了两个亮晶晶的铜制散热片——“所以,也是双路至强E5处理器配置的服务器?!”

“没错!”龙哥嘴角微微翘起,“它不仅是双路的计算节点,而且是不‘缩水’的计算节点,支持120W TDP规格的CPU,可达至强E5-2695 v4,18核36线程,单节点最大提供72个逻辑处理器,一个2U机箱内就可以支持576个计算核心……

除了震惊,还是震惊!2U空间里面有用576个计算核心……怎么做到的?!快速心算一下:8个双路FC430,共16颗至强E5 v4 处理器,单颗CPU最高可18个物理核……总计576个计算核心,比标准的2U双路机架式服务器的密度高了8倍,换言之——计算核心多了1300%!如果2U机架式服务器要提供576个计算核心,则需要16U的机柜空间。这计算密度简直就是高性能计算HPC或者虚拟化(如VDI)的最佳拍档。要知道,就是以高密度著称的2U4节点服务器,也只能在2U高度下提供288个计算核心,戴尔FX2在计算密度上依然高一倍!

周边一体化设计

一开始就被龙哥的FX2来了个“下马威”,心底有点小不服气,我开始仔细端详这台不一样的多节点服务器,为什么会倍受龙哥推崇:

传统的2U4是后面插4个计算节点(每节点提供一个或两个PCIe扩展仓),前面的12个3.5英寸硬盘或24个2.5英寸硬盘固定平分到每个节点(3×4或6×4)。简单的说,就是硬盘统一在机箱正面热插拔,节点和共享的冗余电源在机箱背面热插拔。

戴尔FX2的节点则可以分为计算和存储两类,全部从前面插入,便于维护。因此,每个节点上只有两个2.5英寸的硬盘仓(此处窃喜,只有两个够装操作系统的硬盘仓……还是要接外部存储才能用啊,我以为找到了龙哥的软肋)。再看后面:右侧是两组热交换电源模块(一组2000W,够劲),中间是8个竖插的PCIe扩展模块,左侧是……交换机模块还是网卡接口模块呢?

见我这么努力的想找FX2的短板,龙哥嘿嘿一笑:“你还是只说对了一半,FX2确实在单个计算节点上没有提供太多的硬盘位,那是因为SATA SSD已经不是高性能的代名词了,想用高性能的SSD,后面的8个PCIe插槽可以安装PCIe NVMe SSD,现在单片PCIe SSD容量可以支持16TB,或者干脆外接存储使用,只要把后面的这个交换机模块换成FN2210S……我想这也是它被称为融合架构的原因之一吧,区别于作为超融合系统的普通2U4服务器,能适合更多变的任务需求。”

说着龙哥从他手机上调出一张FX2全家福,乍一看,这简直就是KFC的全家桶啊:

计算类节点:4路全宽、2路半宽、2路1/4宽、单路4合1半宽,共4种计算节点,而且还能混插。

    存储节点:半宽的JOBD,里面有16个2.5英寸硬盘位,可以安装SAS/SATA硬盘、SSD等多种存储介质。

    网络模块:提供10G电口/光口,1000M电口,FC交换机模块等诸多选项。

我听完龙哥的介绍,脱口而出:这一台FX2俨然就是一套完整的融合设备啊。

“那是,要做超融合设备,或者Server SAN,自然也是小菜一碟。

融合架构变身Server SAN

“超融合?Server SAN?存储怎么配?”

龙哥见我已经上道,立刻露出了“老司机带你开车”的笑容,随即抽出一台FX2下排的4个FC430节点,然后从旁边抱起一个沉甸甸的半宽设备,插入到FX2机箱空出的位置。在龙哥拿起另一个同样设备准备安装的时候,我拦住了他,原来是个装满硬盘的……“存储节点,里面装了16个2.5寸SAS硬盘”,没等我开口,龙哥解释道。

安装完两个半宽的FD332存储节点后,画风就变成这样了:

这是从8个FC430的高密计算平台变身(4节点)Server SAN存储平台的过程。

具体到每一套PowerEdge FX2,由4个FC430双路计算节点带2个FD332存储节点,FD332具备的Dual PERC特性,可以将单台FD332的16个SAS/SATA硬盘(或者SSD)均分给2个计算节点。因此,等于是每个FC430计算节点都挂上了8个2.5英寸SAS硬盘。

而且,而且,而且,它还不需要再用其他的交换机了!因为FX2后面的网络模组支持各个节点间的二层网络。这套FX2构建的Server SAN只需几根网线连接上服务器就能为应用提供存储服务。

同时,基于FX2的Server SAN相较于传统的2U4节点的Server SAN具有明显的优势,如下表:

虽然只是一个小小的2U机箱,但内部却集计算、存储和网络一体,分解开来,就是一个小型IT系统:

这套(单台)FX2融合架构组成的Server SAN拓扑图:相比传统的2U4超融合架构,这套FX2的Server SAN每节点是2个(2.5寸)系统盘+8个数据盘,比传统的2U4多4个盘位(采用2.5英寸硬盘时,均分到每节点6个),而且每个节点都可以分配两个PCIe插槽,可以安装新世代的PCIe NVMe SSD配合使用(作为缓存或分层存储),极大的提升了系统整体的性能;机箱内集成FN410 10G交换机模块,不需要再用外接的10G交换机了,系统干净整洁。

以往想搭建一套Server SAN,起码要准备3台以上的服务器,后端的网络接口也多,系统搭建又耗时,又费力,还乱七八糟的,光说这走线,我都被老大(CIO)批了好几回了,可是这种Server SAN,光纤、铜缆、管理口各自为政,剪不断理还乱啊,要是早知道FX2这么整体的部署,少遭多少精神摧残啊!我想着想着都傻笑起来。

老江湖龙哥又一眼就看穿了我的心思,哈哈一笑,说道:“这还不算什么,还有更炫的。上面演示的是Server SAN。如果加上应用呢?如果有两套FX2的话,可以是FC830 × 2 + FC430 × 4 + FD332 ×2。”

上下两套FX2就构成了一套企业关键业务高可用架构,两台FC830做HA双机,下面一套基于FC430的ServerSAN,这也太简洁了吧,貌似就插几根光纤就搞定了以往IOE的全套活了。

这时龙哥又在他那部手机上捣鼓了一会,发给我一个图——FX2目前提供的组合功能,看似并不起眼的FX2居然能玩出这么多花活……我真的被这一设计给震惊到了。

“很神奇吧?”龙哥拍了拍目瞪口呆的我,“还有更神奇的呢,下午我给你演示演示如何在1个小时候内完成Server SAN部署。”

“为什么不是现在?”我疑惑地问龙哥。

“现在?”龙哥神秘地说,“现在当然是要先去吃午饭,身体才是搞机的本钱!”

中午快搭Server SAN前奏:融合架构三要素

在三环边上的小餐馆,我们撸着串,喝着啤酒冰红茶,龙哥自动开启了吹牛模式,把市面上各家厂商的2U4多节点服务器都给点评了一番,不愧为老司机,车开的多了,感受都要更深刻一些。我也很好奇,为什么龙哥对看似已寻常的多节点服务器有这么大的兴趣。

2U"x"的世界

“2U4确实省地儿啊,你想想,现在机房有几个不缺空间,不缺电的?机架空间紧张,还没有足够的电,可是IT应用却排着队等着上线,你说说,这CIO该怎么办?上虚拟化、用SDS?说起来都简单!”龙哥左手挥舞着一大把签子比划着:”当你要把几台几十台机器组成一个集群的时候,就会发现,传统的机架式服务器并不是那么美好,复杂的网络连线,部署没你想的那么快,运维也……”

眼见龙哥扯的要没边了,我赶紧提出了我的疑问:“龙哥,在2U的机架空间里,您认为2U4更适合还是2U8更适合呢?”

听到这个问题,龙哥放下手中的扦子,从他手机上翻出一张图,这是戴尔模块化服务器的演化史,可以看到Dell PowerEdge FX2的三个显著特点是支持PCIe灵活分配,既能Scale-out(横向扩展)又能Scale-up(纵向扩展)……“图中没有透露的是,戴尔FX2在2014年发布之后还有小幅的演进优化,再加上之前类似形态的刀片产品,则有十多年的积累了,肯定比刚跟风涉足2U4领域的厂商更有心得。

  • 如果用户需要的计算密度高,对存储没有太多要求,或者配合外接SAN存储,2U8自然是占优势了;

  • 如果用作软件定义存储(SDS),2U4的模式更适合,因为可以为存储留出足够的空间;

  • 如果对单一节点的计算性能要求高,2U2的双4路服务器节点也是可以考虑的……

所以啊,FX2能从2U8支持到2U2,具体上什么形态要看用户需要什么,灵活组合就能满足用户各种不同的需求。”

听到龙哥讲到SDS,我眼前一亮,这阵子一直被CIO追着屁股后面要SDS市场分析和产品选型建议,可是这SDS市场鱼龙混杂,一时间也理不清头绪,正好问问龙哥:“SDS现在除了商业化的产品,开源的大都基于Ceph环境吧?”

“的确,现在Openstack的流行带着Ceph已经成为开源SDS的标杆了,不过要想玩好Ceph,是件困难的事儿……”龙哥撸完最后一根串后,眼神产生了变化:“我最近刚在实验室的FX2上部署了一套Ceph的SDS环境,借助FX2的统一管理平台,可以实现快速部署Ceph环境,哥这就回去让你见识见识!”

“3+1”的模式

回到龙哥的实验室,龙哥拉开另一个机柜的门,我一眼就看到这么一套组合,相比上午给我反复讲解的2U8节点FC430的配置,这套环境给我的启发更大,因为我觉得已经清楚怎么在自己的环境中使用FX2了…?

老司机开腔了,让我的思绪转回到“如何落地”上:

这是一套致力于高可用的关键业务系统,由两套FX2节点构成,上面这套是3台FC630双路计算节点+1台FD332存储节点构成的全闪存储池+HDD存储池的SDS环境,运行的正是你刚才问的Ceph;下面的一眼就能看明白了——两台FC830全宽四路计算节点构成的双机高可用(HA)计算平台。

看图学画“SDS”

接着龙哥开始为在FX2上搭建一套基于Ceph的Server SAN分布式存储系统做准备。“当然了,社区版的Ceph不能称为产品(连界面都没有),不适合你这样的用户,我这里用的是XSKY的X-EBS。XSKY(星辰天合)与戴尔同属未来就绪企业云联盟(Future Ready Enterprise Cloud Organization,FRECO)的成员,我去他们的研发机房看过,大量使用戴尔的服务器,对戴尔服务器的优化工作肯定没问题——你知道SDS与硬件的紧密集成还是很重要的……”

戴尔与XSKY联合推出的飞云存储系统

“R730xd被大量用于SDS这我知道,还是接着说FX2吧。”我太了解龙哥了,这家伙思维很跳跃,必须及时把他拉回正题。

“好吧。看看我这套配置:2U4节点的FX2中使用3个FC630计算节点,和一个FD332存储节点(分配给两台FC630,形成HDD存储池);每个FC630分配至少两个PCIe扩展槽,分别安装双端口万兆网卡和PCIe NVMe SSD(形成的SSD存储池)。”

整个Server SAN架构大致如下图所示:


“理论上,使用FX2的网络模块FN IO就可以构建一套Server SAN,但遗憾的是,这台FX2上配置的是较老的千兆模块,对于多副本数据保护机制的Server SAN来说,使用万兆网络更有利于性能发挥,所以添加一台Mellanox(迈络思)的万兆交换机来连接FX2的各个节点。“追求架构“优美”的龙哥一脸遗憾地解释。

我问了龙哥关于FX2的一些详细的配置,最后整理成下表:

平台/子系统

详细配置

计算平台

戴尔 PowerEdge FC630 ×3

每节点:Intel Xeon E5-2690 v3 ×2,2.6GHz,12核24线程

        64GB内存,2133MHz

存储平台

SSD资源池:1.6TB NVMe SSD ×3(每FC630节点1个)

硬盘资源池:戴尔 PowerEdge FD332 ×1

     15,000 RPM SAS HDD 600GB ×8

     10,000 RPM SAS HDD 600GB ×8

软件:XSKY X-EBS 2.2

网络平台

Mallanox SX1024交换机

操作系统及软件

操作系统:CentOS 7.2.1511

FD332:存储拆分小秘辛

我正在整理这套FX2的具体配置,突然想到一个问题:FD332里面的硬盘怎么分配?

设置存储资源池的第一个小目标:把FD332上的16个2.5英寸SAS硬盘分配给2个FC630节点

抬头一看,龙哥早就进入了FX2的CMC(Chassis Management Controller,机箱管理控制器)管理界面,手指着屏幕正回头看我,似乎已经“恭候多时”了。

我顺着龙哥的手指望过去,“存储模式”下面有三个选项,不由得问:拆分式双主机、拆分式单主机、联合的,这都什么意思?”

龙哥反问道:你知道FD332是什么吗?

我感到有些奇怪:看起来不就是一个JBOD吗?Just a Bunch of Disks,简单说,就是把一堆硬盘连在一起,供主机访问,自身没什么智能。

龙哥笑道:JBOD此言差矣!FD332的官方名称是“超高密度直连存储(DAS)模块”,可不仅仅是JBOD——倒是可以理解为SAS HBA/RAID卡加上JBOD,怎么能说没有智能呢?HBA或RAID都有智能在内啊——你刚才听我说过“Dual PERC”吧?

PERC我知道,是戴尔PowerEdge RAID Controller的缩写,戴尔服务器里面全有这个组件,还有不同的型号可选。至于Dual PERC……是两个RAID控制器?

FD332后部的两个RAID控制器——Dual PERC,上有2个LSI(已被Avago收购)的8端口12Gb/s SAS控制芯片,支持RAID功能

“没错!FD332支持两个RAID控制器。”龙哥在赞许中掩饰不住得意。“当然,你也可以不启用Dual PERC的RAID功能,只是把它们当成两个普通的SAS HBA使用——这对不希望底层硬件启用RAID功能的SDS软件来说,是很重要的。”

“那么,FD332为什么要……”

“支持Dual PERC?就是为了拆分啊!”龙哥实在忍不住了,大笑几声之后,继续解释。

原来,FD332上面的16个2.5英寸SAS/SATA硬盘或SSD,既可以全部分给一个计算节点(如FC630/430),也可以对半分给两个计算节点,这时就要用上Dual PERC——各带8个硬盘/SSD,供对应的节点使用。

“这岂不是说,由于FD332自带SAS HBA/RAID功能,计算节点上连这块儿都可以省了?”我有点儿理解龙哥对FX2的浓厚兴趣了。

“是啊,要不怎么说FX2的架构设计,把传统的内置存储功能,尽可能的与计算节点解耦了呢,这样才能初步实现存储硬件资源分配的灵活性,也有利于计算节点达到更高的密度。”说着,龙哥已经从他的电脑上调出一幅图来。

FD332三种分配方式架构示意图

“你看,最上面的就是拆分式双主机,16个2.5英寸硬盘拆分给两个PERC,各划分给一个FC430计算节点,这样每个节点都有8个2.5英寸硬盘。就像上午跟你说的,这种4个FC430配2个FD332的组合,最适合做成超融合系统。当然,Dual PERC各连一个FC630也是可以的,就像我们现在的配置。”

“那拆分式单主机就是一台FD332上的两个PERC都连接在同一个计算节点上?而且这个计算节点还可以连接多个这样的FD332?”

“Absolutely right!”飙英文表明龙哥找到了共鸣。“16个硬盘还是拆分给两个PERC,但都划拨给同一个计算节点。我想,这在FD332里面大量使用SSD的时候,是很有必要的,可以保证计算节点获得较高的性能,而不仅是容量。”

“联合式是不是就是更注重容量的方案?和拆分式单主机一样,也是每台FD332的全部16个2.5英寸硬盘都划给一个计算节点,也允许多台FD332连到同一个计算节点。区别在于FD332只启用一个PERC,而不是拆分给两个PERC,所以出口带宽仅为拆分式单主机的一半。如果FD332里面装的都是SSD,这个PERC可能成为性能瓶颈。”

“孺子可教啊!都会举一反三了!”一转眼的功夫,龙哥又切换到了成语模式,这灵活性都快赶上FD332啦。

“不管是三种模式中的哪一种,FD332上的PERC自身还有一些设置项吧?”

“年轻人有前途!这么快就能跟上哥的节奏啦!”龙哥一边颌首赞许,一边转到(已配给FD332的)FC630的iDRAC界面,“这个PERC用起来和计算节点内置的PERC没啥区别,对咱们来说最重要的是这个选项:在面向比较传统的Scale-up(纵向扩展)应用时,我们可以启用该PERC的RAID功能,就像是FX2内置的小型磁盘阵列;在面向SDS这种典型Scale-out(横向扩展)的场景时,则需要设置为HBA模式,CPU直通(pass through)访问SAS/SATA硬盘或SSD。

在FC630的iDRAC存储管理界面,可以对FD332分配到该节点的存储资源(PERC控制器设置和磁盘)进行管理

PCIe的奥妙

终于搞明白了FD332里面的道道,想起来撸串时龙哥给我看的那张戴尔模块化服务器发展史上,FX2的三个关键词,Scale-up和Scale-out都提到了,可是……PCIe呢?

龙哥又恢复了“一切尽在掌握”的神秘笑容,问道:你猜,FD332与FC630之间是通过什么协议连接起来的? 

“这有什么难的,肯定是SAS啊!”我没经过大脑,脱口而出。

“再想想,这个Dual PERC可是在FD332上的哈!”龙哥给出提示。

我一下就悟了:对啊,就是PCIe!

“没错,是通过PCIe连接的。并且,结合FX2背部的8个PCIe插槽设计来看,FX2的背板核心是PCIe Switch。包括FD332、PCIe插槽及其旁边的FN IO网络模块都是通过PCIe Switch与前面的服务器节点连接。正是因为PCIe Switch的存在,所以其连接更加灵活,而且也可以实现更多功能。”

我真的被震惊了,没想到外观看似如此简单的一个小东西,内部设计却如此的有“门道”……既然FD332的连接都可以如此灵活,借助PCIe Switch,PCIe插槽的灵活性也就毋庸置疑了。龙哥接下来的操作证明了这一点。

这是FX2当前的PCIe分配模式:

节点1上有4个PCIe插槽,但只有两个插槽接入了PCIe设备,节点2和节点4上各有两个接入了PCIe设备的插槽。

为什么节点1上面会有4个PCIe插槽?节点3又到哪里去了?这台FX2里明明是有4个半宽节点的啊。

龙哥耐心地解释说:FX2后面的8个PCIe插槽,默认分别对应一个四分之一宽插槽位。譬如,8个FC430的配置,每个FC430分到自己对应的1个PCIe插槽;4个FC630的话,每个节点分到2个PCIe插槽,以此类推。当某节点不能拥有PCIe插槽时,譬如我们这个配置里节点3是FD332,不需要也无法接入PCIe设备,它原本对应的2个PCIe插槽,就被FX2自动分配给靠前的节点,也就是节点1。

如果我们对这种“将无主的PCIe插槽追加到第一台服务器节点上”的分配方式不满,FX2也提供了另一种选项:在PCIe插槽的“设置”页面,勾选“PCIe重新分配”,FX2就会用另一种规则自动分配PCIe插槽,如下图:

在PCIe插槽的“设置”页面,勾选“PCIe重新分配”选项,然后点击“应用”即可重新分配PCIe插槽

与默认的自动分配方式不同,“PCIe重新分配”希望在有权瓜分PCIe插槽的节点之间尽可能做到平均分配。比如在当前的这台FX2中,其有8个PCIe插槽,无法平均分配到3台FC630服务器上,“PCIe重新分配”的策略是干脆舍弃最后面的服务器节点,将8个PCIe插槽,平均分配到靠前的2台FC630服务器上,每台FC630上会有4个PCIe插槽。

两种不同的分配方式,具体可见下面的逻辑拓扑图:

图上为PCIe默认分配方式,首先满足每个FC630上都有基本的2个PCIe插槽,再将FD332空出的2个PCIe插槽追加给第一个FC630节点;图下为开启“PCIe重新分配”选项,舍弃一个FC630节点,将8个PCIe插槽平均分配到2台FC630上

由于我们为安装Server SAN准备的SSD资源池,需要在每个FC630上都安装1个PCIe NVMe SSD,最终还是采用了默认的PCIe插槽分配方式。

看到这里我终于想明白了:FX2的FD332直连存储模块和PCIe插槽,分配方式都既支持Scale-out(尽可能分给多个节点),也支持Scale-up(尽可能分给一个节点),而这种灵活性就是PCIe交换所赋予的……

“安装Server SAN需要的硬盘资源池和SSD资源池都准备好了,接下来看哥用一个小时给你装好Server SAN,还有超融合!”龙哥的话又打断了我的思绪。能有这么快?我看了眼手机,龙哥不想跟我吃晚饭,也不用这么拼吧?!

下午一小时部署Server SAN,还有超融合

“Server SAN和超融合系统,在部署上有什么区别?”龙哥确实有点儿赶时间的意思,直奔主题。

看我不知从何说起,龙哥自答:Server SAN是把用于替代传统SAN的软件定义存储(SDS)部署在多个物理节点上,超融合则是在虚拟化环境中进行类似的部署。

你是说超融合系统多了个部署虚拟化环境的环节?不过,“一小时”能做完这些么?想想我给办公室搭一台文件共享的NAS,还花了一天的时间,这涉及到多个节点的Server SAN和超融合,虽说有可以并行的环节,真能在一小时内搞定?

龙哥见我面露疑色,就拍了拍我肩头:“不相信?哥今晚约了你嫂子吃饭看电影,一个小时必须能搞定!”

我怎么能不惊讶呢,这个搞机狂魔居然有时间交女朋友了!时间从哪里来?

还是先为自己的事儿操心吧……传统企业级生产环境的部署始终是一个费时耗力的过程。按照传统方式部署一套企业级虚拟化平台,怎么着也得好几天,这还算小型环境,要是大型环境,加上设备采购安装,没有三五个月根本搞不定。构建超融合难道真的能这么快?我一直以为那些宣传都是极大夸张了的呢。

龙哥见我不信,就问:“就这套系统,从上架、加电到现在准备就绪,用了多长时间?”

“大约半个小时吧?”我有点不太确定地说。

“实际上还可以更短时间。”龙哥坚定地说,“FX2采用模块化设计,所有组件齐备,上电就可以使用,甚至不需要外接交换机。实际上,你只要接通电源,然后花两分钟分配好FD332直连存储模块和PCIe插槽,就可以开始部署了。”

根据龙哥的描述,我粗略整理了一幅安装流程图,看起来很简单的样子

龙哥一边说,一边通过iDRAC依次给三个FC630节点挂载上CentOS7.2系统镜像,然后开始安装。利用等待安装完成的这段时间,龙哥解释说,因为只是一个小型环境,所以手动完成这些并不复杂。如果规模比较大的话,可以用Dell OpenManage或第三方工具来进行统一的安装、部署和管理,就是上百台服务器,也可以批量完成系统安装。

约20分钟后CentOS系统安装完毕,龙哥又通过iDRAC将另外一个镜像挂载到FC630上面:“这是XSKY的X-EBS安装镜像。基于Ceph的商业化SDS产品,一键安装,很方便。”

3个FC630计算节点+1个FD332直连存储模块的资源分配图,采用了外部的Mellanox万兆交换机

X-EBS安装很快,不到10分钟的样子,龙哥通过浏览器登录了X-EBS的管理后台,将另外两台FC630节点上的存储资源(各分配了FD332的一半硬盘)加入到同一个资源池。

添加存储节点和硬盘,上图可以看到,在node01上添加了8块磁盘和一块NVMeSSD。虽然两种转速(15k RPM和10k RPM)的磁盘性能有差异,但在SSD的性能面前,这点差异完全可以忽略不计

当3台X-EBS Controller虚拟机与对应存储都添加进来之后,就开始设置存储资源池了:

将分布在3个节点上的NVMe SSD添加到一个资源池(High-pool)内,并将副本数设置为2(X-EBS提供了三种选择,分别为1、2、3副本)

设置好资源池之后,再创建相应的卷(Volume),Server SAN就可以对外提供存储服务啦。

点击“创建块存储卷”,然后输入名称并分配容量大小

龙哥一边操作,一边讲:“应用服务器(计算节点)可以通过两种方式访问Server SAN提供的存储服务:第一种是在应用服务器上安装一个类似Agent的客户端,进行数据传输,XSKY的X-CBS就属于这一种;X-EBS属于第二种,可以通过标准的iSCSI接口跨网络访问。在需要存储服务的(计算)节点上安装iSCSI客户端,然后会生成一个iSCSI的iqn号码;在X-EBS后台管理界面中添加对应的客户端,将服务器节点的iqn号码填入,即可分配存储服务。这第二种方法,接下来在VMware环境中的部署会讲到。”

有了Server SAN,超融合还会远吗?

“Server SAN的安装这就完成了?还没在计算节点上配置访问呢。”我看龙哥已经准备将刚搭建好的这套Server SAN系统铲掉了。

“通常我们说到Server SAN,默认是指一种计算和存储分离部署的架构,也就是提到FX2时经常说的‘融合架构’。既然是分离部署,部署Server SAN就是存储端的任务,不用涉及计算节点啊。”

“我知道哥要赶时间,但也不能这么打发我啊……”

“你把哥当什么人了!接下来不是要部署超融合么?肯定会让你看到计算节点上的部署——当然,在虚拟化环境中,是会更方便一点儿。”

“超融合是不是可以理解为,把Server SAN部署在虚拟化环境中,与应用跑在一起?”

龙哥笑道:“今天哥确实赶时间,就不在鸡蛋里挑骨头了。Server SAN是超融合的基石,可以说超融合代表了Server SAN的一种使用场景——本来超融合架构就是融合架构的一个子集。当Server SAN单独使用时,就是将存储控制器(软件功能)直接安装在物理服务器上;而在超融合系统中的Server SAN,则是将存储控制器部署在虚拟机或者hypervisor之中。虽然形态不同,但本质上没有明显差别。所以,你的理解基本正确。”

Server SAN与超融合的架构区别,主流超融合比Server SAN多了一个虚拟化层,其上VM不但有分布式存储控制器,还可以有其他应用VM

听龙哥梳理Server SAN与超融合架构的血缘关系,我才理解他以前所说“企业用户对Server SAN的接受度很大程度上是拜超融合所赐”的含义。既然在3个节点上部署Server SAN真的用不了一个小时,部署超融合也只是多了安装hypervisor的时间而已吧?

龙哥呵呵一笑:“小子,上道够快的!超融合能有多难?也就一个小时的事儿!”我当然举双手赞成。还用这套Dell PowerEdge FX2,龙哥开始将其部署为一套超融合系统。

安装VMware vSphere 6.2虚拟化平台

安装VMware vSphere虚拟化平台的过程大家都很熟悉,龙哥依次在三个FC630节点上安装ESXi 6.2 hypervisor——这一步可以并行化,所以时间并不算长。然后用WindowsServer 2012 R2操作系统构建两台虚拟机,分别用于Active Directory和vCenter Server。接着登陆vCenter将三台ESXi主机添加到同一个集群。

同时,还需要将ESXi主机上的NVMe SSD和FD332设置为直通模式,用于安装XSKY X-EBS。如下图所示:

将FD332的8块磁盘(即上图红框中的LSI FD332 PERC)和NVMe SSD(上图中的Unknown Non-Volatile Memory Controller)勾选设置为直通模式

安装XSky X-EBS分布式存储

安装完虚拟化平台之后,就可以安装XSKY X-EBS分布式存储软件了。

首先,要在每台ESXi主机上都创建一台虚拟机,并安装CentOS 7.x操作系统,用于XSKY X-EBS的分布式控制器——X-EBS Controller。这种虚拟机,在超融合系统中通常被称为CVM(Controller Virtual Machine,控制虚机)。为了让CVM高效的处理存储I/O,需要将ESXi主机上的存储资源——NVMe SSD和FD332存储——直通(pass-through)给对应的X-EBS Controller,如下图所示:

将ESXi主机上的NVMe SSD和FD332存储直通给对应的X-EBS Controller,可以看到FD332被识别为Dual ROC(RAID on Chip),也就是Dual PERC,只是在SDS的场景下,我们不启用其RAID功能

X-EBS本身的安装,与前面在物理环境下部署Server SAN的对应环节基本相同,此处不再重复。少数不同之处主要是虚拟化环境造成的,这里面有一些便利,譬如:龙哥在安装vCenter服务器之后,先创建一个CentOS虚拟机,配置好并克隆成模板。在安装X-EBS分布式控制器的时候,直接用这个模板虚机部署三个节点上的存储控制器,时间大幅节省。

X-EBS支持标准iSCSI协议,也就是说,其他主机(包括ESXi主机、虚拟机或者其他物理主机)无需安装Agent即可使用其提供的存储服务。比如,将这个名为LUN1的卷提供给ESXi主机使用。

首先,在需要添加存储的ESXi主机上添加iSCSI适配器,获得iqn号,如下图所示:

在ESXi主机上添加iSCSI适配器,获得一个iqn,如上图红框所示

然后返回到X-EBS管理界面,创建一个iSCSI访问客户端,然后在提示输入iqn的空白框中输入ESXi主机的iqn。并将LUN1映射到这个iSCSI客户端上,如下图:

将LUN1映射给iSCSI客户端

然后回到ESXi主机上,在配置界面选择存储器,然后添加存储器即可,如下图所示:

将X-EBS整合的存储提供给ESXi主机使用,上图红框中的存储即为XSKY X-EBS所提供的存储

这套基于Dell PowerEdge FX2硬件、VMware vSphere虚拟化平台和XSKY X-EBS分布式存储的超融合系统就构建完成了。其中FX2提供了基础的计算和存储硬件(还有内部或外接交换机),vSphere整合了计算资源,X-EBS则整合了存储资源。整个超融合构建步骤看起来比较多,但过程并不复杂,而且主要集中在软件环节,就连FX2节点之间的存储硬件分配也只需动动鼠标即可,大幅简化了存储的安装和管理。

我仔细看了下时间,构建整套超融合系统真的只用了一个多小时,而且大部分时间都花在安装vSphere虚拟化平台之上,比如安装ESXi主机和vCenter服务器。如果这些虚拟化环境已经事先准备好,在其上部署X-EBS并构成一套简易的超融合系统,根本用不到一个小时。

“还发什么呆呢?我要锁门了哈!”不觉间龙哥已经站到了门口,一幅整装待发的样子。

走出房门,空气中弥漫着春天——哦不,初夏的气息。

原创粉丝点击