サーバーを構築したら、どうしても気になるのが何かあった際のバックアップ。
ESXi構成(ホスト)のバックアップと構築した仮想サーバー(ゲスト)のバックアップ方法を紹介します。
今回はVMware vSphere Clientを使わず、SSHとvSphere CLIを利用したバックアップを行い、後々cronなどで定期実行できるようにします。
準備するもの
TeraTerm
TeraTerm等でESXiホストにSSH接続し、vSphere CLIのコマンドでゲストをバックアップします。
※VMware vSphere Clientでも代用可能。
VMware vSphere CLI
ホストの構成をバックアップする時のvicfg-cfgbackup
コマンドを使うのに必要です。
ゲストをバックアップする方法
1. 仮想マシンIDの取得とシャットダウン
まずはTeraTermでホストにSSH接続して、以下のコマンドを実行。
vim-cmd vmsvc/getallvms
バックアップを行う仮想マシンID(vmid)を覚えておき、次のコマンドで仮想マシンをシャットダウンします。
vim-cmd vmsvc/power.shutdown [仮想マシンID(vmid)]
2. フォルダの移動と対象ファイルの確認
データストアフォルダ内のバックアップ対象フォルダへ移動し、lsコマンドでファイルを確認します。
cd /vmfs/volumes/datastore1/[仮想マシン名(vmid)]/
※datastore1は構築時の設定によって異なる場合があります
以下の拡張子のファイルをバックアップ対象とします。
- ~.vmsd
- ~.vmxf
- ~.vmx
3. NASにバックアップ
scpコマンドを使って対象ファイルをNASへコピーします。
私の場合、ゲストOSにマウントしているHDDにバックアップしたかったので、以下のようなコマンドになりました。
scp server.vmx root@192.168.XXX.XXX:/mnt/nas/backup/
コマンド解説
scp [バックアップ対象ファイル名] [ファイルサーバーのユーザー名]@[ファイルサーバーのIPアドレス]:[保存先パス]
SSH経由でコピーするので、ファイルサーバーのパスワードを聴かれたら入力してください。
また、rootアクセス禁止している場合は別のユーザーを使いましょう。
ホストの構成をバックアップする方法
ホストはvSphere CLIを使用してバックアップします。
ちなみに、インストールして操作するOSはWindowsです。
vSphere CLIを起動してvicfg-cfgbackup
コマンドでホストの構成をバックアップします。
この時もファイルサーバに保存します。
vicfg-cfgbackup.pl --server=192.168.XXX.XXX --username=root --password=secret -s root@192.168.XXX.XXX:/mnt/nas/backup/esxi.tgz
コマンド解説
vicfg-cfgbackup.pl --server=[ホストのIPアドレス] --username=[ホストのユーザー名] --password=[ホストのパスワード] -s [ファイルサーバーのユーザー名]@[ファイルサーバーのIPアドレス]:[保存先パス][バックアップファイル名]
詳細やリストアする方法は、以下の参考サイトまたはネットにたくさん情報がありますので、そちらをどうぞ。
VMware vSphere Clientを使ったESXiホストのバックアップはこちらから!
- Original:https://minory.org/esxi_backup.html
- Source:Minory
- Author:管理者