VMware vSphere CLI 5.1を使用してのHost Configuration Fileのリストアがどうしても出来なかったので、今度はvMA5.0からのリストアに挑戦です
手順としてはBackup VMware ESXi 5.0 Host Configurationの逆のリストアになります
- sshでvMA5.0にLogin
- vMAにFreeNASのnfs共有領域を接続
- サーバを登録
- ターゲットを指定
- Host Configuration File Restore
- -f Option
- 新規ESXi 5.1でサーバ起動
- VMのVMware Tools Update
sshでvMA5.0にユーザ vi-adminでログインします
Host Configuration Fileのバックアップを保存してあるFreeNASのnfs領域を接続します
vi-admin@vma5:~> sudo mount -t nfs 192.168.1.10:/mnt/data /FreeNAS
新規にインストールしたESXi 5.1を登録します
vi-admin@vma5:~> vifp addserver 192.168.1.20
root@192.168.1.20’s password:vi-admin@vma5:~> vifp listservers
vmesxi.rootlinks.net ESXi
192.168.1.20 ESXi
メンテナンス対象サーバを指定します
vi-admin@vma5:~> vifptarget -s 192.168.1.20
vi-admin@vma5:~[192.168.1.20]>
ホスト構成情報をリストアします。しかしエラーでリストアできませんでした。やはり有償ライセンスを購入しないとバックアップはできてもリストアはできないのでしょうか(;_;)
vi-admin@vma5:~[192.168.1.20]> vicfg-cfgbackup -l /FreeNAS/VMwareESXi_Backup/vmesxi51.cfg
The restore operation will reboot the host.
Type ‘yes’ to continue:
yes
Uploading config bundle to configBundle.tgz …
Performing restore …
Restore failed: fault.MismatchedBundle.summary
Exiting maintenance mode …
vi-admin@vma5:~[192.168.1.20]>
試しにサーバ192.168.1.20をメンテナンスモードにして再度実行してみましたがリストアできませんでした
vi-admin@vma5:~[192.168.10.20]> vicfg-cfgbackup -l /FreeNAS/VMwareESXi_Backup/vmesxi51.cfg
The restore operation will reboot the host.
Type ‘yes’ to continue:
yes
Uploading config bundle to configBundle.tgz …
Unable to enter maintenance mode: The operation is not allowed in the current state.. Please ensure no virtual machines are running on the host and retry the operation again.
vi-admin@vma5:~[192.168.1.20]>
何となくダメ元で強制的にリストアする -f Optionを追加してみました
vi-admin@vma5:~[192.168.1.20]> vicfg-cfgbackup -f -l /FreeNAS/VMwareESXi_Backup/vmesxi51.cfg
Enter username: root
Enter password:
The restore operation will reboot the host.
Type ‘yes’ to continue:
yes
Uploading config bundle to configBundle.tgz ..
Performing restore ….
vi-admin@vma5:~[192.168.1.20]>
取り敢えずホスト構成情報がリストアできたようで、新規インストールしたESXi 5.1が再起動しました
新規インストールしたESXi 5.1のUSBメモリで本稼働用サーバを起動します。エラーも無くモジュールが読み込まれ起動してきました
その他ライセンス情報やネットワーク情報、登録VMなど特に問題もなく現在順調に稼働しています
しかしFree Licenseだからいろいろ制限があるのは仕方ないとしても、出来ることと出来ないことが明確(私が不勉強なだけ?)でないので苦労しますね
参考
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
vi-admin@vma5:~> vicfg-cfgbackup --help Synopsis: /usr/bin/vicfg-cfgbackup OPTIONS [<backupfile>] Command-specific options: --force -f Force the restore of the configuration. --load -l Restore configuration onto the host --quiet -q Do not prompt for user confirmation. --reset -r Resets host, restore to factory settings. --save -s Backup the host configuration. Common VI options: --config (variable VI_CONFIG) Location of the VI Perl configuration file --credstore (variable VI_CREDSTORE) Name of the credential store file defaults to <HOME>/.vmware/credstore/vicredentials.xml on Linux and <APPDATA>/VMware/credstore/vicredentials.xml on Windows --encoding (variable VI_ENCODING, default 'utf8') Encoding: utf8, cp936 (Simplified Chinese), iso-8859-1 (German), shiftjis (Japanese) --help Display usage information for the script --passthroughauth (variable VI_PASSTHROUGHAUTH) Attempt to use pass-through authentication --passthroughauthpackage (variable VI_PASSTHROUGHAUTHPACKAGE, default 'Negotiate') Pass-through authentication negotiation package --password (variable VI_PASSWORD) Password --portnumber (variable VI_PORTNUMBER) Port used to connect to server --protocol (variable VI_PROTOCOL, default 'https') Protocol used to connect to server --savesessionfile (variable VI_SAVESESSIONFILE) File to save session ID/cookie to utilize --server (variable VI_SERVER, default 'localhost') VI server to connect to. Required if url is not present --servicepath (variable VI_SERVICEPATH, default '/sdk/webService') Service path used to connect to server --sessionfile (variable VI_SESSIONFILE) File containing session ID/cookie to utilize --url (variable VI_URL) VI SDK URL to connect to. Required if server is not present --username (variable VI_USERNAME) Username --verbose (variable VI_VERBOSE) Display additional debugging information --version Display version information for the script |