公司有几台服务器,安装的是ESXI5.0的虚拟机,原来使用的是普通的台式机,现在新购的专用服务器并安装的LSI 8708 SAS RAID卡(服务器自带的板载RAID卡ESXI不支持),现在要将虚拟机进行迁移。
本来最好的办法应该是挂载阵列,现将虚拟机移动到阵列中,然后再移到新的服务器上。但是公司的阵列中已经满了,没有足够的空间进行迁移。所以决定用最笨的办法,新服务器3块硬盘组RAID5(迁移完成后将扩展为4硬盘RAID5),台式机硬盘插在3号位组单盘RAID0,然后就是单机拷贝了。
办法到是没问题,但是每次换硬盘必需重启服务器,然后进web bios配置RAID,然后再重启进EXSI,太痛苦了。在晚上搜寻良久,找到完美方式如下:
1.让EXSI5.0中能看到LSI RAID卡状态
准备
ESXI5.0现在默认是不支持RAID卡的,因为移出了所有不必要的provider,所以必须先手动安装相应的vib驱动。我是在LSI官网下的驱动:00_37_V0_04_SMIS_VMware_Installer.zip。再下一个putty(其他 的SSH软件也可以),还有一个MegaCli,这个是我在IBM的网站中找到的。
安装VIB文件
将00_37_V0_04_SMIS_VMware_Installer.zip和MegaCli解压,打开vSphere client,然后将ESXI 5.0对应的VIB文件拷贝到虚拟机存储器中(我的叫datastore,你的是什么名字?)。然后在“配置->软件->安全配置文件->服务”中打开SSH服务。
打开putty,使用SSH登入服务器(IP,用户名还有密码不用我写了吧),接下来是命令行操作(习惯就好了)。
cp命令将两个文件copy到tmp目录:
cp /vmfs/volumes/xxxx(记得上面问你存储器叫什么吗?)/*.vib /tmp/
然后是安装:
cd /usr/bin esxcli software vib install -v /tmp/xxxxxxxxxx(一定要记得文件名,不过tab键是可以用的).vib --no-sig-check //这个要执行两次,因为我们有两个文件要安装。
执行成功是类似这样:
Installation Result Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective. Reboot Required: true VIBs Installed: LSI_bootbank_lsiprovider_500.04.V0.39-0006 VIBs Removed: VIBs Skipped:
看到了succ 和true基本就是安装完成了。然后就是重启ESXI服务器。
重启完成后你应该能在“配置->硬件->健康状况"中看到存储器的状态了,包括硬盘,电池等。
2.如何在线更换硬盘
IBM那个MegaCli干嘛的?本来我是想用MSM管理的,但是安装后死活搜寻不到服务器,于是放弃。所以转用MegaCli命令行管理。这个vib安装后,会在/opt/lsi/MegaCLI下生成可执行文件,不过有时候会无法执行,这时给它个权限就行了(继续putty SSH):
chmode -x MegaCli
将新硬盘插入3号位,然后运行:
cd /opt/lsi/MegaCLI/ MegaCli -PDList –a0 //所有磁盘信息
在输出信息中主要看Enclosure Device ID 是多少
然后看咱们新插入的硬盘():
MegaCli -pdInfo -PhysDrv[E0:S0] –a0 //E0就是咱们上一步记下的ID,S0是盘位,从0开始
有看到unconfigure good就没问题了。然后是在线创建R0:
MegaCli -cfgldadd -r0 [E0:S0] -wb -ra -cached -cachedbadbbu -force -a0
最后一步,回到vSphere client,在重新扫描存储适配器,然后就能看到你新建的VD了,重新加载存储。开始快乐的拷贝吧。
换一块硬盘时就重复上述过程。