こんにちは、VMware グローバルサポート vSphere チームの金子です。
VMware vSphere 製品に関する問い合わせにおいて、仮想マシン作成時の設定 「ゲスト OS を選択」 は
正しく設定しなければならないのか、どんなときに利用されているのかといったご質問をいただくことがあります。
今回は、vSphere で仮想マシンを作成する際に設定する 「ゲスト OS の選択」 についてお話しします。
1.「ゲスト OS を選択」とは
仮想マシンを新しく作成する際には、その仮想マシンにインストールする予定のゲスト OS をメニューから選択する箇所があります。これが、今回のテーマ 「ゲスト OS を選択」 です。
vSphere 8.0a より
vSphere 7.0 U3g より
2.どんなときに利用される?
ゲスト OS はいったいどんなときに利用されるのか、主な場面を下記にまとめます。
– インストールできるゲスト OS を制限するとき
あらゆる OS をゲスト OS としてインストールできる仮想マシンですが、 「どの OS をその仮想マシンにインストールできるのか」 については、仮想マシンのハードウェアバージョン(仮想マシン バージョンや 仮想マシンの互換性とも呼ばれる)によって定義されています。
たとえば、vSphere 7.0 U3g の画面を見てみましょう。ESXi 7.0 U2 以降(ハードウェアバージョン 19)では選択可能な Microsoft Windows Server 2022 が、ESXi 6.5 以降 (ハードウェアバージョン 13) では存在しません。これは、そのハードウェアバージョンが定義された当時に その OS が登場していなかったという背景によるものです。このように、ゲスト OS の選択は、仮想マシンのハードウェアバージョンとゲスト OS が互換性の無い組み合わせとならないよう制限を設ける働きがあります。
ハードウェアバージョン 19
ハードウェア バージョン 13 では Microsoft Windows Server 2022 が選択できません。ESXi 6.5 GA リリースは 2016 年のため、その当時に存在しなかった OS であるためです。
– 仮想マシン初期設定を決定するとき
下記は、仮想マシンを作成するときに注目されることの多い仮想マシンのハードウェア設定画面です。仮想マシンのスペックを左右するため、作成後もよく調整される方が多いと思います。
仮想マシン作成時に入力されている値は、実は前述の画面で選ぶゲスト OS によって変わるのです。すなわち、ゲスト OS ごとに、vSphere 初期構成の CPU やメモリ、HDD のサイズ、ファームウェア (EFI, BIOS) があらかじめ定義されているため、自動で入力されるのです。
– ゲスト OS カスタマイズを行うとき
仮想マシンをクローン展開しながら、ユーザ名や仮想マシン名、TCP/IP 設定など、ゲスト OS 上の設定値を整えてくれるゲスト OS カスタマイズ機能でも使われています。
どのようなカスタマイズを行うのかを記述した カスタマイズ仕様 については、ご存知の通り Windows OS と Linux OS では仕組みが異なる OS であるためカスタマイズ仕様も全く異なる内容になっています。
実際に Windows がゲスト OS である仮想マシンをカスタマイズしようとすると、Windows 向けのカスタマイズ仕様のみが選択肢として現れました。これは、クローン対象の仮想マシンのゲスト OS 設定が Windows となっているためです。
Windows 向けのカスタマイズ仕様だけでなく、Linux 向けのカスタマイズ仕様も用意してみます。
Windows 仮想マシンのカスタマイズ仕様として選べるのは、Windows 向けカスタマイズ仕様のみでした。Linux 向けカスタマイズ仕様は選択肢として現れません。
– VMware Tools をインストール、アップグレードするとき
vSphere 仮想基盤上で動く仮想マシンにインストールするエージェント VMware Tools については、ゲスト OS で動くアプリケーションであるため、インストールメディアもゲスト OS に合ったものを使用しなければなりません。
しかも、Windows か Linux かといった大まかさではなく、たとえば Windows であれば Windows Vista 以降か以前か といったレベルでもインストールメディアを切り替えています。
具体的に選択されたゲスト OS に対応する VMware Tools インストーライメージ ISO ファイルは下記のファイルから確認することができます。
1 |
<strong>かつての Windows バージョンでは winPre2k.iso が、最近の Windows バージョンでは windows.iso が対応していることが読み取れます。(最近の ESXi では winPre2k.iso は同梱されていません)(ESXi 8.0a にて確認)</strong> |
1 2 3 4 5 6 |
cat /vmfs/volumes/OSDATA-63e9f984-6c98eee8-95fe-0050568f651a/locker/packages/vmtoolsRepo/vmtools/isoimages_manifest.txt ... winNT = "winPre2k.iso" winMe = "winPre2k.iso" ... windows2022srvNext-64 = "windows.iso" |
ちなみに ESXi 8.0a 同梱の VMware Tools バージョンは下記ファイルから 12.0.6 確認できました。
1 2 3 4 |
/vmfs/volumes/OSDATA-63e9f984-6c98eee8-95fe-0050568f651a/locker/packages/var/db/locker/bulletins/VMware-VM-Tools-4781186268230135060.xml <bulletin><id>VMware-VM-Tools_12.0.6.20104755-20513097</id><vendor>VMware</vendor> ...以下略... <img class="alignnone size-full wp-image-40996" src="https://blogs.vmware.com/vmware-japan/files/2023/04/実際に確認しても中身は12.0.6-でしたねScreenshot-2023-04-15-at-13.16.55.png" alt="" width="2152" height="1142" /> |
実際に ISO ファイルの内容をみてみると、やはり VMware Tools バージョンは 12.0.6 であると確認できました。
– ゲスト OS サポートレベルを示すとき
ゲスト OS を選択したときに、そのゲスト OS がどのようなサポートレベルなのかを示すときにも使われています。
例えば、Microsoft Windows Server 2008 R2 を vSphere 8.0 でインストールしようとすると、そのサポートレベルが限定的であることが表示されます。
Microsoft Windows Server 2003 の場合は、将来的にサポートが終了される旨が表示されます。
以上が、仮想マシンの ゲスト OS を選択 設定が主に使用される場面のご紹介でした。
3.インストール予定のゲスト OS が選択肢がないときは?
上記でご案内したように、サポートが終了しているゲスト OS も選択肢にあることがあります。したがって、選択肢に無いゲスト OS については、ご利用の vSphere バージョンリリース時点で存在しなかったような新しいゲスト OS ではないでしょうか。
そのようなときは、一度 弊社ナレッジベースをご確認ください。
例えば Windows Server 2019 も Windows 11 については、下記ナレッジをご案内しており、もっとも近いバージョンのゲスト OS を選択するようご案内しています。
1 2 3 4 |
Windows Server 2019 guest operating system option is not available during virtual machine creation (59222) <a href="https://kb.vmware.com/s/article/59222">https://kb.vmware.com/s/article/59222</a> Windows 11 guest operating system option is not available during virtual machine creation (85665) <a href="https://kb.vmware.com/s/article/85665">https://kb.vmware.com/s/article/85665</a> |
4.ゲスト OS をアップグレードした場合はどうする?
ゲスト OS アップグレード後に、合致するゲスト OS 選択肢がありましたら、ゲスト OS の選択を改めて編集をお願いします。
1 2 |
<strong>構成されたゲスト OS の変更</strong> <a href="https://docs.vmware.com/jp/VMware-vSphere/7.0/com.vmware.vsphere.vm_admin.doc/GUID-3B66132C-F3E7-4F86-836F-80A03AC99E2A.html">https://docs.vmware.com/jp/VMware-vSphere/7.0/com.vmware.vsphere.vm_admin.doc/GUID-3B66132C-F3E7-4F86-836F-80A03AC99E2A.html</a> |
アップグレードに際しては、あらかじめ弊社最新のサポートポリシーをご一読のうえ、アップグレード可否をご確認ください。
1 2 |
VMware (recommendations, best practices and scope of support) for Guest Operating System in-place update/upgrade. (85680) <a href="https://kb.vmware.com/s/article/85680">https://kb.vmware.com/s/article/85680</a> |
内容によってはサポートされないものや、ゲスト OS ベンダがサポートしていないようなアップグレードについては、弊社もサポートできない内容となりますので、ご注意ください。
同一個体の仮想マシンについて、そのゲスト OS をアップグレードする作業は インプレース (英: in-place) と表記されますので、ナレッジ検索のご参考になればと思います。
5.ESXi と ゲスト OS の互換性の確認方法は?
弊社互換性ガイドにて、ご案内しておりますので、ぜひご確認ください。ゲスト OS との互換性確認方法をご紹介します。
a. 互換性ガイドにアクセスして “What are you looking for:” から “Guest OS” を選択します
b. ゲスト OS 互換性ガイドが開きます
c. ご利用の ESXi バージョンと 確認したい ゲスト OS を選択して ”Update and View Results” を押下します
このとき U2 や U3 は、Update 2, 3 にそれぞれ対応しますが、U2a, U3f といった 細かなバージョンは問いませんので、それぞれ U2, U3 をご覧いただければ問題ありません。
d. 該当の ESXi と互換性のある ゲスト OS 一覧が表示されました
e. ここでは 見本として Windows Server 2022 を選択してみます
ここではサポートされる仮想マシンハードウェアバージョン (Supported Virtual Hardware Versions) や 関連ナレッジ記事 (KB Articles) も掲載されており、
定期的に更新されますので、ゲスト OS インストール後も定期的にご確認いただければ幸いです。
6.ゲスト OS ごとの初期設定を確認してみよう
先にご案内した内容の補足として、ゲスト OS を選択したあと、CPU やメモリのサイズはどこで確認できるのかについてお話いたします。
実は、ESXi 実機にあるファイルからテキストで確認することが確認できます。たとえば、下記は ESXi 8.0a で確認できる 仮想マシンハードウェアバージョン 20 における Microsoft Windows Server 2022 の設定内容です。
初期構成の CPU 数 (2 コア 1 ソケット) や、メモリサイズ 4GB、HDD 容量 90 GB、ファームウェア EFI と記述されていることが確認できますね。なにかの参考になれば幸いです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
/etc/vmware/hostd/env/vmconfigoption-esx-hw20.xml <family>windowsGuest</family> <fullName>Microsoft Windows Server 2022 (64-bit)</fullName> <ich7mRecommended>false</ich7mRecommended> <id>windows2019srvNext_64Guest</id> <numRecommendedCoresPerSocket>2</numRecommendedCoresPerSocket> <numRecommendedPhysicalSockets>1</numRecommendedPhysicalSockets> ... <recommendedDiskSizeMB>92160</recommendedDiskSizeMB> <recommendedEthernetCard>vim.vm.device.VirtualE1000e</recommendedEthernetCard> <recommendedFirmware>efi</recommendedFirmware> <recommendedMemMB>4096</recommendedMemMB> 各項目の定義(参照) : <a href="https://vdc-repo.vmware.com/vmwb-repository/dcr-public/b525fb12-61bb-4ede-b9e3-c4a1f8171510/99ba073a-60e9-4933-8690-149860ce8754/doc/vim.vm.GuestOsDescriptor.html">Data Object - GuestOsDescriptor(vim.vm.GuestOsDescriptor)</a> |