最新の ESXi を利用したい場合、たいてい ISO イメージ ファイルからインストールした後に
オフライン バンドルとよばれるパッチを適用することになります。
しかし PowerCLI の Image Builder を利用することで、オフライン バンドルの zip ファイルから
そのパッチが適用された ESXi の ISO イメージ ファイルをエクスポートすることができます。
Image Builder のドキュメントは下記のあたりです。
vSphere ESXi Image Builder を使用したインストールのカスタマイズ
Image Builder については、以前に下記のブログでも紹介されていました。
VMware ESXi イメージ管理ベストプラクティス その1 - Japan Cloud Infrastructure Blog - VMware Blogs
VMware ESXi イメージ管理ベストプラクティス その2 - Japan Cloud Infrastructure Blog - VMware Blogs
本来であれば Image Builder は、ハードウェア特有のドライバ追加などの場合に利用されますが、
今回はただ、パッチから最新版 ESXi のインストーラを抽出するためだけに利用してみます。
PowerCLI をインストールしておきます。
今回のバージョンは下記です。
PowerCLI> Get-PowerCLIVersion | select User*
UserFriendlyVersion
-------------------
VMware PowerCLI 6.5.1 build 5377412
ESXi のオフラインバンドル(パッチ)を MyVMware からダウンロードしておきます。
PowerCLI> ls .\ESXi650-201712001.zip | select Name,Length
Name Length
---- ------
ESXi650-201712001.zip 478519869
ISO イメージ ファイルのエクスポート。
Image Builder で、オフライン バンドルを読み込みます。
PowerCLI> Add-EsxSoftwareDepot .\ESXi650-201712001.zip
Depot Url
---------
zip:D:\VMware\ESXi\ESXi650-201712001.zip?index.xml
オフラインバンドルには、複数のイメージ プロファイルが含まれています。
今回は、VMware Tools のインストーラと、セキュリティパッチ以外の修正も含んでいる
「ESXi-6.5.0-20171204001-standard」というイメージ プロファイルを利用します。
PowerCLI> Get-EsxImageProfile | ft -AutoSize
Name Vendor Last Modified Acceptance Level
---- ------ ------------- ----------------
ESXi-6.5.0-20171201001s-no-tools VMware, Inc. 2017/12/18 11:40:25 PartnerSupported
ESXi-6.5.0-20171204001-standard VMware, Inc. 2017/12/18 11:40:25 PartnerSupported
ESXi-6.5.0-20171204001-no-tools VMware, Inc. 2017/12/18 11:40:25 PartnerSupported
ESXi-6.5.0-20171201001s-standard VMware, Inc. 2017/12/18 11:40:25 PartnerSupported
イメージプロフィアるを指定して、ISO イメージ ファイルをエクスポートします。
PowerCLI> Export-EsxImageProfile ESXi-6.5.0-20171204001-standard -ExportToIso -FilePath D:\work\ESXi-6.5.0-20171204001-standard.iso
ISO イメージ ファイルがエクスポートされました。
PowerCLI> ls D:\work\ESXi-6.5.0-20171204001-standard.iso | select Name,Length
Name Length
---- ------
ESXi-6.5.0-20171204001-standard.iso 349245440
PowerCLI スクリプト編。
同様のことができる簡易的な PowerCLI スクリプトを作成してみました。
(ただし特にエラー制御とかはしていません。)
export_esxi-offline-bundle_to_iso.ps1
ESXiのオフラインバンドルから、ISO イメージファイルをエクスポート。 · GitHub
下記のように、オフライン バンドルと、スクリプト ファイルを配置して・・・
PowerCLI> ls | select Name,Length
Name Length
---- ------
ESXi650-201712001.zip 478519869
export_esxi-offline-bundle_to_iso.ps1 502
オフライン バンドルのファイル名とエクスポート先のディレクトリを指定して実行します。
PowerCLI> .\export_esxi-offline-bundle_to_iso.ps1 .\ESXi650-201712001.zip D:\work\
Export ISO File: D:\work\ESXi-6.5.0-20171204001-standard.iso
この ISO ファイルからブートして、ESXi をインストールすることができます。
vSAN の動作確認などでは最新の ESXi を利用したかったりするので、
環境構築の効率化として活用できるかもしれないと思います。
以上、Image Builder で ESXi のパッチから ISO イメージ ファイルをエクスポートする話でした。