第14回 VMware vSphereからの移行を考える(2)

前回は、VMware問題やVMwareからの移行先候補について説明しました。今回は移行方法を検討します。

移行方式を検討する

仮想マシンを移行する方法はいくつかあります。移行先にも依存しますが、おもに以下の方法があります。それぞれについて説明します。なお、いずれの場合にもダウンタイムが発生します。

  1. スクラッチで再構築
  2. OVA/OVF形式でエクスポートして新環境にインポート
  3. サードパーティー製バックアップソフトを使用
  4. 移行先ベンダーの移行ツールを利用

スクラッチで再構築

既存の仮想マシンを利用しないで、新環境で最初から仮想マシンを構築する方式です。再構築するので工数は掛かりますが、新環境に最適化された仮想マシンを構築できるだけでなく、ソフトウェアの最新化や、ドキュメント化されていない部分の洗い出し、無駄な設定を見直しなど技術的負債を改善できます。また、最新の知見に基づいたシステム構成を採用できます。

メリット

  • システムの最適化: 新しい環境に合わせてシステムを全面的に見直すことで、パフォーマンス、セキュリティ、運用効率などを最適化できる。
  • 不要なものの排除: 古いシステムで使われていなかった機能や設定などを排除し、よりシンプルで効率的なシステムを構築できる。
  • 技術的な負債の解消: 過去のシステム構築で積み重なった技術的な負債を解消し、将来的なメンテナンスコストを削減できる。

デメリット

  • 時間とコスト: システムの設計、構築、テストなどに多くの時間とコストがかかる。そのため移行する仮想マシンが少ないときや、大幅なシステム更改で移行工数が確保できるとき以外は採用しづらい。

OVF/OVA形式でエクスポートして新環境にインポート

各サーバー仮想化製品では、それぞれ異なるディスクイメージ形式を採用しています(表01)。そのためVMwareのVMDK形式からオープン仮想化フォーマットのOVF/OVA形式を経由することで、それぞれの各サーバー仮想化製品に応じたディスクイメージ形式に変換できます(図01)。

表01:サーバー仮想化製品のディスクイメージ形式

サーバー仮想化製品ディスクイメージ形式
VMwareVMDK
Hyper-VVHD, VHDX
Oracle Linux Virtualization Managerqcow2, raw
Proxmox VEqcow2, raw
Red Hat OpenShift Virtualizationqcow2, raw

※KVM系のサーバー仮想化製品でもVMDKやVHDを使用できる場合もありますが、性能面から推奨しません。

図01:OVF/OVA形式を利用したディスクイメージ移行

※ただし、サーバー仮想化製品の中には、VMDKやVHD形式を直接インポートできる製品もあります。

OVF/OVA形式を利用する方法は、仮想マシン移行では一般的な方式ですがデメリットもあります。

メリット

  • 比較的容易な移行: VMware環境からOVF/OVA形式で仮想マシンをエクスポートし、新しい環境にインポートするだけで移行が完了するため、比較的容易に移行できる。
  • 短期間での移行: スクラッチで再構築する場合に比べて、短期間で移行を完了できる。

デメリット

  • 互換性: OVA/OVF形式では、仮想マシンのすべての機能や設定が移行できるとは限らない。そのため最低限の動作テストは実施する必要がある。また、仮想マシンによっては起動できないことがあり、そのときにはトラブルシューティングが必要になる。
  • パフォーマンス: 移行後の仮想マシンのパフォーマンスが、元の環境と同等以上であることを確認する必要がある。

サードパーティー製バックアップソフトを使用

サードパーティー製バックアップソフトを利用する方法です。多くのバックアップソフトは異なる仮想環境間の移行をサポートしています。そのため比較的簡単に多くの仮想マシンを移行できます。ただし、バックアップソフトは移行元のVMware環境と移行先の新しい環境の両方に対応している必要があります。

図02:バックアップソフトを利用した移行方式

Oracle Linux Virtualization Managerに対応している代表的なバックアップソフトウエアは以下の通りです(参考:第11回 Oracle Linux KVMのバックアップソリューション )。

  • Acronis Cyber Protect
  • Commvault
  • Veeam
  • Veritas NetBackup

メリット

  • 効率性: バックアップデータをそのまま移行できるため、効率的に移行作業を進められる。
  • 高度な機能: バックアップツールによっては、重複排除や圧縮などの機能を利用して、移行時のデータ転送量を削減できる。

デメリット

  • コスト: バックアップツールの導入・運用コストがかかる。
  • 設定: バックアップツールの設定や移行手順を習得する必要がある。
  • ダウンタイム: 最終バックアップ前には仮想マシンをすべて停止する必要がある。また、データ量が多い場合にはバックアップ/リカバリに時間が掛かるため、相応のプランニングが必要になる。
  • 互換性: OVA/OVF形式と同様の互換性問題がある。

移行先ベンダーの移行ツールを利用

移行元ベンダーが提供している移行ツールを使用する方法です(表02)。ただし、ツールによって使い勝手が異なるので一概には評価できません。そのため一般的なメリット・デメリットを紹介します。

表02:移行先ベンダが提供する移行ツール

サーバー仮想化製品ディスクイメージ形式
Hyper-VSCVMM
Oracle Linux Virtualization Managervirt-v2v
Red Hat OpenShift VirtualizationMigration Toolkit for Virtualization
Proxmox VEpve-esxi-import-tools

メリット

  • 最適化: 移行先の環境に最適化されたツールであるため、スムーズな移行が期待できる。
  • サポート: 移行先ベンダーのサポートを受けながら移行作業を進められる。
  • 互換性: 移行先の環境との互換性が保証されている。

デメリット

  • 機能制限: 移行ツールによっては、仮想マシンのすべての機能や設定が移行できるとは限らない。

どの移行方式を選択するか

移行方式について、それぞれメリット・デメリットを書いたので、みなさんの利用環境に応じて最適な方式を選択してください。

今回、以下の方式を紹介しました。コストや時間が許せば1が最良の移行方式です。手間は掛かりますが、確実に動作し、技術的負債も解消できます。1が無理な場合は、3もしくは4がよく使われます。仮想マシンが少ないときは2でもよいでしょう。

  1. スクラッチで再構築
  2. OVA/OVF形式でエクスポートして新環境にインポート
  3. サードパーティー製バックアップソフトを使用
  4. 移行先ベンダーの移行ツールを利用

Oracle Linux Virtualization Managerのvirt-v2vとは

最後にOracle Linux Virtualization Managerの移行ツールvirt-v2vを紹介します。virt-v2vは、VMwareだけでなくXenやHyper-Vなどを移行元とする仮想マシンの移行ツールです。virt-v2vを使用すると、KVMに合わせたディスクイメージ形式の変換だけでなく、ネットワーク設定も移行先に合わせて変換できます。

図03:virt-v2vを利用した移行

ただし、virt-v2vをしようするには以下の条件があります。

  • Oracle Linux KVMホストにvirt-v2vをインストールしてあること
  • Oracle Linux Virtualization ManagerとvCenterがネットワークで疎通できること
  • Oracle Linux Virtualization ManagerとVDSMのバージョンは4.5以上であること

また、次の実行例のようにコマンドラインツールで仮想マシン1台ずつ実行するタイプのツールです。そのため大量の仮想マシンがあるときにはスクリプト化などの工夫が必要です。

# virt-v2v -ic vpx://vsphere.local%5cAdministrator@topgear.demo.com/topgear.demo.com?no_verify=1 ol7-reiserfs --password-file /root/v2v/vmware-admin-password -o rhv-upload -oc https://ovirt.demo.com/ovirt-engine/api -os local-u01 -op /root/v2v/ovirt-admin-password -oo rhv-cafile=/root/v2v/ca.pem -oo rhv-cluster=ol7-cluster -of raw -oo rhv-direct --bridge ovirtmgmt

virt-v2vの参考情報

関連サービス

Oracle Linux KVM

Linux KVM (Kernel-based Virtual Machine:カーネルベースの仮想マシン) は、Linuxに組み込まれたオープンソースの仮想化テクノロジーです

Oracle Linux

オラクル製品の開発は、Oracle Linux( Unbreakable Enterprise Kernel )に基づいて進められているため、オラクル製品に最適化されたOS環境をご利用いただけます。Kspliceによるゼロダウンタイムパッチを適用することが可能です。