nested esxi

esx-tools-for-esxi を vSphere 5.0 にインストールする

前のエントリで紹介した Nested ESXi 用の VMware Tools ですが、System Requirements には vSphere 5.x とあるにも関わらず、vSphere 5.0U3 にインストールできません。

~ # esxcli software vib install -v /tmp/esx-tools-for-esxi-9.7.1-0.0.00000.i386.vib --no-sig-check
[DependencyError]
VIB VMware_bootbank_esx-tools-for-esxi_9.7.1-0.0.00000 requires esx-base >= 5.0esx-base < 6.0, but the requirement cannot be satisfied within the imageProfile.
Please refer to the log file for more details.
~ #

requires の出力がおかしいところから察するに制約に問題があるようなので、Vib の中にある descriptor.xml の constraint 要素を編集することで回避させます。

Vib ファイルは ar 形式でアーカイブされているので、作業は適当な Linux 上で行います。

rigel:~/vib # ls
esx-tools-for-esxi-9.7.1-0.0.00000.i386.vib
rigel:~/vib # ar xv esx-tools-for-esxi-9.7.1-0.0.00000.i386.vib
x - descriptor.xml
x - sig.pkcs7
x - esx-tool
rigel:~/vib # ls
descriptor.xml esx-tools-for-esxi-9.7.1-0.0.00000.i386.vib
esx-tool sig.pkcs7
rigel:~/vib #

ar コマンドは x オプションで展開することが出来ます。Vib ファイルの中には以下の 3 つのファイルがあることが分かります。

  • descriptor.xml
    • Vib ファイルの定義ファイル。Vib の依存関係、展開されるファイル一覧、再起動の必要性、AcceptanceLevel が含まれています。
  • sig.pkcs7
    • Vib の署名ファイル。
  • esx-tool
    • Vib でインストールされるファイルを tar+gzip 形式でアーカイブしたファイルです。Vib では Payload と表現されます。

descriptor.xml の constraint 要素を見ると、5.0 <= esx-base < 6.0 であろうことは予測できます。

<vib version="5.0"><type>bootbank</type><name>esx-tools-for-esxi</name><version>9.7.1-0.0.00000</version><vendor>VMware</vendor><summary>VMware Tools for ESXi as a guest.</summary><description>VMware Tools for ESXi as a guest.</description><release-date>2014-03-27T20:19:41.259206</release-date><urls/><relationships><depends><constraint name="esx-base" relation="&gt;=" version="5.0esx-base &lt; 6.0"/></depends><conflicts/><replaces/><provides><provide name="tools-for-esxi" version="9.7.1"/></provides><compatibleWith/></relationships><software-tags/><system-requires><maintenance-mode>true</maintenance-mode></system-requires><file-list><file>etc/init.d/vmtoolsd</file><file>etc/pam.d/vmtoolsd</file><file>etc/vmware-tools/plugins/common/libhgfsServer.so</file><file>etc/vmware-tools/plugins/common/libvix.so</file><file>etc/vmware-tools/plugins/vmsvc/libguestInfo.so</file><file>etc/vmware-tools/plugins/vmsvc/libpowerOps.so</file><file>etc/vmware-tools/plugins/vmusr/libhgfsUsability.so</file><file>etc/vmware-tools/poweroff-vm-default</file><file>etc/vmware-tools/poweron-vm-default</file><file>etc/vmware-tools/resume-vm-default</file><file>etc/vmware-tools/scripts/vmware/network</file><file>etc/vmware-tools/statechange.subr</file><file>etc/vmware-tools/suspend-vm-default</file><file>lib/libgmodule-2.0.so.0</file><file>lib/libgobject-2.0.so.0</file><file>lib/libhgfs.so</file><file>lib/libvmtools.so</file><file>sbin/vmtoolsd</file></file-list><acceptance-level>certified</acceptance-level><live-install-allowed>false</live-install-allowed><live-remove-allowed>false</live-remove-allowed><cimom-restart>false</cimom-restart><stateless-ready>true</stateless-ready><overlay>true</overlay><payloads><payload name="esx-tool" type="vgz" size="1842084"><checksum checksum-type="sha-256">26cf3f6447a2f24adb3e3bcb66fdbeacc9d157228b50b3983ed7a194c3b023a8</checksum><checksum checksum-type="sha-1" verify-process="gunzip">ecd5ebbbd66b500e8797a083502881390e9e0ae2</checksum></payload></payloads></vib>

が、その記述は特に公開されていないので、ここでは constraint 要素から relation 属性と version 属性を削除することで対応します。

rigel:~/vib # vi descriptor.xml
rigel:~/vib # cat desciptor.xml
&lt;vib version="5.0"&gt;&lt;type&gt;bootbank&lt;/type&gt;&lt;name&gt;esx-tools-for-esxi&lt;/name&gt;&lt;version&gt;9.7.1-0.0.00000&lt;/version&gt;&lt;vendor&gt;VMware&lt;/vendor&gt;&lt;summary&gt;VMware Tools for ESXi as a guest.&lt;/summary&gt;&lt;description&gt;VMware Tools for ESXi as a guest.&lt;/description&gt;&lt;release-date&gt;2014-03-27T20:19:41.259206&lt;/release-date&gt;&lt;urls/&gt;&lt;relationships&gt;&lt;depends&gt;&lt;constraint name="esx-base"/&gt;&lt;/depends&gt;&lt;conflicts/&gt;&lt;replaces/&gt;&lt;provides&gt;&lt;provide name="tools-for-esxi" version="9.7.1"/&gt;&lt;/provides&gt;&lt;compatibleWith/&gt;&lt;/relationships&gt;&lt;software-tags/&gt;&lt;system-requires&gt;&lt;maintenance-mode&gt;true&lt;/maintenance-mode&gt;&lt;/system-requires&gt;&lt;file-list&gt;&lt;file&gt;etc/init.d/vmtoolsd&lt;/file&gt;&lt;file&gt;etc/pam.d/vmtoolsd&lt;/file&gt;&lt;file&gt;etc/vmware-tools/plugins/common/libhgfsServer.so&lt;/file&gt;&lt;file&gt;etc/vmware-tools/plugins/common/libvix.so&lt;/file&gt;&lt;file&gt;etc/vmware-tools/plugins/vmsvc/libguestInfo.so&lt;/file&gt;&lt;file&gt;etc/vmware-tools/plugins/vmsvc/libpowerOps.so&lt;/file&gt;&lt;file&gt;etc/vmware-tools/plugins/vmusr/libhgfsUsability.so&lt;/file&gt;&lt;file&gt;etc/vmware-tools/poweroff-vm-default&lt;/file&gt;&lt;file&gt;etc/vmware-tools/poweron-vm-default&lt;/file&gt;&lt;file&gt;etc/vmware-tools/resume-vm-default&lt;/file&gt;&lt;file&gt;etc/vmware-tools/scripts/vmware/network&lt;/file&gt;&lt;file&gt;etc/vmware-tools/statechange.subr&lt;/file&gt;&lt;file&gt;etc/vmware-tools/suspend-vm-default&lt;/file&gt;&lt;file&gt;lib/libgmodule-2.0.so.0&lt;/file&gt;&lt;file&gt;lib/libgobject-2.0.so.0&lt;/file&gt;&lt;file&gt;lib/libhgfs.so&lt;/file&gt;&lt;file&gt;lib/libvmtools.so&lt;/file&gt;&lt;file&gt;sbin/vmtoolsd&lt;/file&gt;&lt;/file-list&gt;&lt;acceptance-level&gt;certified&lt;/acceptance-level&gt;&lt;live-install-allowed&gt;false&lt;/live-install-allowed&gt;&lt;live-remove-allowed&gt;false&lt;/live-remove-allowed&gt;&lt;cimom-restart&gt;false&lt;/cimom-restart&gt;&lt;stateless-ready&gt;true&lt;/stateless-ready&gt;&lt;overlay&gt;true&lt;/overlay&gt;&lt;payloads&gt;&lt;payload name="esx-tool" type="vgz" size="1842084"&gt;&lt;checksum checksum-type="sha-256"&gt;26cf3f6447a2f24adb3e3bcb66fdbeacc9d157228b50b3983ed7a194c3b023a8&lt;/checksum&gt;&lt;checksum checksum-type="sha-1" verify-process="gunzip"&gt;ecd5ebbbd66b500e8797a083502881390e9e0ae2&lt;/checksum&gt;&lt;/payload&gt;&lt;/payloads&gt;&lt;/vib&gt;
rigel:~/vib #

descriptor.xml を編集した後に、ar コマンドで再度 Vib にアーカイブします。このときアーカイブするファイルの順序に気をつけます。esx-tools-for-esxi の Vib ファイルは descriptor.xml, sig.pkcs7, esx-tool の順番でアーカイブされています。この順序が異なっている場合、Vib インストール時に期待されているファイルがない警告されてしまいます。

rigel:~/vib # ar rv esx-tools-for-esxi-9.7.1-0.0.00000.i386.2.vib descriptor.xml sig.pkcs7 esx-tool
ar: creating esx-tools-for-esxi-9.7.1-0.0.00000.i386.2.vib
a - descriptor.xml
a - sig.pkcs7
a - esx-tool
rigel:~/vib #

新しく作成した Vib ファイルを ESXi 上にコピーし esxcli software vib install コマンドでインストールします。

~ # esxcli software vib install -v /tmp/esx-tools-for-esxi-9.7.1-0.0.00000.i386.2.vib --no-sig-check
Installation Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed: VMware_bootbank_esx-tools-for-esxi_9.7.1-0.0.00000
VIBs Removed:
VIBs Skipped:
~ #

まとめ

  • 少なくとも vSphere 5.0U3 では esx-tools-for-esxi の Vib ファイルをそのままインストールできない
  • Vib ファイルは ar 形式でアーカイブされている
  • Vib ファイルの依存関係は descriptor.xml に記述されている
  • descriptor.xml の constraint 要素を編集することで依存関係を変更可能

関連記事

  1. nested esxi

    vSphere Home Lab 向けの CentOS 7.x NFS Server

    まとめ検証環境であることから、性能を少しでも稼ぐのとズボラな設定…

  2. netapp

    Enjoy extremely fast cloning with NetApp VAAI-NAS

    まとめVirtual Storage Console をインスト…

  3. console

    Remote Console でマウスが吹っ飛ぶ件の対策

    まとめ仮想マシンに Windows/Linux をインストールす…

  4. ad

    vSphere Client 5.5 (C#) を Domain Controller にインストー…

    VMware 関連のラボ環境を作成するとき、唯一の Windows が…

  5. netapp

    NetApp Clustered DataONTAP command lines

    はじめにVirtual Volumes の挙動を Nested E…

  6. vcenter

    vMotion の歴史 (1) – 概要

    vmworld 2015 US の中でも感慨深いセッションがあったので…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。










  1. vcenter

    vMotion の歴史 (2) – VirtualCenter 1.…
  2. VMConAWS

    VMware Cloud on AWS 概要
  3. devbox

    Insight into VMware Photon Controller &#…
  4. vsphere

    備忘録: 真なるクローニングに向けて
  5. Tong-Sai@Naka Island, Thailand

    raid-5/6

    Virtual SAN – RAID-5/6 には Witness …
PAGE TOP
Translate »