【vSphere】仮想マシンクローンのカスタマイズがうまく動かないときに確認した方がよいこと

どうも、Tです。

仮想マシンのクローンしていますか?仮想マシンのカスタマイズ仕様使っていますか?

vSphereの仮想マシンクローン時にクローンしたゲストOSのホスト名やIPアドレス、スクリプトを自動実行してくれたり非常に便利な機能ですが、これを使う要件があります。

毎度調べるの苦手なので、Linuxの要件についてまとめました。

LinuxのゲストOSカスタマイズ要件

VMware Toolsの要件

クローンにゲストOSをカスタマイズするのは、最新バージョンのVMware Toolsが仮想マシンまたはテンプレートにインストールされている必要があります。

Linuxの場合は、open-vm-toolsパッケージを導入します。

VMware support for open-vm-tools

ToolsのバージョンはVMware Product Interoperability Matricesから確認するようにしましょう。

https://www.vmware.com/resources/compatibility/sim/interop_matrix.php

実際のところVMware Toolsが最新でなくても動いてしまうのですが、問題が行ったときにサポートから最新に上げるよう案内が来る可能性があります。

VMware Toolsを最新に保っておくことは運用上も理想の形なので、可能な限り上げるようにしておきましょう。

仮想ディスクの要件

ゲストOSがインストールされているディスクはSCSI(0:0)である必要があります。

仮想マシンの設定から、ゲストOSをインストールしているディスクがSCSIコントローラ0の1つ名のディスク(0番)にインストールされていることを確認しましょう。

パッケージの要件

LinuxのゲストOSをカスタマイズするには、ゲストOSにPerlがインストールされている必要があります。

割と失念してしまうところです。バージョン指定はないのでPerlをインストールしておきましょう。

ゲストOSカスタマイズサポートの確認

そもそもゲストOSがサポートされていないとだめです。

動作しているvSphere環境でサポートされているゲストOSをVMware Compatibility Guideで確認しておきましょう。

VMware Compatibility Guide - Guest/Host Search

要件じゃないけど気を付けていること

要件ではないですが、仮想マシンクローンとカスタマイズを行うときに気を付けていることです。僕は、検証環境の準備に仮想マシンクローンを多用するので、その目的に沿った考え方です。全般に適用できるルールではないのでご注意ください。

シンプルなテンプレートマシンを準備する

僕は検証マシンを増やす際に、クローンを多用しています。その際は、テンプレート仮想マシンからクローンを行いますが、テンプレート仮想マシンは可能なかぎりシンプル構成にしています。

仮想マシンハードウェア

テンプレート用の仮想マシンを作成する際に、可能な限り最小の構成で組んでいます。より大きなリソースが必要な場合は、クローン時もしくはクローン後に使っている中で増やしていきます。そうすることで、不用意に無駄なリソースを使わないようにしています。

  • CPU:1ソケット1コア
  • メモリ:2GB
  • ネットワークアダプタ:1つ
  • SCSIコントローラ:1つ
  • ハードディスク:50GBを1つ

このあたりは、テンプレートの用途によるので使いやすい構成を用意しておきます。

ゲストOSの設定

こちらも最低限の設定にしています。

  • Minimalインストール
  • 最低限必要なパッケージのみ導入(perl)
  • Firewalld無効
  • SELinux無効
  • テンプレート用IPアドレス設定(yum updateに利用)
  • 時刻同期設定
  • DVDリポジトリ設定

CD/DVDドライブはクライアントデバイス

CD/DVDドライブは「クライアントデバイス」「パワーオン時に接続しない」ようにしています。データストアなどに接続しているとクローン時にエラーの原因になる可能性があるのと、もしISOがマウントされてしまった場合、起動時にOSのインストーラなどが起動しないようにするための対処です。

ネットワークアダプタは、自動接続しない

ネットワークアダプタは、「パワーオン時に接続しない」ようにしています。

カスタマイズでIPアドレス変更したとに自動起動、自動接続で既存のIPとバッティングしていない目をみたので、OS起動後に設定されているIPを確認してネットワークにつなぐようにしています。

参考

https://docs.vmware.com/jp/VMware-vSphere/7.0/com.vmware.vsphere.vm_admin.doc/GUID-E63B6FAA-8D35-428D-B40C-744769845906.html#GUID-E63B6FAA-8D35-428D-B40C-744769845906

まとめ

このあたりも銀の弾丸はないので、環境にあったテンプレート・カスタマイズの使い方を考え続けるしないですね。でも、カスタマイズ使っている率少なそうなんだよなぁ・・・・。

Windows版も作り方ったけど、最近あまり触る機会ないのでおいおい更新します・・・。