《服务器RAID-硬盘容量扩展》由会员分享,可在线阅读,更多相关《服务器RAID-硬盘容量扩展(32页珍藏版)》请在金锄头文库上搜索。
1、Extend - Dell近来遇到了服务器磁盘空间不够的问题,短期内无法更换服务器硬件,只能采购更大容量的硬盘,所以研究了一下如何扩展服务器RAID 硬盘容量,而又不需要重新安装OS和应用,这样就不必影响对业务和用户。手头的都是Dell 的服务器,还有一些HP的老机器,分别作了一些研究和测试,最后在生产环境中成功完成,记录在此。首先,有两个名词 Extend,Expand,中文翻译过来都差不多,但是用在RAID 容量扩展上,分别特指不同的的功能,Dell,HP的文档中都相同 (应该是RAID adapter 供应商的通用标准名词吧), 所以我特意将blog的标题中的名词用英文表示,以做区别。1
2、. Extend - 这是指已经做好的RAID中,不增加或删除硬盘,而是更换为更大容量的硬盘,然后将RAID扩展到所有可用磁盘空间,例如 下面例子中的 RAID1 的 两个 73G硬盘,先热插拔更换一个为更大的300G硬盘,等RAID 恢复完成 (只使用300G上的73G),再热插拔另一块。待这块RAID 恢复也完成的时候(两个300G 硬盘上各只使用了73G 做RAID1),扩展RAID1 到整个2*300G。2. Expand - 这是向现有的RAID 中加入或者删除容量完全相同的硬盘,来调节RAID 磁盘空间的方法。 例如,向现有 RAID1 的 2*73 G中再加入两块73G硬盘。 当
3、然最好是品牌,规格于RAID中原来的硬盘完全相同的,如果稍有差异也可以。 expand 有个特殊之处就是可以在expand的过程中改变RAID,例如 从原来的 RAID 1 2*73G 变成 RAID5 4*73G,或者 RAID10 4*73G。 如果原来是 RAID5 4*73G 也可以通过expand 拿两块硬盘出来变成 RAID1 2*73G.- 相比而言,因为硬盘的每个批次总是不同,不同厂商的硬盘同规格的也有不少差异,而且技术总是在不断进步,容量,速度一直在提升,而服务器不太可能频繁变更容量和RAID类型,所以相对而言,当你需要扩展RAID容量的时候,通常Extend 要比 Expa
4、nd更加实用些。- Dell 的 PERC 系列RAID卡,原本就是 PowerEdgeExpandableRAID controller, 看了Dell 的硬件说明书和论坛,都强调了 expand 功能,都没有提 Extend,个别文章干脆说不支持 extend。 在网上搜了一些资料,后来找到了Dell PERC 卡实现 extend的变通的方法- HP 的 SA 系列卡,看具体型号,有些支持expand,有些不支持expand (个人总结下来,貌似主板集成的RAID卡都不支持 expand,独立的RAID卡都支持 expand),而对 extend,无论SA那个型号都是支持的。- 对比 D
5、ell PERC的 extend 实现 和 HP SA 的extend 实现,HP SA上不需要down机,全部可以在线完成。 Dell PERC 需要重启机器一次进入 RAID BIOS 设置。对服务器应用环境,这个重启可能有一些影响,尤其对生产服务器。下面是 Dell 2950 (PERC 5i) 上实现 Extend 的方法,已经说过了,以 2 * 73G RAID 1 扩展到 2*300G RAID 1 为例,其它RAID 形式也是一样的。对于其它的 PERC 5e,6i,6e, H700,H800操作流程都相同,因为它们只是硬件规格更加强大,增加了一些功能特性,原本的基本功能特性并未
6、变化。这是 Dell OpenManage server administrator 中的初始状态, 2 *73G 形成 一个 RAID11. 热插拔更换第一块硬盘,这个硬盘状态变成 rebuilding,在恢复RAID2 点击“full view“可以看见rebuilding的进度3 Rebuild 完成,这个更换的硬盘变成online,但是实际使用的还是73G,而可用的RAID 磁盘空间是04 下图是event log中的rebuild完成的相关记录5 同样方法更换第二块硬盘。注意这时,可用RAID磁盘空间变成了 211G。6 这时就可以开始Extend了。重启机器, Control-R
7、进入 PERC 配置界面7 删除原来的 VD看见下面这个警告框,别理它,数据不会丢的,当然你的操作要严格按照下面的流程进行。点击ok,删除VD08 然后新建一个VD,不要使用reset config9 在这新替换上去的两块300G硬盘上同样建立RAID1(这个不能改),选中两块硬盘,VD名称也要相同,ok。 如果是RAID5,RAID10之类,注意:选择几块硬盘,哪些硬盘来加入RAID 必须和之前被删除的VD0完全一样。10 这时会提示需要 initialize。这里要特别注意: initialize 就意味着磁盘上的数据全部被擦除 - 这是真的擦除,不是警告。点击ok 后,initializ
8、e 会自动开始,没有取消的地方。但因为不是 fast initialize,而是标准的initialize 所以速度很慢。立即按ESC键取消initialize ,重启server(RAID 卡会rollback 已经做的那部分initialize,所以不会有任何数据丢失), 这个警告信息本身也说明了这一点: unless you are .11 进入OS,这时那多出来的211G磁盘空间就可以看见了12 使用diskpart来extend, 然后立即就可以使用了。 图例中是在一个 Win 2008 R2 server 进行的,实际上diskpart 的 Extend 在 Win 2000 SP
9、3 和以上的 windows 上都可以工作。需要注意的是,只有和可用空间相邻的那个volume 可以被extend,而且不能是系统分区,不能有引导文件,page file 等等,必须是纯数据卷。 当然,只要规划管理到位,一般OS分区是不会有磁盘空间问题的,通常都是数据增长过快导致的数据分区(卷)磁盘空间不够,所以这个extend其实还是很实用的Extend - HP这是接上次 “服务器RAID 硬盘容量扩展 Extend - Dell” 的后续记录。这次是 HP server (Smart Array 系列 RAID 卡) 的 Extend。 后面还会有有 Dell 和 HP的 Expand
10、的操作流程记录。 因为实际工作中没有用到过其它品牌和型号的服务器,所以其它服务器上如何操作 Extend 和 Expand 建议参考硬件手册或者问询供应商。根据经验,Extend 和 Expand 这些功能都和 RAID 卡的功能特性紧密相关,和具体哪个品牌或者型号的服务器倒是关系不大。 Dell 的 PERC 一直都是 LSI 系列的 RAID 芯片和卡,HP的貌似一直都是 Adaptec 系列的,所以我的文章就直接写 。- Dell 。- HP了。 IBM 的server上 RAID 卡好像名字叫 ServerRAID,没用过不了解芯片如何,有知道的朋友自己研究吧。本文是一个旧 HP se
11、rver上做的实验,2 * 36 G RAID 1 Extend 为 2*300G RAID1. 这个机器的RAID卡是主板上集成的 SA 6i,其它HP的 SA卡也都支持 extend,包括很多比6i 还要古老的多的卡,有人说曾经在10多年前的 Proliant 3000 做过 Extend. 真是强的无语。1. 这是HP system management homepage 中 热插拔第一款硬盘,并且RAID 恢复完成后的的状态。RAID 容量还是36G2. 这是 event log 中的 相关记录3。 这是两块硬盘都更换完毕,而且 RAID 已经恢复后的状态,左侧列出的其它物理硬盘是属于
12、另一个 logical drive 也就是另一个RAID的,和本次 Extend操作无关。4. 启动 HP ACU (array configuration utility),会发现,这个RAID下多了 “unused space。” 右侧 common tasks 中多了 “Extend size” 选项。5. 点击 “Extend”, 提示你输入Extend后的磁盘空间大小。上限当然就是300G物理容量限制,这里是测试,所以输入102400,也就是100G。 点击ok,HP ACU 会提示只要要有 Win 2000 SP3 才能支持 Extend,否则动态磁盘会无法工作。基本磁盘总是能正常
13、工作的。 点击 ok6. 再点击save 确认修改,HP ACU 会再次警告,点击ok7. 看见那个黄色惊叹号的 status message,点击会跳出提示,告诉你正在extend操作,这个操作是 RAID 卡在底层 online 操作的,实际花费的时间看你的RAID磁盘大小和数量多少。这个 2 * 300G的 RAID 用了大约6-7个小时。 好在它是底层online操作的,我们实际已经可以使用这扩展出来的容量了,只是RAID卡还没完成操作,所以I/O性能还没有恢复。ok, 可以关掉 HP ACU了。8。 因为extend 到100G,所以可用磁盘空间是100G 减掉原来的36G (实际是
14、33G),结果就是66G9. diskpart.exe 来将E: 盘扩展利用这新的66G空间。这是最后的结果了。 整个过程服务器不需要down机或者重启,全部online完成。顺带说一句,上篇 Dell Extend 忘记说了, diskpart 只能在 NTFS 分区上才能extend ,这个应该是常识了,MS的很多东西都只能在 NTFS上才能工作。服务器RAID 硬盘容量扩展 Extend 操作失误的应急方法前两个blog 分别描述了 Dell 和 HP 系列服务器通过 Extend 方法来扩展RAID 磁盘容量的方法。只要稍加注意,在生产环境中操作之前先在测试环境中稍加练习就会熟悉流程,
15、而不至于操作失误。 至少作的几个案例都工作的很好。 本文只是提供了在 某些我们尚不知晓的极端情况下,如果Extend 过程中失败,如何快速恢复原有系统的方法。 这样,至少应该可以打消很多人对于 Dell PERC 没有官方支持 Extend 带来的不安。对于恢复操作,最重要的当然就是在Extend 过程中被替换掉的那些原来的硬盘了。它们构成了恢复的基础,只要数量,顺序(哪个硬盘在哪个槽位中)都正确,不混乱,则可以很容易的迅速恢复原有系统。而且根据我的测试,即使个别硬盘缺失,只要RAID 冗余尚能重建数据,就仍然可以恢复所有数据。下面来详细说明。1. Dell, 对于Dell PERC,Extend失败时,RAID BIOS中的 virtu