これでvSphere入らず!コマンドでESXi のスナップショットを取る方法

2017/05/16

23593

今回はESXi CLI(ESXi のコマンドライン)上で仮想マシンのスナップショットと丸ごとバックアップを取る方法のメモ。

ESXiはひとつのサーバで複数のOSを実行できるのがウリなんだけど、ひとつのサーバになるってことは機器障害に弱くなるってこと。HDDとか電源とか。大規模な機器構成なら冗長化すれば問題ないけど、個人所有であればそうはいかない。

自分が寝ててもちゃんとバックアップを作ってくれる環境を作り上げるのが今回の目的です。

目次

ESXi CLIでスナップショットを取得する

まず最初にスナップショットから取得します。
これを実行しないと、起動中の仮想マシン(ゲストOS)のvmdkのコピーが取れない。

■スナップショットの取得
# vim-cmd vmsvc/snapshot.create 仮想マシンID(vmidと呼ばれる数字)

■スナップショットの削除
# vim-cmd vmsvc/snapshot.removeall 仮想マシンID(vmidと呼ばれる数字)

仮想マシンを指定するにはvmidという番号が必要です。仮想マシン名やホスト名は使えません。

vmidは仮想マシン(ゲストOS)を再起動する度に変化するIDなので数値固定だと上手く動作しない時があります。なので動的にvmidを取得しないといけません。

以下のコマンドで動的にvmidを取得できます。
# vim-cmd vmsvc/getallvms | awk '/仮想マシン名とか抽出キーワード/ {print $1;}'

組み合わせて使うこともできます。
# vim-cmd vmsvc/snapshot.create vim-cmd `vmsvc/getallvms | awk '/仮想マシン名とか抽出キーワード/ {print $1;}'`

Gumroad で無料配布中です。

他にできること

vim-cmdでできることは他にもたくさんあります。
自分はこれくらいしか使ったことがないのですが、他に便利な使い方があれば知りたいですね。

~ # vim-cmd vmsvc
Commands available under vmsvc/:
acquiremksticket                 get.snapshotinfo
acquireticket                    get.spaceNeededForConsolidation
connect                          get.summary
convert.toTemplate               get.tasklist
convert.toVm                     getallvms
createdummyvm                    gethostconstraints
destroy                          login
device.connection                logout
device.connusbdev                message
device.disconnusbdev             power.getstate
device.diskadd                   power.hibernate
device.diskaddexisting           power.off
device.diskremove                power.on
device.getdevices                power.reboot
device.toolsSyncSet              power.reset
device.vmiadd                    power.shutdown
device.vmiremove                 power.suspend
devices.createnic                power.suspendResume
disconnect                       queryftcompat
get.capability                   reload
get.config                       setscreenres
get.config.cpuidmask             snapshot.create
get.configoption                 snapshot.dumpoption
get.datastores                   snapshot.get
get.disabledmethods              snapshot.remove
get.environment                  snapshot.removeall
get.filelayout                   snapshot.revert
get.filelayoutex                 snapshot.setoption
get.guest                        tools.cancelinstall
get.guestheartbeatStatus         tools.install
get.managedentitystatus          tools.upgrade
get.networks                     unregister
get.runtime                      upgrade


関連記事

シェア訴求文言

-VMware
-, , ,