物理LinuxサーバーをVMware VMに変換する方法:完全ガイド
仮想マシン上でサーバーを稼働させることには、スケーラビリティ、リソースの効率的な活用、高可用性、負荷分散、管理の利便性、データ保護機能など、多くの利点があります。そのため、物理サーバーの一部を仮想マシンに移行したいと考えるかもしれません。このプロセスは”物理から仮想への変換”とも呼ばれ、頭文字をとってP2Vと表記されます。
VMwareは、IT業界において仮想化ソリューションを提供する主要企業の一つであり、Linuxはサーバー上で動作する最も信頼性の高いオペレーティングシステムの一つです。このブログ記事では、Linuxサーバーのバックアップの重要性と、物理LinuxサーバーをvSphere上のESXiホストで動作する仮想マシン(VM)に変換する方法について解説します。Ubuntu 18を例に、VMwareによるLinuxのP2V変換の2つの異なる方法について検討します。
方法 1 – VMware vCenter Converter の使用
VMware vCenter Converter Standalone は、Windows にインストール可能な無料のアプリケーションで、Windows 物理マシン、Linux 物理マシン、Hyper-V 仮想マシン、VMware 仮想マシン、および Red Hat KVM または RHEL XEN 上で動作する仮想マシンを変換することができます。サポートされる変換先の種類には、管理対象外の ESXi ホスト上の仮想マシン、vCenter Server によって管理される ESXi ホスト上の仮想マシン、 VMware Workstation用VM;VMware Fusion用VM。
Hyper-V VMをESXiホスト上のVMware VMに変換する方法については、 このブログ記事で解説されています。
動作原理
電源が入った状態の物理LinuxマシンをVMware ESXi形式の仮想マシンに変換する場合、VMware vCenter Converter Standaloneは(Windowsマシンとは異なり)、ソースとなるLinuxマシンにエージェントをインストールしません。 変換プロセスは、主に2つの段階に分けられます。
第1段階 。VMware ConverterはSSH経由でソースのLinuxマシンに接続し、仮想ディスクやパーティションなど、コピーするコンポーネントを選択できるようにします。ソースとなる物理Linuxマシンの選択されたコンポーネントと、宛先VMの設定に基づいて、コンバーターはヘルパーVMを作成します。
ステージ 2 。必要なコンポーネントがすべて選択され、ヘルパー VM のネットワーク設定が構成されると、VMware Converter は宛先 ESXi ホストおよびデータストア上にヘルパー VM を作成します。その後、コンバーターはヘルパー VM の ISO イメージから起動するヘルパー VM を起動し、変換プロセスが完了するまでヘルパー VM のステータスを維持する宛先 VM へ、ソースの Linux マシンから必要なデータをすべてコピーします。
ヘルパーVMは、コンバーターがインストールされているWindowsマシンのファイルシステムに保存されているLinuxベースのISOイメージから展開されます。ESXiホスト上でヘルパーVMを起動するために使用される、 、converter-helper-vm.iso、 、 、converter-helper-vm-x64.iso、 といったファイルの場所は、デフォルトでは” C:Program Files (x86)VMwareVMware vCenter Converter Standalone” です。
ターゲットVMへのデータコピー後、変換ジョブで適切なオプションが選択されている場合、VMware Converter を使用してVMを再構成することができます。
システム要件
VMware Converter を使用して VMware P2V Linux 変換を実行するには、いくつかの要件を満たす必要があります。
- Linux を実行している物理マシンが電源投入されている必要があります。
- ESXi ホストが電源投入されており、ネットワーク経由でアクセス可能である必要があります。 vCenter Converterのスタンドアロンクライアントとサーバーは、相互にアクセスできる必要があります。ネットワーク通信には、デフォルトでTCPポート22、443、902が使用されます。
- 変換対象となる物理Linuxマシンでは、GRUBブートローダーを使用する必要があります。LILOはサポートされていません。
- 光学ディスクは、光学ディスクドライブから取り出しておく必要があります。
- 物理 Linux マシン(ソースマシン)上で SSH サーバーを設定する必要があります。
注: Ubuntu Linux では、次のコマンドで SSH サーバーをインストールできます:
apt-get install openssh-server
SSH 経由でパスワードを使用してユーザーがリモートアクセスできるようにするには、 sshd_config ファイルを編集します:
vim /etc/ssh/sshd_config
次の文字列を作成するか、コメント解除します:
PasswordAuthentication yes
設定ファイルを保存します:
:wq
sshd デーモンを再起動します (サービス)
service sshd restart
VMware Converter による Linux P2V 変換:ステップバイステップの手順
Linux P2V 変換を実行するには、以下の手順に従ってください:
1. ダウンロード 公式ウェブサイトから VMware vCenter Converter Standalone をダウンロードします。
2. ネットワーク経由で Linux マシンに接続できる Windows マシンにコンバーターをインストールします。 インストール手順は簡単です。EXEファイルを実行し、インストールウィザードの指示に従うだけです。本日の例では、VMware Converter 6.2を使用します。
3. VMware vCenter Converter Standaloneを起動します。
4. ” Convert machine.
5. Source System“をクリックします。開いたマシン変換ウィザードで、ソースシステムを選択します。” Powered on “および” Remote Linux machine“を選択します。リモートLinuxマシンで使用されているIPアドレス、ユーザー名、パスワードを指定します。 この手順では、Linux マシンに SSH サーバーが設定されており、ファイアウォールによって SSH 接続がブロックされていない必要があります。そうでない場合、次のエラーメッセージが表示されます: ソースマシンへの SSH 接続に失敗しました。ファイアウォールがソースマシンの SSH デーモンへのアクセスをブロックしていないか確認してください 。指定したユーザーは、ログイン名とパスワードの組み合わせ、または秘密鍵ファイルを使用して、SSH 経由で Linux コンソールにログインできる必要があります。 この例では、 user1 というユーザー名とパスワードを持つユーザーを使用します。
5.1. View source details をクリックして、VMware仮想マシンに変換するリモートLinuxマシンの詳細を表示します。 Next をクリックして続行し、次のステップに進みます。
セキュリティ警告(リモートホストのサムプリントに関する警告)が表示された場合は、 Yes をクリックして接続します。 コンバーターがリモートのLinuxマシン上でコマンドを実行できず、次のような警告が表示される場合があります: “ライブのLinuxソースマシンへのクエリができません。” SSHで”your_username”としてソースマシンにログインした際、パスワードを入力せずにsudoを実行できることを確認してください 。
この場合、 /etc/sudoers ファイルを編集し、 sudo をパスワードを入力せずに実行できるようにする必要があります。 /etc/sudoers を手動で編集する代わりに、次のコマンドを使用してください:
visudo
ファイルの末尾に、次のように行を追加してください:
user1 ALL=(ALL) NOPASSWD: ALL
ここで、 user1 はユーザーの名前です。 ご自身のユーザー名を入力する必要があります。 Ctrl+X を押して終了し、 Y (Yes) を押してファイルへの変更を保存します。
6. Destination System。変換先のシステムを選択します。デフォルトでは、物理 Linux マシンを変換する場合、変換先のタイプは VMware Infrastructure 仮想マシン として定義されており、物理 Linux マシンを VMware VM に変換する際に利用可能な唯一のオプションです。これは、変換先の VM が ESXi サーバー上、または VMware vSphere クラスター内で実行されることを意味します。 変換後のVMを実行する ESXiホスト が vCenterによって管理されている場合は、vCenter ServerのIPアドレスを選択し、vCenter管理者の認証情報、またはvCenter Serverの管理権限を持つ他のユーザーの認証情報を指定してください。
注: VMware vCenter Converter Standaloneでは、物理LinuxマシンをVMware Workstation形式のVMに変換することはできません。
証明書に関する警告が表示された場合は、 [無視] をクリックして続行できます。
7. Destination Virtual Machine。仮想マシンを保存するデータセンターを選択し、ターゲットVMの名前を入力します。例: Ubuntu18-04-vm 。
8. Destination Location。仮想マシンを実行するESXiホストと、仮想マシンファイルを保存するデータストアを選択します。仮想マシンのバージョンも選択できます。デフォルトでは、サポートされている最高バージョンの仮想マシンが選択されます。この場合、ESXi 6.5が使用されているため、バージョン13になります。
9. Options。 このステップでは、さまざまな変換オプションを編集できます。
コピーするデータ 。コピーするボリュームとして”すべて”または”カスタム”を選択し、仮想ディスクのプロビジョニングタイプを選択できます((厚プロビジョニングまたは薄プロビジョニング))。各仮想ディスクを異なるデータストアに保存することも可能です。” 最適化されたパーティションレイアウトを作成 “チェックボックスはオンにしたままにしてください。このオプションは、ディスクパーティションのアライメントを最適化するために使用されます。
デバイス 。 対象VMのメモリ設定をメモリタブで行います。次にその他タブでディスクコントローラー、プロセッサ数およびプロセッサコア数を設定します。
ネットワーク。接続する仮想ネットワークアダプタ数を選択します。その後、各ネットワークアダプタが接続される仮想ネットワーク、ネットワークコントローラーの種類を選び、接続済み必要であれば電源ON時に接続のチェックボックスを選択します。
詳細オプション。 変換後の設定はこのセクションにあります。物理LinuxサーバをVMware仮想マシンに変換する場合、使用できるのは対象仮想マシンの再設定オプションです。このオプションは、ブートローダの設定、仮想環境(適切な仮想ハードウェア付き)でより最適に動作するようにオペレーティングシステムが使用するドライバの更新に使用されます。
補助VMネットワーク。LinuxサーバをVMに変換する過程で、VMware vCenter Converterは対象ホスト/データストアに補助VMを作成します。補助VMは、Linuxを実行するソース物理マシンへのネットワークアクセスが必要で、ソースマシンの全てのファイルをクローニングします。このセクションでは、補助VMのネットワーク接続のために使用されるIPアドレス、ネットマスク、ゲートウェイ、およびDNSサーバを設定できます。
10. Summary。P2V Linux変換の全ての設定を確認し、問題がなければ完了を押して変換プロセスを開始します。
11. 変換プロセスが完了するまで待ちます。変換にかかる時間は、ソースLinuxマシンのディスクに保存されたデータ量に依存します。変換が終了した後、VMware vCenter Converterの変換ジョブが完了と表示されている場合、VMware vSphere Client、VMware Host Client、またはVMware Workstationのインターフェースで対象Linux仮想マシンを開始できます。
しかし、LinuxマシンのP2V変換プロセスは、97%でエラーが発生することがあります:
失敗しました: 変換中にエラーが発生しました: ‘GrubInstaller::InstallGrub: /usr/lib/vmware-converter/installGrub.sh がリターンコード127で失敗し、メッセージ:FATAL: カーネルが古すぎます VMware-updateGrub.sh を/chroot /mnt/p2v-src-rootコマンドで実行中のエラー:
chroot "/mnt/p2v-src-root" /vmware-updateGrub.sh "GRUB2" "(hd0)" "(hd0,1)" /vmware-device.map "grub2-install" '
この問題は、VMware vCenter Converterが対象VMにGRUBブートローダーを正しく設定しなかったために発生することがあります。 変換後にLinuxバーチャルマシンを起動しようとすると、次のエラーが発生します: オペレーティングシステムの読み込みエラー 。
このVMware Converter Linuxの問題をどのようにして解決できますか?
1. Ubuntuのインストールメディアから起動し、それをレスキューディスクとして使用する必要があります。VMware vSphere Client、VMware Host ClientまたはVMware Workstationを使用してVMの設定を編集します (VM > Edit Settings)。
2. ハードウェア 設定で、バーチャルマシンのCD/DVDドライブを選択し、Ubuntuインストールブート可能メディアを選択します。例として、ESXiホストがある場所でUbuntu 18.04インストールISOディスクイメージをデータストアに配置し使用します。 電源投入時に接続 チェックボックスに忘れずにチェックを入れてください。
3. VMを起動した後、F2 を押してVM BIOSセットアップに入ります。 CD-ROM を ブート セクションの最初のブートデバイスとして選択します。
その後、Exit > Exit Saving Changes へ移動します。
代替として、Escの代わりにVMを起動した直後にF2を押すことで、一回だけブート順序を変更できます。
4. Ubuntuインストールメディアからの起動したら、Try Ubuntu ウェルカム 画面で を選択します。Live DVDからUbuntuがロードされるのを待つと、Ubuntuデスクトップが表示されます。
5. Ubuntuコンソールを開き、root権限を取得します。
sudo -i
6. 使用可能なディスクをリストしてください。
ls -al /dev/sd*
fdisk -l
例として、物理マシンにインストールされたUbuntuには最も簡単なディスクパーティショニングスキームが使用されています。Linuxは、ディスク全体を表す単一の /dev/sda1 パーティションにインストールされています。Linuxを起動するために使用されるパーティションを検出し、 /boot/ ディレクトリを含む、または /boot/ ディレクトリにマウントされているかを判断する必要があります。
7. partedを使用して、Linuxの起動に使用されるパーティションを見つけることができます:
parted /dev/sda
unit MB
p free
これで、Linuxの起動に使用されるパーティションがわかります(その文字列には boot フラグが含まれています)。その後、 parted を終了できます。
quit
注: 手動のパーティショニングスキームと個別のブートパーティションを使用してLinuxを起動している場合、パーティションのリストは異なりますが、bootフラグのあるパーティションを同様に見つける必要があります。
8. RAMディスクにディレクトリを作成し、Ubuntuで使用されるパーティションをマウントします。Ubuntuが単一のパーティションにインストールされている場合、次のようなコマンドを使用してください。 mkdir /mnt/ubuntu18
mount /dev/sda1 /mnt/ubuntu18
注: Ubuntuで複数のパーティションを使用している場合は、個別のディレクトリを作成し、各パーティションを適切なディレクトリにマウントしてください:
mkdir /mnt/ubuntu18/boot
mkdir/mnt/ubuntu18/root
mount /dev/sda1 /mnt/ubuntu18/boot
mount /dev/sda2 /mnt/ubuntu18/root
など。
9. Vをインストールします。 im (テキストエディタ)。
apt-get install vim
10. 各ディスクパーティションの識別子を確認してください。 /boot ディレクトリ(または /boot ディレクトリにマウントされているパーティション)を含むパーティションのUUIDを知る必要があります。 この新しいUUIDを覚えておいてください。今回のケースでは、このパーティションは /dev/sda1
blkid
11. です。インストール済みのUbuntuインスタンスが使用する仮想ディスク上の /etc/fstab ファイルを編集します。 /etc/fstab ファイルは、Ubuntuのルートファイルシステムをマウントした一時ディレクトリ(/mnt/ubuntu18/etc/fstab )にあります。
vim /mnt/ubuntu18/etc/fstab
Linuxの起動時にパーティションが自動的にマウントされるようにするため、 /etc/fstab 内の各パーティションのUUIDを変更してください。物理Linuxマシンで使用されていた古いUUID値を、新しい仮想マシンで使用されている新しいUUID値に変更してください。この単純な例では、 /dev/sda1 というパーティションが1つだけ使用されており、これをルートディレクトリ(/)にマウントする必要があります。 したがって、 2516177b-e9a9-4502-bdae-a3626fe3ab0a を dd05b02c-8772-4ec2-9340-2473ec8c2f8b に変更する必要があります。
変更を保存して vim を終了します。
:wq
注: Linux で複数のパーティションを使用している場合は、他のパーティションの UUID 値を変更するか、 sda2 、 sda3 、 sdb1 、 sdb2 などとして定義し、Linux の起動時にそれらのパーティションを自動的にマウントできるようにする必要があります。
12. 通常、 /boot/grub/ ディレクトリにある GRUB 設定ファイルを編集します。 /boot/ ディレクトリ内のファイルを含むパーティションをマウントした一時ディレクトリを覚えておいてください。物理 Linux マシンを仮想マシンに変換した後、宛先の VM 上でディスクの UUID が変更されたため、ブートローダー (GRUB) は必要なパーティションから起動できなくなっています。 このケースでは、次のコマンドを使用して、 の grub.cfg ファイルを編集します。
vim /mnt/ubuntu18/boot/grub/grub.cfg
13. 古い UUID を新しい UUID に置き換えてください。設定ファイル内には UUID が複数回出現しており、この値を手動で編集するのは不便です。テキストエディタ の vim を使用すると、次のコマンドによって、ソーステキストをターゲットテキストに自動的に置換することができます。 :%s/source_text/target_text/g
ここで、 %s は、テキストファイル全体から一致する値をすべて置換する必要があることを意味します。
今回の例では、次のコマンドを使用します:
:%s/2516177b-e9a9-4502-bdae-a3626fe3ab0a/dd05b02c-8772-4ec2-9340-2473ec8c2f8b/g
変更内容を読み取り専用ファイルに書き込んで、vim を終了します。
:wq!
注: お使いの Linux システムで複数のパーティションを使用している場合は、 grub.cfg ファイルに記載されている UUID を持つすべてのパーティションの UUID 値を置き換えてください。
14. 次に、ブートローダーである GRUB を、以前インストールされていたのと同じディレクトリに再インストールする必要があります。この例では、GRUB は /boot ディレクトリにインストールされており、 /boot ディレクトリは、この例では一時的に /mnt/ubuntu18/boot としてアクセス可能です。Ubuntu の起動に使用されるディスクは、それに応じて /dev/sda となります。
grub-install --boot-directory=/mnt/ubuntu18/boot /dev/sda
15. 事前にマウントされていたすべてのパーティションをアンマウントします:
umount /dev/sda1
16. VMをシャットダウンします:
init 0
17. VMの設定で、CD-ROMではなく仮想ハードディスクから起動するようにブート設定を再構成します。
18. VMの電源を入れます。
19. これで、ESXiホスト上でGRUBを使用して、VMが仮想ハードディスクから起動できるようになります。
以上で、VMware vCenter Converter Standaloneを使用したVMware P2V Linux変換の手順がわかりました。 残念ながら、VMware ConverterのLinux版は提供されていませんが、Linuxマシンだけを使用して物理LinuxサーバーをVMware VMに変換したい場合は、2つ目のP2V Linux変換方法について理解しておく必要があります。
方法2 – VMware Converterを使用しないVMware P2V Linux変換
物理LinuxマシンをESXi形式の仮想マシンに変換する2つ目の方法では、VMware vCenter Converter Standaloneは必要ありません。 この方法は、環境内にWindowsマシンを持たないユーザーや管理者に適しています(ご存じの通り、VMware vCenter ConverterはWindowsにのみインストール可能です)。2つ目のVMware P2V Linux変換方法の仕組みは以下の通りです:
- 物理Linuxサーバーで使用されている物理ディスクのイメージを、 dd ユーティリティを使用して作成します
- 作成されたイメージを、 vmdk 形式のイメージに変換します
- VMware Workstationで新しいVMを作成します (Linux または Windows で実行可能)を作成し、既存の仮想ディスクを新しい VM に使用する
- VMware Workstation 形式から OVF テンプレートへ VM をエクスポートする
- OVF テンプレートから ESXi ホスト上に新しい VM を作成する
この例では、変換が必要な物理マシンに Ubuntu 18 がインストールされており、ESXi 6.5 および vCenter 6.5 が P2V Linux 変換プロセスでは、VMware Workstation 15 が移行ポイントとして使用され、
が移行先として使用されます。 ステップバイステップの手順
1. 物理 Linux サーバー上で、各物理ディスク(/dev/sda 、 /dev/sdb など)に対して、 dd (データ複製ユーティリティ)を実行し、各ディスクのイメージを作成します。 物理LinuxマシンにUSBハードディスクドライブを接続し、 、dd、 ユーティリティで作成したイメージをそのUSB HDDに保存できます。後で、そのUSB HDDを、仮想マシン(VM)を作成する必要があるマシンに接続できます。 この例では、Linux が使用するすべてのパーティションは、 /dev/sda ディスク上にあります:
dd if=/dev/sda of=/media/user1/data/sda.img bs=8M conv=sync,noerror status=progress
ここで:
if=/dev/sda – 物理ディスク全体である入力ファイル;
of=/media/user1/data/sda.img – 出力イメージファイルのパス。この場合は外部ディスク上にあります。
bs=8M – ブロックサイズは 8 MB です。このオプションは速度を向上させます。 dd は、デフォルトで 512 バイト単位のデータブロックを使用してデータをコピーするためです。
conv=sync,noerror – ソースディスク(ファイル)からのデータ読み取り時にエラーが発生しても、 dd が停止しないようにするために使用されます。
status=progress – 利便性を高めるために、コンソールにタスクの進行状況を表示するには、このオプションを使用します。
2. ハードウェアエミュレーション用のオープンソースアプリケーションである qemu をインストールします。 qemu は、どの Linux マシンにもインストールできます。
apt-get install qemu
3. Linux コンソールで、先ほど作成した img ファイルがあるディレクトリに移動します。 dd ユーティリティを使用して作成したディスクイメージを、 img ファイル形式から vmdk 形式に変換します。この作業には Qemu を使用できます。 この例では、1つのディスクイメージを変換します:
qemu-img convert -o compat6 sda.img -O vmdk sda-vmware.vmdk
これでディスクイメージは vmdk 形式に変換され、VMware Workstationで開く準備が整いました。ご存じのとおり、VMDK仮想ディスクの形式は、VMware WorkstationとVMware ESXiで異なります。VMDKファイル形式の詳細については、 こちらで説明されています。 VMware Workstation から VM を OVF テンプレートとしてエクスポートし、その OVF テンプレートから ESXi ホストに VM をインポートする必要があります。
いずれかのコンピュータに VMware Workstation がインストールされていることを確認してください。この例では、Ubuntu 18 を実行しているマシンに VMware Workstation 15 がインストールされていますが、VM に変換する必要があるソースの Linux マシンにはインストールされていません(この P2V Linux 変換方法では Windows は使用しません)。 VMware Workstationを備えたWindowsマシン用のアルゴリズムは類似しています。
4. VMware Workstationがインストールされているマシンに新しいディレクトリを作成します。例えば、/vms/P2V_Linux
mkdir /vms/P2V_Linux
5. qemu によって変換された vmdk ファイルをそのディレクトリにコピーします。この場合、 sda-vmware.vmdk ファイルをそのディレクトリにコピーします。
6. VMware Workstationで新しい仮想マシンを作成します:
File > New virtual machine
新しい仮想マシンウィザード が開かれます。このウィザードのすべての設定手順を完了してください:
Virtual Machine Configuration。カスタム(詳細)を選び、詳細オプションの設定を有効にします。続行するには 次へ をクリックしてください。
Virtual Machine Hardware Compatibility。必要な仮想マシンハードウェアバージョンを選択します。例えば、Workstation 15.x。
Guest Operation System Installation。 オペレーティングシステムを後でインストールする を選びます。
Guest Operating System。 Linux を選択し、ドロップダウンメニューから Ubuntu 64ビット を選びます。
Virtual Machine Name。仮想マシンの名前と位置を入力します。この例では、VM名は P2V Linux でその所在地は/vms/P2V_Linux_VM/です。
Processor configuration。プロセッサの数とプロセッサコアの数を、VMware VMに変換中の物理Linuxマシンで使用されている構成に従って選択します。
Memory for the Virtual Machine。物理Linuxコンピュータのメモリの量と同等以上のメモリ量を設定します。
Network Connection。ネットワークの種類を選択します。例えば、 ブリッジ接続 です。ネットワークの競合を防ぐために、ソースのLinuxサーバーが今切断されていることを確認してください。
I/O Controller Types。推奨される値を選びます。この例では、 SCSIコントローラー:LSI Logic (推奨) が選択されています。
Virtual Disk Type。推奨されるディスクタイプを選択します。この場合、 SCSI (推奨) です。
Select a Disk。Use an existing virtual diskオプションを選びます。
Select an Existing Disk。変換された/dev/sdaディスクの適切な vmdk ファイルを参照します。現在の例では、既存の仮想ディスクとして sda-vmware.vmdk ファイルが選択されています。
注: ソース物理Linuxサーバーに複数のハードディスクがあり、変換後に複数のVMDKファイルがある場合、/dev/sda ディスクからの最初の vmdk ファイルを選びます。仮想マシンの設定を編集することによって、VM作成後に他のディスクを手動で追加してください。
既存の形式を保持します をクリックして、より良い互換性を得ます。
Ready to Create Virtual Machine. 設定の概要を確認し、すべてが正しければ、終了をクリックします。
VMが作成されたら、VMを起動する前にVMの設定を確認できます。
注意: 複数の物理ディスクを仮想ディスクに変換した場合は、次の手順で残りの仮想ディスクを追加します:
- VM>設定 をクリック
- 追加 をクリックし、 ハードウェアタブ
- ハードディスク を選択
- 推奨オプションを選択します (この場合はSCSI)
- 既存の仮想ディスクを使用 をクリック
- 仮想ディスクファイルを選択
7. VMware ワークステーションでVMを電源ONにして (必要な仮想ディスクがすべてVM設定に追加されていることを確認してください)。
8. LinuxゲストがVMにロードされたら、ネットワーク接続を確認します:
ifconfig
9. Linux上でVMwareツールをインストールしてください。Ubuntuでは、VMwareツールは仮想ISOディスクイメージまたはオンラインソフトウェアリポジトリからインストールできます。
apt-get install open-vm-tools
10. すべてが正しければ、VMをシャットダウンして、OVFテンプレートを作成し、VMをESXiホストに移行する準備をしてください。
11. VMware ワークステーションのGUIで、File > Export to OVF をクリックします。
12. 例えば、OVFファイルをLinux VMのディレクトリに保存します。この例では、OVFテンプレートは /vms/P2V_Linux_VM/ に保存されます。
13. WebブラウザでVMware vSphere クライアントを開きます。
14. ホストとクラスター に移動し、変換後にVMを実行したいESXiホストを選択します。
15. テンプレートからVMを作成します。Actions > Deploy OVF Template をクリックします。
OVFテンプレート展開 ウィザードの新しいウィンドウが開き、7つのステップが含まれています:
1. OVFテンプレートを選択 . ローカルファイル をクリックし、次に ブラウズ をクリックします。VMテンプレートのOVFファイルと仮想ディスクのVMDKファイル(複数の場合も含む)の二つのファイルを選択する必要があります。1つのOVFテンプレートファイルのみを選択すると、欠けているファイルとその名前についてのメッセージが表示されます。ファイルはVMware vSphere クライアントを開いているマシンからアクセス可能である必要があります(ファイルはローカルディスク、SMBまたはNFSシェア上に保存されている必要があります)。
2. 名前とフォルダーを選択 . 一意のVM名とターゲットの所在地(データセンターまたはVMフォルダー)を指定します。この例では、VM名は P2V_Linux です。
3. 計算リソースを選択 . このステップでは、仮想マシン(VM)を実行するESXiホストまたはクラスターを選択する必要があります。
このステップで次のエラーが発生する可能性があります: 選択されたテンプレートに問題が検出されました。 詳細: – -1:-1:VALUE_ILLEGAL: [vmx-16] のうちサポートされているハードウェアバージョンはありません。サポートされているバージョン: [vmx-04, vmx-07, vmx-08, vmx-09, vmx-10, vmx-11, vmx-12, vmx-13]。
このエラーは、VMテンプレートで設定されたハードウェアバージョンがESXiホストでサポートされているバージョンよりも高い場合に発生します。
この問題を修正するために、テキストエディターでOVFファイルを編集します。 Vim をLinuxで使用できます。 OVFテンプレートがあるディレクトリに行き、ファイルを編集します:
vim P2V_Linux.ovf
vmx-xx のような文字列を見つけます。xxはVMのハードウェアバージョンの番号です。ESXi 6.5でサポートされる最高のハードウェアバージョンは13で、私たちのテンプレートではVMハードウェアバージョン16が設定されています。
Vim で必要なテキストを見つけるには、ナビゲーションモードで次のように入力します:
/vmx-
vmx-16 を vmx-12 に編集し、OVFファイルをセーブします。
OVFファイルに変更をセーブしたら、VMware vSphere Client に戻り、Next コンピュートリソースを選択 のステップで OVFテンプレートのデプロイ ウィザードをクリックします。
4. 詳細をレビュー 。 このステップではテンプレートの詳細を確認できます。
5. ストレージを選択 。 VMの構成およびディスクファイルを格納するデータストアと仮想ディスク形式(Lazy Zeroed Thick、Eager Zeroed Thick、またはThin Provision)を選択します。
6. ネットワークを選択 。 各仮想ネットワークアダプター用のネットワークを選択します。 適切なネットワークに接続するように各ネットワークアダプターを設定する必要があります。
7. 完了の準備 。 構成を確認し、 完了 を押してVMの作成を開始します。
テンプレートから新しいVMが作成されるまで待ちます。
16. OVFテンプレートからのVMインポートが終了すると、ESXiホストでVMをパワーオンします。 この ブログ記事 でVMテンプレートについてもっと読むことができます。 “ 仮想デバイスをVMを起動するたびに接続しますか?” というメッセージが表示されたら、 いいえ をクリックすることで、VM起動時にそのデバイスを毎回接続しないようにできます。
物理Linuxサーバーは、WindowsおよびVMware vCenter Converter Standaloneを使用せずに仮想マシンに変換されました。 VMware P2V Linux変換のプロセスは、Ubuntu Linuxの例で説明されました。 他のLinuxディストリビューション(SUSEやRed Hatなど)を実行している物理サーバーをVMware仮想マシンに変換する必要があるなら、同じアルゴリズムを使用しますが、コマンドや設定ファイルの所在地が異なる可能性があることに注意してください。SUSEではapt-getパッケージマネージャではなく、zypperを使用し、Red Hadではyumを使用します。仮想マシンのネットワーク設定(IPアドレス、デフォルトゲートウェイ、DNSサーバーなど)を再設定する必要があるかもしれません。
このビデオを観て、VMwareのP2V Linux変換方法が実際にどのように行われるかをご覧ください:
結論
物理LinuxサーバーをVMware仮想マシンに変換する方法は様々です – Windowsマシンが必要なVMware vCenter Converter Standaloneを使う方法や、LinuxユーティリティをVMware Workstationと組み合わせて使用する方法です。どの方法を使用する際も、VMの設定を手動で編集する必要があるかもしれません。最初の方法を使用する場合、ESXiホストのみがP2V Linux変換の転送先として使用できますが、2番目の方法は物理LinuxマシンをVMware ESXiおよびVMware Workstationの形式に変換できます。































