vCenter のアップグレードを実施する前に、綿密な事前調査を行う

単純に最新版がほしいという理由だけで vCenter をアップグレードするのは あまり良くありません。

特に、vCenter のバージョンが 6.5 になった時点で、ESXi 5.5 未満 (5.1 までのハイパーバイザ) の管理が出来なくなってしまうので要注意です。

なので、まずは 今使っている vCenter 管理下にある全ての ESXi ホストのバージョンを確認します。

そして、ESXi 5.5 未満のホストが存在する場合には、解決手段が見つかるまでは vCenter 6.5 へのアップグレードは止めた方が良いです。

ESXi 自体のバージョンを上げてしまえば出来なくもないですが、それもバージョンアップ対象となる ESXi ホストの台数と本番環境かどうかによるかなと思います。

その他にも、今の環境 (アップグレード前の環境) で VMware NSX だったり、VMware Integrated OpenStack 等の製品を使っている場合に、これらの製品に関しては 現時点では vSphere 6.5 との互換性がなかったりもします。

ちなみに、これらの製品を検証する目的で一時的に入れてる場合には、事前に削除しておくか、または 実際にアップグレード実行時にワーニングが表示されるので、無視してアップグレードを続行することも可能です。 (ワーニングではなく、赤いアラートが出た場合には続行不可)

vCenter のアップグレードを実施する際には、上記を含めて vCenter と各製品との互換性チェックを行い、アップグレードしても良いかどうかについて、事前にリサーチ・判断することが大事です。

また、常に新しいバージョンのハイパーバイザを利用するためには、互換性のある vCenter のバージョンが必要なため、vCenter のアップグレードは積極的に検討した方が良いです。 (例えば、vSphere 6.5 の ESXi 6.5 を管理するためには、vCenter のバージョンが 6.5 以上でなければならない)

vCenter 6.5 へのアップグレードを決断した場合には、事前に以下のような問題を解決しておく

vCenter のアップグレードは、実際に ESXi ホストを動かしている環境でなければなりません。

この後 紹介するワーニング、アラートは、実際に vCenter Server Appliance 6.0 から 6.5 へアップグレードを行った際に表示されたワーニングとアラートです。

環境によって様々なメッセージが表示されると思われますが、少なくとも以下のような問題を事前に解決しておくと、より迅速に かつ安全にアップグレード出来るのではないでしょうか。

先ほど言ったように、アップグレード中 (ステージ 2 開始直後、環境チェックが行われる際) に表示されるワーニングに関しては、確認して特に問題なければ無視してアップグレードを続行することもできますが、アラートに関しては解決しない限りアップグレードを進めることはできません

ちなみに、説明の途中に出てくる 10.10.4.3 は vCSA の IP アドレス、vcsa.hogehoge.com は vCSA の FQDN です。

その1. vCSA に正しいホスト名を設定し、使わない IPv6 は無効にする (必須)

locahot と IPv6 関連エラー

Error : The source machine hostname 'localhost' resolves to IPv6 address(es) '::1', but IPv6 networking will not be preserved after the upgrade. This will prevent certain services preferring IPv6 from establishing network communication.

Resolution : Either remove the DNS IPv6 entry for hostname 'localhost' or change the network configuration of the source machine to pure IPv6 or in case dual networking stack is needed, set a static IPv6 address.

エラー : ソース マシンのホスト名「localhost」は IPv6 アドレス「::1」に解決されますが、アップグレード後に IPv6 ネットワークは保持されません。 これにより、IPv6 を使用する特定のサービスで、ネットワーク通信を確立できなくなります。

対策 : ホスト名「localhost」の DNS の IPv6 エントリを削除するか、ソース マシンのネットワーク設定を純粋な IPv6 に変更する、またはデュアル ネットワーク スタックが必要な場合のために固定 IPv6 アドレスを設定します。

なんで localhost と IPv6 で怒られてんだ? と思って確認してみたら、vCSA コンソール上のホスト名が初期構築時のまま localhost になっていたので、正しいホスト名を設定することで解決しました。

まずは、vCenter へ接続 > vCSA 仮想マシン (右クリック) > コンソールを開く をクリックし、コンソール画面が開いたら ログイン した上で、以下を実施します。

  • ホスト名・DNS サフィックスが設定されていなかったら設定する
  • 使わない IPv6 は無効にする

この例では、 FQDN として vcsa.hogehoge.com を。 サフィックス として hogehoge.com を設定します。

DNS ホスト名設定
Configure Management Network > DNS Configuration
DNS サフィックス設定
Configure Management Network > Custom DNS Suffixes

また、使わない IPv6 は 積極的に無効化します。

IPv6 無効化 後、設定を反映するためには、再起動が必要です。

IPv6 無効化
Configure Management Network > IPv6 Configuration > Enable IPv6 (チェックを外す)

そしたら赤いアラートは消えました。

その2. DRS 無効化

vSphere DRS 関連警告

Warning : This ESXi host [esx04] is managed by vCenter Server [10.10.4.3]

Resolution : Make sure the cluster where this ESXi host resides is not set to Fully Automated DRS for the duration of the upgrade process.

警告 : この ESXi ホスト [esx04] は、vCenter Server [10.10.4.3] によって管理されています。

対策 : この ESXi ホストが常駐するクラスタの設定が「完全自動化」に設定されていないことを確認してください。

DRS (リソース自動分散機能) を使うためには、vSphere Enterprise Plus ライセンス が必要です。

そのため、vSphere Standard 以下のライセンスをご利用の方は、そもそも DRS 関連警告メッセージは出ないはずなので、次のステップへ進んでください

基本的に vCenter をクラスタ化されている ESXi ホストにデプロイする際には、クラスタの DRS 設定を 完全自動化 以外の 手動、 または 一部自動化 に設定する必要があります。

もしこのようなメッセージが表示された場合には、該当 ESXi ホストのクラスタ設定を開き、DRS の自動化レベルを 完全自動化 以外のモードに設定してください。 (アップグレード完了後、元に戻すこと)

vSphere DRS 無効化
vSphere Client の例 : vCenter へログイン > クラスタ (右クリック) > 設定の編集 > vSphere DRS > 「手動」または「一部自動化」 > OK

その3. vSphere 6.5 と互換性のない製品、または拡張機能の確認

互換性のない製品の拡張機能関連警告

Warning : vCenter External Extensions

Description : This vCenter Server has extensions registered that cannot be upgraded to or may not work with the new vCenter Server.

Extensions: NSX Manager (by VMware) on https://10.10.4.3/sdk/vimService OpenStack vCenter UI Extension (by VMware) on https://10.10.4.9:9443/osvmw-server VDP 6.0 (by VMware) on https://10.10.4.22:8543/vdp-plugin-package.zip VMware vSphere Openstack NGC Extension (by VMware) on https://10.10.4.9:8443/vio-plugin/openstack-plugin.zip

Resolution : Please ensure extensions are compatible with the new vCenter Server and re-register extensions with the new vCenter Server after upgrade. Please refer to the vSphere documentation on extensions, and the upgrade and interoperability guides.

警告 : vCenter External Extensions

説明 : この vCenter Server には、新しい vCenter Server にアップグレードできない、または 動作しない拡張機能が登録されています。

拡張機能 : NSX Manager、VDP 6.0、OpenStack vCenter UI Extension、VMware vSphere Openstack NGC Extension。

対策 : 拡張機能が新しい vCenter Server と互換性があることを確認し、アップグレード後に新しい vCenter Server に拡張機能を再登録してください。 拡張機能に関する vSphere ドキュメントと、アップグレードおよび相互運用性ガイドを参照してください。

導入しているアプライアンス製品によっては様々な 拡張機能 関連警告が表示されると思われます。

OpenStack vCenter UI ExtensionVMware vSphere Openstack NGC Extension は、恐らく VIO (VMware Integrated Openstack) に関する拡張機能で、VIO 自体は検証目的で一時的に入れてたものなので、使えなくても良いということで警告は無視しました。

NSX Manager も同じ理由で警告無視。

引っかかったのは、vSphere Data Protection (VDP) だけでしたが、vCenter アップグレード後、動かなかったらサポートに聞いて教えてもらうか、それも面倒なら (ログを送って確認してもらうのも相当時間がかかるため) 再構築してしまおうという強い心で警告無視して続行することにしました。 (結果的には特に問題ありませんでした)

その4. vCenter 6.5 と互換性のない ESXi ホストが存在するか確認

互換性のない ESXi ホスト関連警告

Warning : 1 host(s) will be incompatible with upgraded vCenter Server.

Description : After the upgrade hosts with version less than 5.5 will not be able to connect to upgraded vCenter Server. The libraries that reside on datastores only accessible from those hosts will not be accessible from upgraded vCenter Server. Check file vcdb_req.err for list of wrong hosts versions.

Resolution : Upgrade outdated hosts to 5.5 or above.

警告 : 1つのホストがアップグレードされた vCenter Server と互換性がありません。

説明 : 5.5 未満のホストは、アップグレードされた vCenter Server に接続できません。 これらのホストからのみアクセス可能なデータストア上のライブラリは、アップグレードされた vCenter Server からアクセスできません。 対象ホストのバージョンリストについては、vcdb_req.err ファイルを確認してください。

対策 : 古いバージョンのホストを 5.5 以上にアップグレードしてください。

vCenter Server を 6.5 にアップグレードすると ESXi 5.5 未満 (ESXi 5.1 まで) は管理対象外になります。

状況によると思いますが、案としては、

  • ESXi 5.5 未満のホストを 5.5 以上にバージョンアップする (ハイパーバイザのアップグレード)
  • vCenter をアップグレードする代わりに (現在の vCenter はアップグレードせずに このまま維持し)、これから最新バージョンの ESXi を収容して行くための新しい vCenter を建てる (ライセンス費用がかかる)

私の場合は、たまたま スタンドアロン状態 (遊び用) の ESXi 5.1 のやつが一台引っかかっただけだったので、vCenter のインベントリから切断して消す ことで対応しましたが、サポート対象外となる低いバージョンの ESXi ホストを多数所有している企業においては、かなりネックになることは間違いないでしょう。

その5. vSphere Update Manager マイグレーションに伴う確認事項

VUM マイグレーション関連警告

Warning / Description : Files that cannot be used with Update Manager 6.5 will not be copied from the source. These files include VM guest OS patch baselines, host upgrade baselines and files, and ESX 5.1 and lower version host patches baselines.

Resolution : Please review VMware Update Manager 6.5 Documentation for details.

警告 / 説明 : Update Manager 6.5 で使用できないファイルは、ソースからコピーされません。 これらのファイルには、VM ゲスト OS パッチベースライン、ホストアップグレードベースラインとファイル、ESX 5.1 以降のバージョンのホストパッチベースラインが含まれます。

対策 : 詳細については、VMware Update Manager 6.5 のマニュアルを参照してください。

これは vSphere Update Manager (VUM) を使っている方が対象になります。

VUM を使っている場合、vCenter をアップグレードする前に、事前に VUM マイグレーションツールを実行しておく必要があります。

単純にツールを一つ実行しておくだけなので、その後特にやることもないので、VUM マイグレーション自体は非常に簡単です。

ただ、VUM 6.5 で使われないファイルはコピーされない (マイグレーション対象外となる) というメッセージです。

特に、vCenter アップグレード完了後に確認したところ、自分で作ったベースラインは問題なくマイグレーションされ、ちゃんと残っていましたが、ESXi クラスタに適用した (添付済みの) ベースライン設定は全て外れていました。

なので、vCenter のアップグレードが終わったら クラスタ、または ESXi ホスト等にパッチベースラインの再適用が必要です。

その6. vCenter を名前解決できる状態にしておく

vCSA 名前解決関連警告

Warning / Description : Host name 10.10.4.3 is not DNS resolvable, but matches the machine certificates. If you do not configure a valid DNS resolvable hostname mapping, then you might not be able to connect to the vCSA afterwards.

Resolution : Either update appliance /etc/hosts or /etc/resolv.conf file to properly access DNS servers or update appliance DNS servers with the proper host name mapping. To check if DNS server has record about local host name, execute 'dig 10.10.4.3 +short' locally on the appliance, or 'nslookup 10.10.4.3' on a windows machine.

警告 / 説明 : ホスト名 10.10.4.3 は DNS で名前解決できませんが、マシン証明書には一致しています。 DNS で解決可能な有効なホスト名マッピングを設定しないと、後で vCSA に接続できなくなる可能性があります

対策 : DNS サーバに適切にアクセスするようにアプライアンスの /etc/hosts または /etc/resolv.conf ファイルを更新するか、適切なホスト名マッピングでアプライアンスの DNS サーバを更新します。 ローカル ホスト名について DNS サーバにレコードがあるかどうかを確認するには、「dig 10.10.4.3 +short」をアプライアンスのローカルで実行するか、「nslookup 10.10.4.3」を Windows マシン上で実行します。

メッセージの通りですが、vCenter の名前が引けるように、DNS サーバに vCenter の FQDN が登録されていることと vCenter 側でその名前が引けるかどうか確認してください。

終わりに

場合によっては、新しくデプロイされたアプライアンスの FQDN は IP に設定されますが、レガシー アプライアンスは FQDN に設定されているため、アップグレード完了後、FQDN を介して vCenter にアクセスできなくなる可能性があります みたいな警告が出ることもあります。

FQDN がちゃんと設定されていなかったり、名前解決できない状態のままだとアップグレードに成功したとしても、意図しない不具合が起こったりする恐れがあるので、警告とは言え、FQDN 関連問題については、必ず解決しておくことをオススメします。

また、一通り修正が終わったら 「ステージ 1」終了後に表示される画面 に書いてあるように、 http://<一時 IP>:5480 (一時 IP アドレスの VAMI) へ接続することで、ステージ 2 からアップグレードを再開することができるので、ストレージ 1 からやり直す必要はありません。

以上、vCenter Server を 6.5 へアップグレードする前の注意事項 でした。