201506240921[vmware] ESXi 設定參數備份與還原 - ESXi 5.5 2042141

自從使用 USB隨身碟來運作 ESXi 後,心裡隱隱的擔心那隻隨身碟不知道何時會掛點。掛點後的ESXi 復原該如何以最快速的方式恢復呢?復原當然就是備份與還原,今天要說的就是利用 vSphere CLI 來做 ESXi 的 configuration 設定備份與還原。

通常我們會以 vsphere client  或 web 來連接到 ESXi 或 vCenter,但是要施行設定檔的備份與還原,就必須額外安裝 vSphere CLI for vSphere 5.5vSphere Power CLI

相關的 vSsphere 都可以到這「https://my.vmware.com/web/vmware/info/slug/datacenter_cloud_infrastructure/vmware_vsphere/6_0 」去尋找相關下載資源(要注意你所需要的版本,左邊的連結是 6.0版的)。

關於 vSphere CLI 的指令說明介紹:http://pubs.vmware.com/vsphere-55/index.jsp?topic=%2Fcom.vmware.vcli.ref.doc%2Fvcli-right.html 

-------

#安裝 VMWare vSphere CLI for Window#

基本上都是下一步神功就完成了,所以就不多做解釋了

安裝 CLI 會連帶自動裝 ActivePerl 

該軟體會被預設安裝在 C:\Program Files (x86)\VMware\VMware vSphere CLI\

-----------------------------------------------------------------------------------------

#使用 vSphere CLI 備份與還原# - 使用指令 vicfg-cfgbackup.pl

備份:
1. 開啟 命令提示字元(DOS視窗)
2. 切換目錄路徑到  cd  C:\Program Files (x86)\VMware\VMware vSphere CLI\bin
3. 執行備份
指令格式:vicfg-cfgbackup.pl   --server=ESXi_host_IP_address   --username=root   -s   output_file_name
舉例:C:\Program Files (x86)\VMware\VMware vSphere CLI\bin> vicfg-cfgbackup.pl --server =140.113.1.1 --username=root -s c:\temp\ESXi_113_backup.cfg
Enter password:
Saving firmware configuration to c:\temp\ESXi_113_backup.cfg ...
......產出....類似底下這種看不懂得檔案內容

 

從 vSphere Client 會看到底下的訊息

還原:
1. 關閉該 ESXi 上所有 Guest OS
2. 指令格式:vicfg-cfgbackup.pl  --server=ESXi_host_IP_address  --username=root  -l  backup_file
舉例:使用參數 -l 還原
vicfg-cfgbackup --server=140.113.1.1 --username=root -l  c:\temp\ESXi_113_backup.cfg

C:\Program Files (x86)\VMware\VMware vSphere CLI\bin>vicfg-cfgbackup.pl --server =140.113.1.1 --username=root -l c:\temp\ESXi_113_backup.cfg
Enter password:
The restore operation will reboot the host. Type 'yes' to continue:
yes    
Uploading config bundle to configBundle.tgz ...
Performing restore ...
然後主機就重新開機了

註1:確認的時候 yes 要輸入完整,只輸入 y 或 Y 是不接受的。
註2:若你這台 ESXi 是在 VCenter  裡頭,代表你加入VC時已經輸入序號,當備份檔還原回去的時候,其 ESXi 主機的 SHA1 thumprint 必定不會相同於還原前的 ESXi ,所以這會造成重新開機後,VC還是會顯示這台ESXi 為「not responding」,所以在 VC 上需要重新加入這台 ESXi ,並且重新設定 License Key。  -- 20150904 updated.

重新加入 VCenter 重新指定 License Key

第二個錯誤 xxx esx.problem.syslog.nonpersistent.formatOnHost not found xxx 可以使用「http://blog.xuite.net/tolarku/blog/315609038 」來解決

 

 

#使用 vSphere Power CLI 備份與還原# - 使用指令 Get-VMHostFirmware 與 Set-VMHostFirmware

備份:
備份指令格式:Get-VMHostFirmware   -VMHost ESXi_host_IP_address   -BackupConfiguration   -DestinationPath   output_directory
舉例:Get-VMHostFirmware  -VMHost 140.113.1.1  -BackupConfiguration  -DestinationPath  C:\temp

還原:
1. 進入維護模式 maintenance mode:Set-VMHost -VMHost ESXi_host_IP_address -State 'Maintenance'
2. 還原指令格式 Set-VMHostFirmware  -VMHost ESXi_host_IP_address  -Restore  -SourcePath backup_file  -HostUser  username  -HostPassword  password 
舉例:Set-VMHostFirmware -VMHost 140.113.1.1 -Restore -SourcePath c:\temp\backup_filename.tgz -HostUser root -HostPassword your_Password

 

#使用 vSphere ESXi CLI 備份與還原# - 使用指令 vim-cmd
備份:
指令:vim-cmd  hostsvc/firmware/backup_config    匯出的內容會儲存在  /scratch/downloads 檔名為 configBundle-<HostFQDN>.tgz

還原:

1. 進入維護模式 maintenance mode:vim-cmd hostsvc/maintenance_mode_enter
2. 將之前備份出來的 configuration file 複製 /tmp
3. 還原指令
    vim-cmd  hostsvc/firmware/restore_config    /tmp/configBundle-<HostFQDN>.tgz

 

Reference:
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2042141 

~End

-----------------------------------------------------

實際測試過程
1. 在 Windows 上 - 安裝 vSphere CLI
2. 在 Windows 上 - 執行備份設定檔 
3. 在 ESXi 主機 - 拔除主機上硬碟模擬硬體故障
4. 在 ESXi 主機 - 使用USB隨身碟(SanDisk Ultrafit USB 3.0 32GB),並將ESXi 安裝於其中 (過程約35分鐘,含3次重開機)
5. 在 ESXi 主機 - 設定 IP 與 root 密碼
6. 在 Windows 上 - 執行還原設定檔
7. 在 ESXi 主機 - 還原會自動 reboot (使用USB隨身碟,從開始載入 ESXi 到登入畫面,大約97秒)
8. 在 Windows 上 - 使用 vSphere client 登入檢查相關設定 - 確認設定都OK
9. 解決錯誤訊息 - 因為儲存空間異動的問題
   esx.problem.coredump.unconfigured2.formatOnHost not found 找不到 coredump 儲存空間
   esx.problem.syslog.nonpersistent.formatOnHost not found xxx

 

會遭遇什麼問題
1. 因為我是使用隨身碟取代原本的硬碟,在開機過程會卡在 Raid 卡一段時間,第一次開機也會出現錯誤燈
2. 「再」把原硬碟插回去會有什麼問題? Raid 出錯? ESXi  出錯?
待測試.......

 

QQ:假設原本的RAID硬碟有4顆,拔除3顆 剩1顆硬碟後重建 Raid Lun,建置完RAID後再增加1顆會怎樣?
ANS: 在原本的LUN裡會看不到新增的硬碟,即使把LUN打掉也看不到
不是硬碟壞掉、不是插槽位置問題,是新增的硬碟被 Raid 卡認為這是外來 Foreign 的硬碟,而藏起來不給用,必須到 Foreign 功能頁去刪除這新硬碟原有的設定,才能被新的LUN給加入。

回應
Google Search
Google
累積 | 今日
loading......
平均分數:0 顆星
投票人數:0
我要評分:
Google