赞
踩
您的ISCSI够快吗?
iSCSI是项极其优秀的技术。iSCSI让用户得以用非常廉价而简易的方式来构建SAN,而无需具备FibreChannel的专业知识或耗费巨资去购置Fibre Channel的设备。只需唾手可得的网络设备,在现有的设备上添加存储设施即可。就算再上升到“发烧友”的级别,要构建共享访问、集群或其他高端性能也都可以轻松实现。
许多厂商都提供大致免费的iSCSI目标(现在的Windows服务器中甚至就有一个),并且,几乎每个操作系统都有一个免费的软件启动器与这些目标相连。虽然我们可以喋喋不休地争辩到底软件启动器和硬件启动器孰优孰劣,但一个不争的事实是,软件启动器十分有效,故而大多数iSCSI硬件启动器的厂商都已经自动退出了竞争。
初次接触这些概念的看官们,这里先解释一下。“目标”所指的是带有存储的机器,而“启动器”则指的是通过网络与该存储设备相连的机器。一目了然吧?
我已经把iSCSI的概念大幅简化了一番,再来看看它的性能表现吧。多数任务iSCSI都应付有余,但根据我个人的经验,它在随机读/写方面尚嫌不足——原因是小尺寸的读和写会带来很可观的网络开销。
那么,有什么办法来解决这个难题呢?
是不是花费千百万的巨款购置声名赫赫的某家厂商的高大上的iSCSI目标——其实该设备远远超出了你的需求?还是,将随机读和写高速缓存到启动器这边,好让那些经常访问到的小块实际上无需在iSCSI网络中来回传送?
后一种方案看上去很有吸引力,而事实上也非常易于实现。Adaptec by PMC有一款名为maxCache Plus的产品,即是一款进行高速缓存和分层的软件,已经内置于所有8系列“Q”控制器(如8885Q)之内。在发布该软件的当前版本之先,缓存还只能针对与控制器相连的设备进行,而iSCSI目标肯定不在其列。但是,现在有了“maxCache Plus”,就可以对服务器中任何存储进行缓存或分层操作,其中也包括iSCSI目标,这些目标其实就是位于网络中某处的盘片,只是以服务器中盘片的形式呈现着。
那么,现在来插入一块8Q控制器,连上一块或多块SSD(甚至无需做成RAID——只需将其当成单个裸盘使用),然后在现有的逻辑设备(盘片)上加上缓存即可——运用我们称之为“CachedLD”(高速缓存的逻辑设备)功能。
该逻辑设备既可以是iSCSI目标、主板上的一个板上RAID阵列,亦或甚至是RAID卡竞争厂商的RAID阵列……此外,它还有一个重大优点,就是无须重新配置服务器上的现有数据,或对服务器配置进行任何修改!听起来难以置信吧?!但其实际的工作方式正是如此便捷平滑。
事实上,与其购置昂贵的iSCSI方案,您大可以采用廉价的硬件加上基本免费的软件来创建自己的iSCSI目标——构造一个价格非常低廉的网络存储解决方案——然后在服务器上进行随机读写的加速。我们当然希望您会在自己搭建的iSCSI盒子里采用Adaptecby PMC的 RAID卡。但不言而喻的一点是,您势必会采用免费的Linux软件RAID。不论如何,开始动手吧!
顺便提一句,SSD如果坏掉了(当采用单个SSD时)会发生什么呢?——您的数据绝对毫发无损!——仅仅会回到安装高速缓存之前的原始性能——CachedLD决不会破坏您的数据!
iSCSI is a great technology. Itgives you the ability to create SANs very cheaply and easily, without having tobecome a guru in Fibre Channel or put yourself into deep debt buying all the Fibre equipment. By using easily available networking equipment, you can add storage to existing boxes, even if you want to go crazy and do shared access,clustering or other high-end features.
A lot of vendors provide basically free iSCSI targets (there’s even one in Windows Server these days),and almost every OS has a free software initiator to connect to those targets.Yes, we can bang on about whether software or hardware initiators are better, but software initiators are free and work so well that most iSCSI hardware initiator vendors have stopped bothering.
For the uninitiated, a targetis the machine with the storage, and an initiator is the machine connecting across the network to that storage – simple (if you say it quickly, but in reality it’s not that hard these days).
So now that I’ve oversimplified iSCSI, let’s look at its performance. It’s pretty good for most things, but inmy experience suffers in the random read/write area – small read and writes carry quite a bit of network overhead, etc.
So what can be done about that?
Hmmm … spend millions with a big-name vendor on a super-duper iSCSI target that’s more than you need, or …cache the random reads and writes at the initiator end, so that those small,frequently used blocks don’t actually travel back and forth across the iSCSInetwork.
The latter sounds very attractive, and in fact it is very easy to achieve. Adaptec by PMC has a product calledmaxCachePlus, which is caching and tiering software, and is built into all 8 Series “Q” controllers (e.g. 8885Q). Now prior to this version of the software that works with these controllers, caching only worked on devices attached to the controller, which an iSCSI target definitely isn’t. However now with“maxCache Plus”, you can cache or tier any storage in your server, including iSCSI targets that are in fact disk drives sitting somewhere out on thenetwork, but just appear to be drives inside the server.
So…plug in an 8Q controller,connect 1 or more SSDs (you don’t even need to make them RAID – you can usethem as single raw disks), then add caching to an existing logical device(disk) – using what we call “CachedLD” (Cached Logical Device).
That logical device can be aniSCSI target, an on-board RAID array off the motherboard, or even a RAID array from a competing RAID card vendor … and did I mention that you don’t need to reconfigure the existing data on the server, or make any changes to the server configuration? That sounds too good to be true, but in fact it works seamlessly.
You could in fact make your owniSCSI target using inexpensive hardware and pretty much free software to create a very affordable network storage solution – then accelerate the random readsand writes to that locally in your server, rather than spending a fortune in the iSCSI arena. Hopefully you’ll use an Adaptec by PMC RAID card in that iSCSI box, but more than likely you’ll use free Linux software RAID – what the heck, just do it.
By the way … what happens if the SSD fails (in the case of using a single SSD) – absolutely nothing to your data – you just go back to original performance before installing caching –CachedLD cannot hurt your data.
Now that’s something to think about.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。