どうも、Tです。
久々にvCenterアプライアンスの管理画面に入ろうと思ったら、ログインできず焦ったので、備忘録です。原因は色々考えられるのですが、今回は「え?そこっ?」という感じで調べるのに時間が掛かったので、備忘録です。
問題
VMware Appliance Management画面で正しいユーザー名とパスワードを入力したのに「ログインできません」が表示されました。
合わせて下記の現象も確認できました。
- SSHからは正常に接続できる
- 仮想コンソール画面にはログインできる
- vCenterの機能としては正常に動作している
- vcsaを再起動しても発生する
原因
色々調べてて、vcsaにSSH接続して「service-control –status –all」コマンドでサービス状態を確認すると「applmgmt」がStoppedになっていました・・・。
上記から調べたところ下記のナレッジがありました。vCSA 6.7 U2以上で発生する問題のようです。今回、僕の環境は「vCenter Appliance 6.7 Update 3a (6.7.0.41000)」を利用していました。
This happens because the vmware-statsmonitor service takes a long time to start upon the vCSA 6.7 U2+ reboot.
In this delayed duration, the applmgmt service gets marked as stopped.
This causes the failed logins to the VAMI page and a simple start of applmgmt service fixes it, but the behavior happens on every reboot.
回避方法
暫定回避
とりあえず、急いで回避した人向けです。ただ、vcsaを再起動すると再発します。
SSH接続などから「service-control –start applmgmt」コマンドを実行して「applmgmt」サービスを手動で起動します。
正常にログインできるようになります。
恒久回避
恒久対策です。vcsaを再起動しても再発しません。そもそもの問題がapplmgmtが起動中にタイムアウトすることなので、タイムアウト値のばしてやろうっていう方法です。
KBの手順の通りですが、面倒なのでConfigファイルのバックアップとかは割愛してます。
applmgmtのタイムアウト値を伸ばす
「cd /etc/vmware/vmware-vmon/svcCfgfiles/」でファイルのディレクトリに移動します。
「applmgmt.json」「statsmonitor.json」の変更を行っていきます。
まずは、「applmgmt.json」を変更してタイムアウト値を伸ばします。
「chmod 700 applmgmt.json」コマンドでファイル権限を変更します。
「vi applmgmt.json」で開いて「”StartTimeout” 」を60(1分)→600(10分)に変更して保存します。
「chmod 444 applmgmt.json」でファイル権限を戻します。
statsmonitorのタイムアウト監視値を伸ばす
次に、「statsmonitor.json」を変更してタイムアウトの監視値を伸ばします。
「chmod 700 statsmonitor.json」コマンドでファイル権限を変更します。
編集する前は、下記のようなjsonになっています。
KBにある下記のコマンドを実施します。「”StartTimeout”: 600,」が追加されます。
「sed -i ‘/StartTimeout/d’ /etc/vmware/vmware-vmon/svcCfgfiles/statsmonitor.json」
「sed -i ‘/ApiHealthFile/a “StartTimeout”: 600,’ /etc/vmware/vmware-vmon/svcCfgfiles/statsmonitor.json」
「chmod 444 statsmonitor.json」でファイル権限を戻します。
手動でコマンドを実行してstatsmonitorを停止、起動します。起動のほうは30秒ほど時間がかかりました。
停止:/usr/lib/vmware-vmon/vmon-cli -k statsmonitor
起動:/usr/lib/vmware-vmon/vmon-cli -i statsmonitor
再起動してみる
vcsaを再起動します。
起動後ログインを試すとログインができるようになりました。
参考
まとめ
あまりにも面倒臭すぎる・・・・パッチで直してほしいところだけど、直らないんだろうなぁ・・・。