Cuturnの適当日記

徒然なるままに適当に駄文を吐き出しております

VMware vCenter 5.1インストールは難しい

会社でVMware vCenter 5.1をインストールする機会があったが、いくつかの障壁によってインストールが失敗。インストール失敗の理由は、SSO、インベントリサービス、vCenter Server、もしかするとVCMSDS、のサービス間の連携がうまくいかないためと推測された。

一応、困る人いるかもしれないし、検索用にいくつか言葉を入れておこう。
vCenter 5.1 install failed reboot single sign on sso 26002

また、最も参考にしたURLを予め書いておく。

http://communities.vmware.com/message/2138564
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1025664
http://communities.vmware.com/thread/418033

障壁1:シンプルインストールで全部インストールしようとすると失敗する。

シンプルインストールを使うと最後までインストールが上手くいかない。理由はよくわからないし、ここの部分は自分がやったわけではないのでよく知らない。

障壁2:vCenter Server本体インストール時にインベントリサービスに登録できないと言われてvCenterが入らない

error 26002. Setup failed to register VMware vCenter Server to VMware vCenter Inventory Service

おそらく、インストール失敗時にSSL証明書などが残っていて、それが悪さをしている。なのでSSL証明書を消したりすればいいのだろうが、いろんなところにゴミが残っているので、諦めてOS再インストールか以前の状態に戻したほうが良いかもしれない。一応、解決法っぽいのも見つからないわけでもないが、私は昨日うまく行かなかった。

下記ページに詳しいことが書いてある。私は諦めてOS再インストールをおすすめするが。

http://communities.vmware.com/thread/418033

障壁3:最後まで行ったけど再起動したら動かなくなった

これが最大の壁。英語サイトにも多くの記述があり、多くの人が困っていると思われる。再起動すると、vCenter Server起動にてエラーイベントが発生する。大体サービス起動時の進捗が半分くらいで止まってしばらくするとエラーとなる。この時は、C:\ProgramData\VMware\VMware VirtualCenter\Logs\vpxd-?.log を参照する。ここでも、ケースが2通りくらいある。

ケース1:Failure while trying to connect to SSO Admin server

SSOのサーバに接続できない、というエラーの場合は、以下の通りに起動順序を変更する。

  • vCenter Single Sign On Service - 自動
  • VMware vCenter Inventory Service - 自動(遅延開始)
  • VMware vSphere Profile-Driven Storage Service - 自動(遅延開始)
  • VMwareVCMSDS - 自動(遅延開始)

SSOがサービスとしては起動しているよーだが、この時7444番ポートを開いていないのだ。この症状の時は「C:\Program Files\VMware\Infrastructure\SSOServer\logs\ssoAdminServer.log」が追記されないし…怪しい。どうもちゃんとSSOサーバが起動していないっぽい。

ケース2:謎のエラー

似たような場所でエラーが出るが、なんか20行くらいの長いエラーがある、というような場合。次に書く、おすすめのインストール方法で再インストールだ。もうどうにもできない。なるのかもしれませんが、私にはわかりません。

おすすめのインストール方法

手順を1つ1つ書いていく前に、全体的な指針をぱらぱらと。

  • インストールはコンポーネント個別ごとに行い、SSO、インベントリサービス、vCenterの順で行う
  • インストール時、ホスト名は書かず、すべてIPアドレスで解決させる
  • DBはSSOインストール時に自動インストールし、それから64bit DSNを自分で作り、SQL Management Studioを使ってVCDBというDBを作る
  • デフォルトの起動順序は罠。SSOだけ最優先で起動してあとは遅延開始させる。
手順1.OSを普通にインストール

Windows Server 2008 R2などを普通にインストールして、.NET Framework3.5をインストール。ここが完了した時点で可能ならsnapshotなど取得しておくことをおすすめ。

手順2.SSOインストール

vCenter Single SignOnサービスをインストール。普通にインストールすればいいんだけど、FQDN入れろ!って言われた時、自分自身のIPアドレスを入れよう。DBは普通にSQL Server Expressを入れてもらいます。慣れてるなら別にマニュアルでDB入れてもいいと思われる。

手順3.VMware Inventory Service インストール

次はInventory Serviceをインストール。基本的にコツは一緒で、FQDN入れろって時にIPアドレスを入れるだけ。ここを怠ると、再起動するとvCenterが起動しなくなる状態に。

手順4.SQL Management Studio 入れちゃえ

DB作りや管理に便利なSQL Management Studioを入れてしまおう。Microsoftさんにしては気が利いているWeb Platform Installer 4.0を使うのがお勧め。

これを起動し、右上の検索ボックスにSQL Server Management Studio とか入れれば出てきますので、インストールする。別にこれでやる必要があるわけではないが、普通に落として入れると妙に時間かかるし、なぜかSQL Server 2008R2 Expressと一緒に入れないといけないのでおすすめできない。

閉域でインストールする人はこちらからダウンロード。

手順5.SSMS起動

さっきインストールしたやつを起動。で、localhost\VIM_SQLEXP に接続。で、フォルダツリーの「データベース」を右クリックして、VCDBっていうデータベースを作る。それだけ。

手順5.DSNを作ろう

Winキー押した時の検索ボックスでODBCとか入れればデータソース(ODBC)とか出ますんでそれ起動。で、システムDSNのタブで以下のようなパラメータで作る。
名前:VCDB
DLL:SQL Native Client な感じなの
接続先:localhost\VIM_SQLEXP
デフォルトのDB:VCDB

あとは大体デフォルトパラメータで次へに進めれば、DSNができる。

手順6.いよいよvCenter

最後に、vCenter Serverをインストール。大まかなパラメータはこんな感じ。

FQDN:自分のIPアドレス
データベース:DSNを指定 VCDBを指定
SSOのURL:多分デフォルトのままでいいはずだけど、もしホスト名とかになってたらIPにする
インベントリサービスのURL:多分デフォルトのままでいいはずだけど(ry

で、肝心なんですが、ここで何かに失敗するケースがある。その時は、もっかいインストーラを叩けばなんかすんなり「完了しました」って言われて入る。

手順7.起動順序の変更

前にも書きましたが、以下の通り起動順序を変更。

  • vCenter Single Sign On Service - 自動
  • VMware vCenter Inventory Service - 自動(遅延開始)
  • VMware vSphere Profile-Driven Storage Service - 自動(遅延開始)
  • VMwareVCMSDS - 自動(遅延開始)

これで、問題ないはずだけど、普通にサービス動いているからと油断せず、再起動。その後ダメであれば、ぜひ情報を世間に公表しましょう。

切り分けにおいて最も大切なことは、土台となるコンポーネントがちゃんと動いているか、ブラウザでURLを開いたり各サービス自体のログを読むこと。頑張りましょうー。