ESXi 5.1(無償版)を5.5にバージョンアップする

無償版ESXi(VMware)では下記の問題があるため、アップグレードの方法は限られるようです。

  • 無償版ライセンスではVMware Update Managerは使えない
  • 無償版ライセンスの場合アップグレード用のファイル「ESXi Offline Bundle」をダウンロード出来ない

ではどのような手段があるのかというと、以下2つの方法です。

  • VMware vSphere ESXi 5.5 Installerでアップグレードする
  • WEB経由でアップグレードを行う

今回は2番の方法で実行することにしました。以下手順を… ところが、ひと通り調べたところで自分が利用しているESXiのイメージはFujitsuカスタマイズ(PRIMERGYサーバ用)であることに気付きました。ある程度まとめたところなのでこれはこのまま残しますが、実際に試した手順は別記事としてこちらに記録します。

PRIMERGY(富士通)カスタムESXi5.1を5.5にバージョンアップする
PRIMERGY(富士通)カスタムESXi5.1を5.5にバージョンアップする
https://fand.jp/how-to-upgrade-es-xi-5-5-for-primergy/
オフラインバンドルを用いて富士通サーバー向け ESXi (無償版)をアップグレードする

WEB経由アップグレードの方法

アップグレード作業の前後に実施すること

  • 前提条件の確認
  • ゲストOSの停止
  • ESXiのメンテナンスモード化
  • WEB経由でのESXiアップグレード作業(後述)
  • ESXiのメンテナンスモード化を解除
  • 各種ゲストOSの起動

前後の作業は当たり前というか、念のためですね。

アップデートを行うコマンドは複数あるので、各々の環境により実施方法が異なります。特に気をつけなければいけないケースとしては以下のケースが挙げられます。

  • ベンダ特有のカスタムイメージをインストールしている場合
  • 独自にVmwareのイメージをカスタマイズしてドライバーを追加している場合

そういう意味でも、今一度事前に利用環境を確認することをお薦めします。

[プロファイル確認コマンド]
~ # esxcli software profile get

ベンダ提供カスタムイメージを利用している場合の一事例としてこちらの記事も参考にして下さい。

なお、冒頭に記した通り以下手順での作業は実施していませんので未確認の内容となります。(単純なので、おそらく問題ないと思いますが)

WEB経由でのESXiアップグレード作業の詳細

アップグレード対象のESXiにsshでログインします。sshが有効になっていない場合は、セキュリティプロファイルからsshサービスを起動させる必要があります。コンソール又は vSphere client いずれでも設定可能です。ここでは説明を割愛しますので未だの場合は「esxi 5.x ssh」等で方法を検索のうえ設定して下さい。

この手法ではhttp経由でファイルをダウンロードが必要になりますので、ESXiのファイアウォール設定で「httpClient」を有効(true)に変更します。

[確認のコマンド]
~ # esxcli network firewall ruleset list | grep httpClient
httpClient            false

[httpClient有効化のコマンド]
~ # esxcli network firewall ruleset set --ruleset-id=httpClient --enabled=true
(--ruleset-id は -r, --enabled は -e でも良い)

~ # esxcli network firewall ruleset list | grep httpClient
httpClient            true

「httpClient」を有効にしたら、以下のコマンドを実行しESXi 5.5へのアップグレードを行います。先ず利用可能なUpdate Profileの確認。

~ # esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep ESXi-5.5 | sort

ESXi-5.5.0-1331820-no-tools       VMware, Inc.  PartnerSupported
ESXi-5.5.0-1331820-standard       VMware, Inc.  PartnerSupported
ESXi-5.5.0-20131201001s-no-tools  VMware, Inc.  PartnerSupported
ESXi-5.5.0-20131201001s-standard  VMware, Inc.  PartnerSupported
ESXi-5.5.0-20131204001-no-tools   VMware, Inc.  PartnerSupported
ESXi-5.5.0-20131204001-standard   VMware, Inc.  PartnerSupported

(2014.02.10現在)

その時の最新版を利用しましょう。 命名の雰囲気から20131204001が新しいように見えますが、リリースノート(更新日2013年10月14日)を見る限り1331820とあります。

no-tools と standard の違いですが、VMware Tools 有無が違いのようです。

esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p [ESXi-5.5.0-1331820-standard]
※ []の中に適用したいプロファイルの名前を書く

ネットワーク帯域により変動しますが、しばらく(数分〜十数分)待つとメッセージが大量に出力されます。その中に以下の記載があることを確認します。

Update Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true

最後に環境を戻します。

# httpClient無効化のコマンド
esxcli network firewall ruleset set --ruleset-id=httpClient --enabled=false

作業はこれだけで完了します。

ESXiのコマンドでメンテナンスモードにしたい場合

上記の内容も含め、以下のコマンドがあれば全ての作業をコマンドで完結できるはずです。

ESXiをメンテナンスモードにする

# esxcli system maintenanceMode get
Disabled
# esxcli system maintenanceMode set --enable=true
# esxcli system maintenanceMode get
Enabled

Reboot実行する

# reboot

ESXiのメンテナンスモードを終了

# esxcli system maintenanceMode set --enable=false
# esxcli system maintenanceMode get
false

MetadataDownloadError対応

[MetadataDownloadError]
Could not download from depot at https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml, skipping ((https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml', '', '[Errno 4] IOError: <urlopen error [Errno -3] Temporary failure in name resolution>'))
        url = https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
 Please refer to the log file for more details.
  • 「DNSおよびルーティング」に記載されているDNSサーバは正しいか
  • 「DNSおよびルーティング」に記載されているDGWは正しいか

意外にもESXi本体はDGWの設定が不十分でも問題なく使えてしまうため、忘れがち。

Web Client を利用するには vCenter Server が必要

ESXi 5.5 からは從來の vSphere client ではなく Web Client が本格的に利用され始めています。仮想ディスクのバージョンを最新の10にすると vSphere client からは操作ができなく(Web Client からしか操作できなく)なりますので注意が必要です。また、各種新機能も同様 Web Client からしか利用できません。

しかし Web Client を利用するには vCenter server が必要になるため、無償ライセンスでできるのは從來の運用止まりとなります。

参考リンク