KVM 仮想化 KVM 仮想マシンのクローン作成

KVM 仮想化 KVM 仮想マシンのクローン作成

kvm 仮想マシンのクローンを作成するケースは 2 つあります。この記事では、次の 2 つのケースについて説明します。クローンされた仮想マシンは OEL5.8X64 です。

[[330647]]

(1)KVMホスト上のローカル仮想マシンの直接クローン作成。

(2)構成ファイルとディスクファイルのコピーによる仮想マシンのクローン作成(異なるマシン間の静的移行に適用可能)。

1. ローカル仮想マシンの直接クローン作成

(1)仮想マシン構成ファイルを表示する

  1. [root@node1 ~]# cat /etc/libvirt/qemu/oeltest01.xml
  2. <! --  
  3. 警告: これは自動生成されたファイルです変更される可能高い
  4. 上書きされ失われました。この XML 構成変更は、以下を使用して行う必要があります。
  5. virsh 編集 oeltest01
  6. またはlibvirt API を使用するその他のアプリケーション。
  7. -->  
  8. <ドメインタイプ= 'kvm' >
  9. <名前>oeltest01</名前>
  10. <uuid>8f2bb4a7-c7ed-32aa-3676-9fb05923269d</uuid>
  11. <メモリ単位= 'KiB' >524288</メモリ>
  12. <currentMemory 単位 = 'KiB' >524288</currentMemory>
  13. <vcpu 配置 = '静的' >1</vcpu>
  14. <os>
  15. <type arch= 'x86_64'マシン= 'rhel6.4.0' >hvm</type>
  16. <ブートデバイス= 'hd' />
  17. </os>
  18. <特徴>
  19. <acpi/>
  20. <アピック/>
  21. <pae/>
  22. </特徴>
  23. <クロックオフセット= 'utc' />
  24. <on_poweroff>破棄</on_poweroff>
  25. <on_reboot>再起動</on_reboot>
  26. <on_crash>再起動</on_crash>
  27. <デバイス>
  28. <エミュレータ>/usr/libexec/qemu-kvm</エミュレータ>
  29. <ディスクタイプ= 'ファイル'デバイス= 'ディスク' >
  30. <ドライバー= 'qemu'タイプ = 'raw'キャッシュ = 'none' />
  31. <ソースファイル= '/data/test01.img' />
  32. <ターゲットデバイス= 'hda'バス= 'ide' />
  33. <アドレス タイプ = 'ドライブ'コントローラ = '0'バス = '0'ターゲット = '0'ユニット = '0' />
  34. </ディスク>
  35. <ディスクタイプ= 'ブロック'デバイス= 'cdrom' >
  36. <ドライバー= 'qemu'タイプ = 'raw' />
  37. <ターゲットデバイス= 'hdc'バス= 'ide' />
  38. <読み取り専用/>
  39. <アドレス タイプ = 'ドライブ'コントローラ = '0'バス = '1'ターゲット = '0'ユニット = '0' />
  40. </ディスク>
  41. <コントローラタイプ= 'usb'  インデックス= '0' >
  42. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x01'  関数= '0x2' />
  43. </コントローラ>
  44. <コントローラタイプ= 'ide'  インデックス= '0' >
  45. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x01'  関数= '0x1' />
  46. </コントローラ>
  47. <インターフェースタイプ= 'ブリッジ' >
  48. <mac アドレス = '52:54:00:82:39:01' />
  49. <ソースブリッジ= 'br0' />
  50. <モデルタイプ= 'virtio' />
  51. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x03'  関数= '0x0' />
  52. </インターフェース>
  53. <シリアルタイプ= 'pty' >
  54. <ターゲットポート= '0' />
  55. </シリアル>
  56. <コンソールタイプ= 'pty' >
  57. <ターゲットタイプ= 'シリアル'ポート= '0' />
  58. </コンソール>
  59. <入力タイプ= 'タブレット'バス= 'USB' />
  60. <入力タイプ= 'マウス'バス= 'ps2' />
  61. <グラフィック タイプ = 'vnc'ポート = '5910'自動ポート = 'no' listen = '0.0.0.0' >
  62. <listen type= 'アドレス'アドレス= '0.0.0.0' />
  63. </グラフィック>
  64. <ビデオ>
  65. <モデルタイプ= 'cirrus' vram= '9216'ヘッド= '1' />
  66. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x02'  関数= '0x0' />
  67. </ビデオ>
  68. <memballoon モデル = 'virtio' >
  69. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x04'  関数= '0x0' />
  70. </memballoon>
  71. </デバイス>
  72. </ドメイン>

仮想マシン ディスク ファイル: /data/test01.img

仮想マシン名: oeltest01

(2)クローン作成開始

  1. # virt-clone -o oeltest01 -n oeltest02 -f /data/test02.img

説明: oeltest01 をソースとして使用し、oeltest01 仮想マシンをクローンし、ディスク ファイル /data/test02.img を使用して oeltest02 という名前の仮想マシンを作成します。

(3)仮想マシンを起動し、ホスト名、IPアドレスなどを設定します。

[root@node1 データ]# virsh コンソール oeltest02

  1. ドメイン oeltest02 に接続
  2. 逃げる キャラクター ^]
  3. ボリュームグループが見つかりました メタデータタイプ lvm2 を使用する"vg"
  4. ボリュームグループ内の2 つの論理ボリューム  「vg」がアクティブになりました
  5. Oracle Linuxようこそ Oracle Linux Serverリリース5.8
  6. 「I」を押してください 対話型スタートアップに入ります
  7. udev を起動しています: [ OK ]
  8. デフォルトのキーマップを読み込んでいます (us): [ OK ]
  9. ホスト名test01の設定: [OK]
  10. 論理ボリューム管理の設定:ボリュームグループ内の2 つの論理ボリューム  「vg」がアクティブになりました
  11. [ わかりました ]
  12. ファイルシステムのチェック
  13. すべてのファイル システムをチェックしています。
  14. [/sbin/fsck.ext3 (1) -- /] fsck.ext3 -a /dev/vg/root  
  15. /dev/vg/root: クリーン、135384/1540096 ファイル、851398/1540096 ブロック
  16. [/sbin/fsck.ext3 (1) -- /boot] fsck.ext3 -a /dev/hda1  
  17. /boot: クリーン、39/26104 ファイル、26897/104388 ブロック
  18. [ わかりました ]
  19. ルートファイルシステムを再マウント 読み取り書き込みモード: [ OK ]
  20. ローカルファイルシステムをマウントしています: [ OK ]
  21. ローカルファイルシステムのクォータを有効にしています: [ OK ]
  22. /etc/fstab スワップを有効にしています: [ OK ]
  23. INIT: ランレベル 5 に入ります
  24. 非対話型スタートアップに入る
  25. Intel CPU マイクロコード更新を適用しています: [OK]
  26. バックグラウンドの先読みを開始しています: [ OK ]
  27. ハードウェアの変更を確認しています[OK]
  28. [ OK ] iSCSI デーモン: [ OK ]
  29. [ わかりました ]
  30. ループバックインターフェースを起動しています: [ OK ]
  31. インターフェイス eth0 を起動します:
  32. eth0IP 情報を確認しています...完了しました。
  33. [ わかりました ]
  34. 監査を開始しています: [ OK ]
  35. システムロガーを起動しています: [ OK ]
  36. カーネルロガーを起動しています: [ OK ]
  37. irqbalance を起動しています: [ OK ]
  38. iscsid (pid 1555) が実行中です...
  39. iSCSI ターゲットの設定: iscsiadm:レコードが見つかりません
  40. [ わかりました ]
  41. ポートマップを開始しています: [ OK ]
  42. NFS statd を起動しています: [ OK ]
  43. RPC idmapd を起動しています: [ OK ]
  44. システムメッセージバスを起動しています: [ OK ]
  45. o2cbを起動しています: [ OK ]
  46. [ OK ] Bluetoothサービス:[ OK ]
  47. 他のファイルシステムをマウントしています: [ OK ]
  48. PC/SC スマート カード デーモン (pcscd) を起動しています: [ OK ]
  49. acpiデーモンを起動しています: [ OK ]
  50. HALデーモンを起動しています: [ OK ]
  51. hiddを起動しています: [ OK ]
  52. VG vg監視を開始:ボ​​リュームグループ内の2 つの論理ボリューム  「vg」を監視
  53. [ わかりました ]
  54. autofs を起動しています: autofs4 を読み込んでいます: [ OK ]
  55. 自動マウントを開始しています: [ OK ]
  56. [ わかりました ]
  57. hpiod を起動しています: [ OK ]
  58. hpssdを起動しています: [ OK ]
  59. sshdを起動しています: [ OK ]
  60. スターティングカップ: [ OK ]
  61. xinetd を起動しています: [ OK ]
  62. コンソール マウス サービスを開始しています: [ OK ]
  63. crond を起動しています: [ OK ]
  64. xfs を起動しています: [ OK ]
  65. anacron を起動しています: [ OK ]
  66. [ OK ] atd: [ OK ]
  67. バックグラウンドの先読みを開始しています: [ OK ]
  68. yum-updatesd を起動しています: [ OK ]
  69. Avahi デーモンを起動しています... [ OK ]
  70. smartd を起動しています: hdc: drive_cmd: status=0x41 { DriveReady エラー }
  71. hdc: drive_cmd: error=0x04 { 中止されたコマンド }
  72. ide: 失敗したオペコードは: 0xec
  73. [ わかりました ]
  74. Oracle Linux Server リリース 5.8
  75. x86_64上のカーネル 2.6.18-308.el5
  76. test01 ログイン: mtrr: f0000000,100000型が一致しません旧: キャッシュ不可 新: 書き込み結合
  77. mtrr: f0000000,400000の型が一致しません。旧: キャッシュ不可。新: 書き込み結合
  78. Oracle Linux Server リリース 5.8
  79. x86_64上のカーネル 2.6.18-308.el5
  80. test01 ログイン:
  81. Oracle Linux Server リリース 5.8
  82. x86_64上のカーネル 2.6.18-308.el5
  83. test01 ログイン: root
  84. パスワード:
  85. 最終ログイン: 土曜 9月 7日05:21:11 ttyS0
  86. [root@test01 ~]#
  87. [root@test01 ~]#
  88. [root@test01 ~]#
  89.   
  90.   
  91. (4)ホスト名、IPアドレス等を変更する
  92. # vi /etc/hosts
  93. #次の行やさまざまなプログラムを削除ないください
  94. # ネットワーク機能を必要とするものは失敗します。
  95. 127.0.0.1 test02 ローカルホスト.ローカルドメイン ローカルホスト
  96. ::1 ローカルホスト6.ローカルドメイン6 ローカルホスト6
  97. # vi /etc/sysconfig/ネットワーク
  98. ネットワーク=はい
  99. NETWORKING_IPV6=いいえ  
  100. ホスト名=test02
  101. ゲートウェイ=192.168.233.2
  102. IPアドレスを変更する
  103. # vi /etc/sysconfig/ネットワークスクリプト/ifcfg-eth0
  104. # Virtio ネットワークデバイス
  105. デバイス=eth0
  106. BOOTPROTO=静的  
  107. ONBOOT=はい
  108. HWADDR=52:54:00:56:bd:2b
  109. IPアドレス=192.168.233.142
  110. ネットマスク=255.255.255.0
  111. [root@test01 ~]# サービスネットワークの再起動
  112. インターフェース eth0 をシャットダウンしています: [ OK ]
  113. ループバックインターフェースをシャットダウンしています: [ OK ]
  114. ループバックインターフェースを起動しています: [ OK ]
  115. インターフェース eth0 を起動しています: [ OK ]
  116. [root@test01 ~]#

2. 設定ファイルとディスクファイルのクローンをコピーする

(1)kvm仮想マシン構成ファイルをインポートする

ここでは、oeltest01 がクローンのテンプレートとして使用されます。

  1. # virsh シャットダウン oeltest01

  1. # virsh dumpxml oeltest01 > /etc/libvirt/qemu/oeltest03.xml

(2)kvm仮想マシンディスクファイルをコピーする

このシリーズの記事では、LVM ボリュームではなく、仮想ディスク ファイルをテストに使用します。

構成ファイルを表示する: 仮想ディスクの場所

(3)設定ファイルを直接編集・変更する

名前、UUID、ディスクの場所、VNC ポートを変更する

この時点では、設定ファイルはまだ登録されており、virsh edit では編集できません。

  1. [root@node1 データ]# vi /etc/libvirt/qemu/oeltest03.xml
  2. <ドメインタイプ= 'kvm' >
  3. <名前>oeltest03</名前>
  4. <uuid>8f2bb4a7-c7ed-32aa-3676-9fb05923260d</uuid>
  5. <メモリ単位= 'KiB' >524288</メモリ>
  6. <currentMemory 単位 = 'KiB' >524288</currentMemory>
  7. <vcpu 配置 = '静的' >1</vcpu>
  8. <os>
  9. <type arch= 'x86_64'マシン= 'rhel6.4.0' >hvm</type>
  10. <ブートデバイス= 'hd' />
  11. </os>
  12. <特徴>
  13. <acpi/>
  14. <アピック/>
  15. <pae/>
  16. </特徴>
  17. <クロックオフセット= 'utc' />
  18. <on_poweroff>破棄</on_poweroff>
  19. <on_reboot>再起動</on_reboot>
  20. <on_crash>再起動</on_crash>
  21. <デバイス>
  22. <エミュレータ>/usr/libexec/qemu-kvm</エミュレータ>
  23. <ディスクタイプ= 'ファイル'デバイス= 'ディスク' >
  24. <ドライバー= 'qemu'タイプ = 'raw'キャッシュ = 'none' />
  25. <ソースファイル= '/data/test03.img' />
  26. <ターゲットデバイス= 'hda'バス= 'ide' />
  27. <アドレス タイプ = 'ドライブ'コントローラ = '0'バス = '0'ターゲット = '0'ユニット = '0' />
  28. </ディスク>
  29. <ディスクタイプ= 'ブロック'デバイス= 'cdrom' >
  30. <ドライバー= 'qemu'タイプ = 'raw' />
  31. <ターゲットデバイス= 'hdc'バス= 'ide' />
  32. <読み取り専用/>
  33. <アドレス タイプ = 'ドライブ'コントローラ = '0'バス = '1'ターゲット = '0'ユニット = '0' />
  34. </ディスク>
  35. <コントローラタイプ= 'usb'  インデックス= '0' >
  36. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x01'  関数= '0x2' />
  37. </コントローラ>
  38. <コントローラタイプ= 'ide'  インデックス= '0' >
  39. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x01'  関数= '0x1' />
  40. </コントローラ>
  41. <インターフェースタイプ= 'ブリッジ' >
  42. <mac アドレス = '52:54:00:82:39:01' />
  43. <ソースブリッジ= 'br0' />
  44. <モデルタイプ= 'virtio' />
  45. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x03'  関数= '0x0' />
  46. </インターフェース>
  47. <シリアルタイプ= 'pty' >
  48. <ターゲットポート= '0' />
  49. </シリアル>
  50. <コンソールタイプ= 'pty' >
  51. <ターゲットタイプ= 'シリアル'ポート= '0' />
  52. </コンソール>
  53. <入力タイプ= 'タブレット'バス= 'USB' />
  54. <入力タイプ= 'マウス'バス= 'ps2' />
  55. <グラフィックス タイプ = 'vnc'ポート = '5911'自動ポート = 'no' listen = '0.0.0.0' >
  56. <listen type= 'アドレス'アドレス= '0.0.0.0' />
  57. </グラフィック>
  58. <ビデオ>
  59. <モデルタイプ= 'cirrus' vram= '9216'ヘッド= '1' />
  60. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x02'  関数= '0x0' />
  61. </ビデオ>
  62. <memballoon モデル = 'virtio' >
  63. <アドレス タイプ = 'pci'ドメイン = '0x0000'バス = '0x00'スロット = '0x04'  関数= '0x0' />
  64. </memballoon>
  65. </デバイス>
  66. </ドメイン>

(4)新しい仮想マシン構成ファイルを定義する

  1. [root@node1 データ]# virsh で /etc/libvirt/qemu/oeltest03.xml を定義します。

仮想マシンを起動する

  1. [root@node1 データ]# virsh start oeltest03
  2. ドメイン oeltest03 を開始しました

(5)仮想マシンにログインし、ホスト名やIPなどを変更します。

  1. [root@node1 データ]# virsh コンソール oeltest03
  2. ドメイン oeltest03 に接続
  3. 逃げる キャラクター ^]
  4. Oracle Linux Server リリース 5.8
  5. x86_64上のカーネル 2.6.18-308.el5
  6. test01 ログイン: mtrr: f0000000,100000型が一致しません旧: キャッシュ不可 新: 書き込み結合
  7. mtrr: f0000000,400000の型が一致しません。旧: キャッシュ不可。新: 書き込み結合
  8. Oracle Linux Server リリース 5.8
  9. x86_64上のカーネル 2.6.18-308.el5
  10. test01 ログイン: root
  11. パスワード:
  12. 最終ログイン: 土曜 9月 7日05:21:11 ttyS0
  13. [root@test01 ~]#
  14. [root@test01 ~]#
  15. ホスト名を変更する
  16. # vi /etc/hosts
  17. #次の行やさまざまなプログラムを削除ないください
  18. # ネットワーク機能を必要とするものは失敗します。
  19. 127.0.0.1 test03 ローカルホスト.ローカルドメイン ローカルホスト
  20. ::1 ローカルホスト6.ローカルドメイン6 ローカルホスト6
  21. # vi /etc/sysconfig/ネットワーク
  22. ネットワーク=はい
  23. NETWORKING_IPV6=いいえ  
  24. ホスト名=test03
  25. ゲートウェイ=192.168.233.2
  26. IPアドレスを変更する
  27. # vi /etc/sysconfig/ネットワークスクリプト/ifcfg-eth0
  28. # Virtio ネットワークデバイス
  29. デバイス=eth0
  30. BOOTPROTO=静的  
  31. ONBOOT=はい
  32. HWADDR=52:54:00:56:bd:3b
  33. IPアドレス=192.168.233.143
  34. ネットマスク=255.255.255.0
  35. サービスネットワークの再起動
  36. インターフェース eth0 をシャットダウンしています: [ OK ]
  37. ループバックインターフェースをシャットダウンしています: [ OK ]
  38. ループバックインターフェースを起動しています: [ OK ]
  39. インターフェース eth0 を起動しています: [ OK ]

この記事では、実際に役立つ、KVM 仮想マシンのクローンを作成する 2 つの方法を紹介しました。

再度の注意: この記事でクローンされた仮想マシンは oel5.8 です。クローンされた仮想マシンがRHEL/CentOS/OEL6.xオペレーティングシステムの場合は、次の変更も必要になります。

/etc/udev/rules.d/70-persistent-net.rules ファイル。

<<:  Aruba、業界初のインテリジェントエッジ向けクラウドネイティブプラットフォーム、ArubaESPを発表

>>:  トレンドに逆らってリードする! H3Cは中国のエンタープライズレベルの外部ストレージ市場で第2位となり、分散ストレージの収益は3倍に増加しました。

推薦する

リモートチームでクラウドへの移行を成功させる 5 つの方法

多くの企業がクラウドに移行していますが、流行の影響で多くの従業員が在宅勤務をしています。クラウド移行...

raksmart: ロサンゼルスのサーバーアクティビティ、月額 76 ドルから、10 Gbps の帯域幅/無制限のトラフィック、クラスターサーバーを含む

現在、raksmart はロサンゼルス データ センターの独立サーバー向けの特別プロモーションを実施...

VMware は仮想化を加速するために SmartNIC をサポートしています

ネットワーク インターフェイス カードは広く普及しているテクノロジですが、SmartNIC は比較的...

budgetvm、任意の VPS を購入すると、20 ドルが無料 / 5 ドルを支払って年間 25 ドル

budgetvm から次のようなメールが届きました。「BudgetVM に戻って、VPS を購入する...

この記事を読んだ後、私は二度とDockerコンテナを知っているとは言わないでしょう

概要Linux システムでは、ファイルやディレクトリを操作するためにコマンドラインを使用する必要があ...

地元の装飾や建築資材のウェブサイトは危険に満ちている

インターネットの発展に伴い、オンラインショッピングは生活の各分野に溶け込んでおり、佳天下、淘宝ホーム...

多国籍紛争の調査:現時点では時間がなくなってきている

最近、検索業界は非常に活発です。最近の話題を見ると、Green Radish アルゴリズムと Ali...

エンタープライズアプリケーションファイアウォール「UEWAF」に新たな改ざん防止機能が追加

近年、ウェブサイトの改ざん、侵入、攻撃が徐々に主流の脅威になってきています。ウェブページが改ざんされ...

アメリカのホスト購入に関する誤解:「コストパフォーマンスの高いGoDaddyホスト」

皆さんは、GoDaddy がドメイン名だけでなく、ホストも販売していることをすでにご存知だと思います...

Zenon: 20年のブランド、ロシアのVPS、無制限のトラフィック、月額17元

ZENON NSP は 1996 年に設立されたロシアのホスティング会社です。非常に古いブランドです...

ついに誰かがDevOpsをわかりやすく説明してくれた

[[427652]]この記事はWei XinyuとGuo Yuejunが執筆したWeChatパブリッ...

今日のウェブマスターはトラを恐れている

今日のウェブマスター、特に私たちの草の根ウェブマスターは、「虎」という言葉を聞くと恐怖を感じます。こ...

oneprovider - シンガポール/韓国/日本、専用サーバーは最低59ドル

おそらく多くの人がoneprovider.comをご存知でしょう。この会社は非常に強力な仲介業者であ...

ユーザーは Alibaba Cloud 上で Red Hat Enterprise Linux を選択できるようになりました

Alibaba Group のクラウド コンピューティング部門である Alibaba Cloud は...