LoginSignup
15
17

More than 5 years have passed since last update.

WMwareESXiでvmdkファイルのバックアップしてみた

Posted at

今回は、ホットバックアップの手順を確認してみる。
やり方としては、
 ①スナップショット取得
 ②vmdkファイルのコピー(バックアップ)
 ③スナップショットの削除

通常、OS起動状態だとvmdkファイルが握られたままになるので、静止点でのバックアップが取得できない。
このため、スナップショット取得して一時的にvmdkファイルをはずした状態でバックアップをとる作戦。
この辺は、vmdkファイルがどうのこうのは仕様によるもの。
詳しくは下記。
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2080293

1. VMware ESXi環境の構築

こちらのサイトを参考に環境構築。
http://vm.study234.com/archives/336

ちなみに今回は、CentOSではなくWindowsServer2012をゲストとしてインストール。

2. vmdkファイルのバックアップを取得

※今回の作業は、OSを起動した状態で行う。

2.1. 対象ゲストマシンの構成ファイルを確認

~# ls -lh [datastore]/[hostname] 
~ # date;ls -lh /vmfs/volumes/datastore1/WindowsServer2012/
Sun Dec 13 00:45:37 UTC 2015
total 46254096
-rw-------    1 root     root        4.0G Dec 13 00:44 WindowsServer2012-0cccb183.vswp
-rw-------    1 root     root       40.0G Dec 13 00:45 WindowsServer2012-flat.vmdk
-rw-------    1 root     root        8.5K Dec 13 00:44 WindowsServer2012.nvram
-rw-------    1 root     root         478 Dec 13 00:44 WindowsServer2012.vmdk
-rw-r--r--    1 root     root           0 Dec 12 11:19 WindowsServer2012.vmsd
-rwxr-xr-x    1 root     root        2.8K Dec 13 00:44 WindowsServer2012.vmx
-rw-------    1 root     root           0 Dec 13 00:44 WindowsServer2012.vmx.lck
-rw-r--r--    1 root     root         272 Dec 12 11:19 WindowsServer2012.vmxf
-rwxr-xr-x    1 root     root        2.8K Dec 13 00:44 WindowsServer2012.vmx~
-rw-r--r--    1 root     root      294.8K Dec 12 16:44 vmware-1.log
-rw-r--r--    1 root     root      299.5K Dec 13 00:30 vmware-2.log
-rw-r--r--    1 root     root      195.7K Dec 13 00:32 vmware-3.log
-rw-r--r--    1 root     root      169.6K Dec 13 00:44 vmware.log
-rw-------    1 root     root      109.0M Dec 13 00:44 vmx-WindowsServer2012-214741379-1.vswp
~ # 

2.2. スナップショットを取得する

~# #VMIDを確認する
~# vim-cmd vmsvc/getallvms
~# vim-cmd vmsvc/snapshot.create [VMID] [Snapshotname] 
~ # date;vim-cmd vmsvc/getallvms
Sun Dec 13 00:46:12 UTC 2015
Vmid         Name                                  File                                 Guest OS          Version   Annotation
2      WindowsServer2012   [datastore1] WindowsServer2012/WindowsServer2012.vmx   windows8Server64Guest   vmx-08              
~ # 
~ # date;vim-cmd vmsvc/snapshot.create 2 test
Sun Dec 13 00:47:42 UTC 2015
Create Snapshot:
~ # 

★Snapshotを取得すると、構成ディレクトリ内がこんな感じになる

/vmfs/volumes/566b9be2-c949e6ff-4129-000c2968e986/WindowsServer2012 # ls -l
total 46256144
-rw-------    1 root     root         86016 Dec 13 00:47 WindowsServer2012-000001-delta.vmdk    ★差分ファイル
-rw-------    1 root     root           337 Dec 13 00:47 WindowsServer2012-000001.vmdk       ★差分ファイル
-rw-------    1 root     root     4294967296 Dec 13 00:44 WindowsServer2012-0cccb183.vswp
-rw-------    1 root     root         28412 Dec 13 00:47 WindowsServer2012-Snapshot1.vmsn
-rw-------    1 root     root     42949672960 Dec 13 00:47 WindowsServer2012-flat.vmdk
-rw-------    1 root     root          8684 Dec 13 00:48 WindowsServer2012.nvram
-rw-------    1 root     root           478 Dec 13 00:44 WindowsServer2012.vmdk
-rw-r--r--    1 root     root           386 Dec 13 00:47 WindowsServer2012.vmsd
-rwxr-xr-x    1 root     root          2888 Dec 13 00:47 WindowsServer2012.vmx
-rw-------    1 root     root             0 Dec 13 00:44 WindowsServer2012.vmx.lck
-rw-r--r--    1 root     root           272 Dec 12 11:19 WindowsServer2012.vmxf
-rwxr-xr-x    1 root     root          2881 Dec 13 00:47 WindowsServer2012.vmx~
-rw-r--r--    1 root     root        301871 Dec 12 16:44 vmware-1.log
-rw-r--r--    1 root     root        306646 Dec 13 00:30 vmware-2.log
-rw-r--r--    1 root     root        200381 Dec 13 00:32 vmware-3.log
-rw-r--r--    1 root     root        180054 Dec 13 00:49 vmware.log
-rw-------    1 root     root     114294784 Dec 13 00:44 vmx-WindowsServer2012-214741379-1.vswp
/vmfs/volumes/566b9be2-c949e6ff-4129-000c2968e986/WindowsServer2012 # 

2.3. vmdkファイルをコピー(バックアップ)

※vmdkファイル以外は適宜SCPコマンドやCPコマンドにて退避する

~# vmkfstools -i [datastore]/[hostname]/[hostname].vmdk -d monosparse [datastore]/tmp[hostname]_bkupYYYYMMDD.vmdk
/vmfs/volumes/566b9be2-c949e6ff-4129-000c2968e986/WindowsServer2012 # date;vmkfstools -i /vmfs/volumes/datastore1/WindowsServer2012/WindowsServer2012.vmdk -d monosparse /vmfs/volumes/datastore1/tm
p/WindowsServer2012_bkup20151213.vmdk;date
Sun Dec 13 00:58:57 UTC 2015
Destination disk format: monolithic sparse disk
Cloning disk '/vmfs/volumes/datastore1/WindowsServer2012/WindowsServer2012.vmdk'...
Clone: 100% done.
Daceks-MBA:~ dacek$ 

★退避されたフィアルを確認してみるとこんな感じ

~ # ls -l /vmfs/volumes/datastore1/tmp/
total 8166400
-rw-------    1 root     root     8361934848 Dec 13 01:09 WindowsServer2012_bkup20151213-s001.vmdk
-rw-------    1 root     root           532 Dec 13 01:09 WindowsServer2012_bkup20151213.vmdk
~ # 

2.4. スナップショットを削除

~# # VMDIの確認 
~# vim-cmd vmsvc/getallvms
~# # SnapshotIDの確認
~# vim-cmd vmsvc/snapshot.get [VMID]
~# # Snapshotの削除
~# vim-cmd vmsvc/snapshot.remove [VMID] [SnapshotID]
~ # vim-cmd vmsvc/getallvms
Vmid         Name                                  File                                 Guest OS          Version   Annotation
2      WindowsServer2012   [datastore1] WindowsServer2012/WindowsServer2012.vmx   windows8Server64Guest   vmx-08              
~ # 

~ # vim-cmd vmsvc/snapshot.get 2
Get Snapshot:
|-ROOT
--Snapshot Name        : test
--Snapshot Id        : 1
--Snapshot Desciption  : 
--Snapshot Created On  : 12/13/2015 0:47:44
--Snapshot State       : powered off
~ # 

~ # vim-cmd vmsvc/snapshot.remove 2 1
Remove Snapshot:
~ # 

★Snapshotを削除すると、構成ディレクトリ内がこんな感じになる

~ # ls -l /vmfs/volumes/datastore1/WindowsServer2012/
total 46254096
-rw-------    1 root     root     4294967296 Dec 13 00:44 WindowsServer2012-0cccb183.vswp
-rw-------    1 root     root     42949672960 Dec 13 02:31 WindowsServer2012-flat.vmdk
-rw-------    1 root     root          8684 Dec 13 02:31 WindowsServer2012.nvram
-rw-------    1 root     root           478 Dec 13 02:31 WindowsServer2012.vmdk
-rw-r--r--    1 root     root            43 Dec 13 02:31 WindowsServer2012.vmsd
-rwxr-xr-x    1 root     root          2881 Dec 13 02:31 WindowsServer2012.vmx
-rw-------    1 root     root             0 Dec 13 00:44 WindowsServer2012.vmx.lck
-rw-r--r--    1 root     root           272 Dec 12 11:19 WindowsServer2012.vmxf
-rwxr-xr-x    1 root     root          2888 Dec 13 02:31 WindowsServer2012.vmx~
-rw-r--r--    1 root     root        301871 Dec 12 16:44 vmware-1.log
-rw-r--r--    1 root     root        306646 Dec 13 00:30 vmware-2.log
-rw-r--r--    1 root     root        200381 Dec 13 00:32 vmware-3.log
-rw-r--r--    1 root     root        202120 Dec 13 01:02 vmware.log
-rw-------    1 root     root     114294784 Dec 13 00:44 vmx-WindowsServer2012-214741379-1.vswp
~ # 
15
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
17