2018-06-19_Nutanixのディスクイメージをvdi形式に変換する
このページで分かること
- Nutanix上で管理しているディスクイメージをvdi形式に変換する方法
会社で使っていたnutanixというハイパーコンバージドインフラストラクチャ(vmwareなどと同じ仮想アプライアンス)が
ハード障害で起動不可になったため動いていたゲストOSをVirtualboxへ移行した際の備忘録です。
結論
CVM上から対象ディスクをnfsマウントしてをコピーします。nfsマウントするLinux環境が別に必要。
参考:http://blog.ntnx.jp/entry/2016/06/09/081212
CVM上で対象のディスクイメージを特定
使用しているコンテナの特定
| #r 使用しているコンテナの特定
$ ncli container list | grep Name
[Thu Apr 26 11:58:41.702 2018] Name : default-container-81148704361867
[Thu Apr 26 11:58:41.702 2018] VStore Name(s) : default-container-81148704361867
[Thu Apr 26 11:58:41.704 2018] Name : NutanixManagementShare
[Thu Apr 26 11:58:41.708 2018] VStore Name(s) : NutanixManagementShare
|
今回は2つコンテナが存在していることが分かります。対象の環境はdefault-container-81148704361867に格納されています。
コンテナの中身を確認
コンテナの中身を確認。vmdiskがディスクイメージファイルとなっています。
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 | ##c コンテナの中身を確認
#r nfs_ls -a -R /default-container-81148704361867
[Thu Apr 26 11:59:00.692 2018] .acropolis
[Thu Apr 26 11:59:00.692 2018] .acropolis/image
[Thu Apr 26 11:59:00.692 2018] .acropolis/snapshot
[Thu Apr 26 11:59:00.692 2018] .acropolis/snapshot/2b89a156-1e2b-47c6-bb77-16fa448dde2a
[Thu Apr 26 11:59:00.692 2018] .acropolis/snapshot/2b89a156-1e2b-47c6-bb77-16fa448dde2a/vmdisk
[Thu Apr 26 11:59:00.692 2018] .acropolis/snapshot/2b89a156-1e2b-47c6-bb77-16fa448dde2a/vmdisk/c36b56e5-affe-48e7-966e-4211b7a71b65
[Thu Apr 26 11:59:00.692 2018] .acropolis/snapshot/34150625-e664-408d-820e-5e2088dc46da
[Thu Apr 26 11:59:00.692 2018] .acropolis/snapshot/34150625-e664-408d-820e-5e2088dc46da/vmdisk
[Thu Apr 26 11:59:00.692 2018] .acropolis/snapshot/34150625-e664-408d-820e-5e2088dc46da/vmdisk/ec51c56e-770b-472b-88d4-0cf52a7e849c
[Thu Apr 26 11:59:00.692 2018] .acropolis/snapshot/3f546926-0232-4655-aeac-286b38c2d913
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/3f546926-0232-4655-aeac-286b38c2d913/vmdisk
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/5d4a248e-930f-4301-971d-e2cc255677fa
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/5d4a248e-930f-4301-971d-e2cc255677fa/vmdisk
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/5d4a248e-930f-4301-971d-e2cc255677fa/vmdisk/c36b56e5-affe-48e7-966e-4211b7a71b65
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/838554aa-5030-48ff-8fd5-53326d1aa8d5
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/838554aa-5030-48ff-8fd5-53326d1aa8d5/vmdisk
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/9874633a-e84a-43b2-80a8-8b36b86763ba
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/9874633a-e84a-43b2-80a8-8b36b86763ba/vmdisk
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/d2ff3601-704d-43d6-808a-e033dd3b997d
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/d2ff3601-704d-43d6-808a-e033dd3b997d/vmdisk
[Thu Apr 26 11:59:00.707 2018] .acropolis/snapshot/d2ff3601-704d-43d6-808a-e033dd3b997d/vmdisk/5477c310-ec2c-4f3b-9c7d-ec337e013cde
[Thu Apr 26 11:59:00.707 2018] .acropolis/vmdisk
[Thu Apr 26 11:59:00.707 2018] .acropolis/vmdisk/088f8a13-6cea-4115-b912-dd5a1c0eac6f
[Thu Apr 26 11:59:00.707 2018] .acropolis/vmdisk/3440756b-1d8a-405b-8d2e-f1fc3723d1cf
[Thu Apr 26 11:59:00.707 2018] .acropolis/vmdisk/466015b0-711f-4dca-ab5e-665c9d8f0631
[Thu Apr 26 11:59:00.707 2018] .acropolis/vmdisk/57b09a5e-e5bd-4687-9c72-b416e43c232a
[Thu Apr 26 11:59:00.707 2018] .acropolis/vmdisk/8acf635f-acd3-483b-a8c8-c04152bda710
[Thu Apr 26 11:59:00.720 2018] .acropolis/vmdisk/aa660700-0ce1-4356-b45d-f472e4f6d92e
[Thu Apr 26 11:59:00.720 2018] .acropolis/vmdisk/c0fe9841-4e9e-42fb-a73c-70a397adc8a9
[Thu Apr 26 11:59:00.720 2018] .acropolis/vmdisk/c36b56e5-affe-48e7-966e-4211b7a71b65
[Thu Apr 26 11:59:00.720 2018] .acropolis/vmdisk/c3a0101b-4817-438b-9ec5-e57bb1fccba6
[Thu Apr 26 11:59:00.720 2018] .acropolis/vmdisk/cb40a595-82ea-4ec5-a1a6-f08987249aaa
[Thu Apr 26 11:59:00.720 2018] .acropolis/vmdisk/cdbc11f3-2f31-4122-a842-8f935efc19f1
[Thu Apr 26 11:59:00.720 2018] .acropolis/vmdisk/e7e2da64-062a-4ad7-8832-5451e475b5b7
|
対象vmのディスクuuidを確認
対象vmのディスクuuidを確認します。
| ##c 対象ディスクのuuid確認
#r acli vm.get hoge_vm | grep -e bus -e vmdisk_uuid
[Thu Apr 26 11:59:46.359 2018] bus: "scsi"
[Thu Apr 26 11:59:46.359 2018] source_vmdisk_uuid: "5477c310-ec2c-4f3b-9c7d-ec337e013cde"
[Thu Apr 26 11:59:46.359 2018] vmdisk_uuid: "c36b56e5-affe-48e7-966e-4211b7a71b65"
|
nfsのマウント制御用のホワイトリスト確認
NFS Whitelist Inheritedがtrueの場合はホワイトリストに対象ネットワークを追加する必要があります。
| ##c NFSホワイトリストの確認
#r ncli container list | grep -e Nam e -e Whitelist
[Thu Apr 26 12:11:43.555 2018] Name : default-container-81148704361867
[Thu Apr 26 12:11:43.568 2018] NFS Whitelist Inherited : true
[Thu Apr 26 12:11:43.568 2018] Container NFS Whitelist :
[Thu Apr 26 12:11:43.568 2018] VStore Name(s) : default-container-81148704361867
|
ホワイトリストにネットワーク帯域を追加
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 | ##c ホワイトリストにネットワーク帯域の追加
##c NFSマウントするPCが所属するネットワーク帯域を指定する
#r ncli container add-to-nfs-whiteli st name=default-container-81148704361867 ip-subnet-masks=192.168.11.0/255.255. 255.0
[Thu Apr 26 12:13:11.115 2018] The containers listed below are storage containers
[Thu Apr 26 12:13:11.115 2018]
[Thu Apr 26 12:13:11.115 2018] Id : 00054a58-361a-cad8-740e-68b5996eab1e::4
[Thu Apr 26 12:13:11.115 2018] Uuid : 0487ead1-a417-46ae-abe3-5f0970ac8262
[Thu Apr 26 12:13:11.115 2018] Name : default-container-81148704361867
[Thu Apr 26 12:13:11.115 2018] Storage Pool Id : 00054a58-361a-cad8-740e-68b5996eab1e::3
[Thu Apr 26 12:13:11.115 2018] Storage Pool Uuid : 1b126c8e-10a0-463d-9220-090f092f023d
[Thu Apr 26 12:13:11.115 2018] Free Space (Logical) : 1.47 TiB (1,613,963,937,157 bytes)
[Thu Apr 26 12:13:11.115 2018] Used Space (Logical) : 57.22 GiB (61,441,343,488 bytes)
[Thu Apr 26 12:13:11.115 2018] Allowed Max Capacity : 1.52 TiB (1,675,405,280,645 bytes)
[Thu Apr 26 12:13:11.115 2018] Used by other Containers : 0 bytes
[Thu Apr 26 12:13:11.115 2018] Explicit Reservation : 0 bytes
[Thu Apr 26 12:13:11.115 2018] Thick Provisioned : 0 bytes
[Thu Apr 26 12:13:11.115 2018] Replication Factor : 1
[Thu Apr 26 12:13:11.115 2018] Oplog Replication Factor : 1
[Thu Apr 26 12:13:11.115 2018] NFS Whitelist Inherited : false
[Thu Apr 26 12:13:11.120 2018] Container NFS Whitelist : 192.168.11.0/255.255.255.0
[Thu Apr 26 12:13:11.120 2018] VStore Name(s) : default-container-81148704361867
[Thu Apr 26 12:13:11.120 2018] Random I/O Pri Order : SSD-PCIe, SSD-SATA, DAS-SATA
[Thu Apr 26 12:13:11.120 2018] Sequential I/O Pri Order : SSD-PCIe, SSD-SATA, DAS-SATA
[Thu Apr 26 12:13:11.121 2018] Compression : off
[Thu Apr 26 12:13:11.121 2018] Fingerprint On Write : off
[Thu Apr 26 12:13:11.121 2018] On-Disk Dedup : none
[Thu Apr 26 12:13:11.121 2018] Erasure Code : off
|
移行対象vmの状態確認
kOffであればvm停止状態です。
| #r acli vm.get hoge_vm | grep state
state: "kOff"
|
NFSマウントする側の準備
必要パッケージのダウンロード
nfsマウントにnfs-utils、イメージ変換にqemu-imgを使用します。yumで一発で導入できます。。
| #r yum install -y nfs-utils qemu-img
|
CVMの対象コンテナをnfsマウント
コンテナの内容確認で確認したコンテナ名を指定します。
| ##c mount 192.168.xxx.xxx:/default-container-81148704361867 /mnt
##c 対象のuuidを探す
##c ls -la /mnt/.acropolis/vmdisk/
|
qemuコマンドで変換
ディスイメージをVirtualboxで扱えるvdi形式に変換します。
nfsでマウントしているので、作業していたマシンのローカルに変換後のディスクが作成されます。
ディスク容量は使用している部分のみが実容量になるみたいです。
| #r qemu-img convert -O vdi /mnt/.acropolis/vmdisk/c36b56e5-affe-48e7-966e-4211b7a71b65 /run/media/hoge/HDD-001/hoge_vm.vdi
|