公司有幾台服務器,安裝的是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了,重新加載存儲。開始快樂的拷貝吧。
換一塊硬盤時就重復上述過程。