VMware ESXi 5.x のパッチ適用とドライバのアップデートに注意!!
私はサポート担当ではないので偏ったサンプリングかもしれませんが、昨年多かった問合せの1つが...
ESXi にパッチを当ててリブートしたら、
ネットワークに繋がらなくなって緊急事態!
最近落ち着いたようにも思いますが、
この原因がネットであることに気づいたので記事にしてみたいと思います。
No compatible network adapter found.
Please consult the products's Hardware Compatibility Guide (HCG) for a list of support adapters.
この現象について先に答えを言ってしまうと、
「アップデート手順のミスで NIC のドライバが消失してます...」
これは以前投稿した下記の話につながります。
VMware ESXi のインストール CD はベンダー配布版を使いましょう
http://d.hatena.ne.jp/ogawad/20120626/1340665114
一年近く経った現在では、国内外のサーバーベンダー 7 社すべてが
「Custom Image」と呼ばれる各社版インストール CD を作るようになりました。
但し、ベンダーによって Custom Image のスタンスはさまざまです。
NEC さんみたいに「重要:必ず Custom Image を使ってください」というとこもあれば、HP や IBM さんみたいに「Custom Image 使うと ISO をリビルドしなくて便利だよ」程度のとこもあります。
なお、複数の方から聞いた話で VMware 社のダウンロードページに公開されていない Custom Image については同社から一定以上のサポートを受けられないようです。サポートを重要視する場合は念のため代理店にご確認ください。
https://my.vmware.com/jp/web/vmware/info/slug/.../vmware_vsphere/5_1#drivers_tools
さて、この Custom Image ですが、以前書いた記事とおり、
VMware オリジナルのインストール CD に INBOX されていないデバイスドライバなどをベンダー各社が付け足したものです。
つまり、今回の現象は「ベンダーが追加したドライバが消されてしまったため、NIC をロードできない」ということになります。そして、ネットワークに繋がっていない ESXi ホストにドライバを転送するのはとても困難。。。
話を聞いていると、いずれもネット上の情報を参考にして
「esxcli software vib install」というコマンドでアップデートしたとのこと。
esxcli software vib install -d <フルパス: ESXi5xx-xxxxxxxxx.zip>
このコマンドが原因です。
「vib install」は、本来 -v と併用して使うもので、デバイスドライバみたいな特定のコンポーネント (VIB) を "クリアインストール" するためコマンド。
ですので、ESXi や RHEV みたいに "パッチ" と言いながら、
実際はハイパーバイザー丸ごと提供されるものに対して「vib install -d」を使うと、ハイパーバイザー全体が VMware オリジナルの状態に "クリアインストール" され、ベンダーがアドオンしたドライバが消失してしまうのです。
アドオンドライバを保持しつつ、
ESXi ホストを更新する正しいコマンドは「esxcli software profile update」
esxcli software profile update -d <フルパス: ESXi5xx-xxxxxxxxx.zip>
-p <プロファイル名>
なお、GUI ツールの「VMware vSphere Update Manager」(VUM) を利用している場合は、きちんと正しいコマンドを使ってくれるので安心して大丈夫です。
vCenter ユーザーは無償で利用できますし、
スケジュール機能や vMotion 連動など非常に良くできている思います。
いくつかのベンダーは Linux の apt-get のように Update Manager と連動する HTTP オンラインレポジトリを公開しています。これを使えば ESXi ホストのパッチ、ベンダー固有のドライバ・ツールの更新作業・管理を一元化できて便利です。
#ここまで詳しく書いておけば、もう夜中に緊急電話は掛かって来ないよね...
2013.4.5 追記
本件と同様に profile update を推奨している公式 KB を教えていただきました。
VMware KB 2020972: VMware Security Patching Guidelines for ESXi and ESX
http://kb.vmware.com/kb/2020972
関連記事(ESXi, インストール, アップデート)