ESXIのログ監視について

大変お世話になっております。

早速ですが、題記の件、ESXIにzabbixーagentをインストールして、死活監視及びログ監視を行いたいと思います。

そこで以下2点をご教示願います。

?そもそもESXIにagentは対応していますか??
→マニュアル見たけど、のってませんでした。

?ESXIはログをはきださない。
※吐き出す先を他のサーバに指定する仕様になっています。
zabbixでESXIのログ監視はできませんか??

以上、ご教示願います。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー KAZ の写真

robinmasukさん

ESXIですか…使ったことないですが…A(^^;

?そもそもESXIにagentは対応していますか??
→マニュアル見たけど、のってませんでした。

ESXIに対応しているかと言われるとちょっと意味が…
ESXI上のOSに対応するかと言う話ならOS対応一覧にあるならと言う話かと…

XenやVMwareの話も乗ってなかった様な…
ちなみに、VMware上のXenの上のLinuxでZabbixエージェントを動かしたことはあります。

?ESXIはログをはきださない。
※吐き出す先を他のサーバに指定する仕様になっています。
zabbixでESXIのログ監視はできませんか??

他のサーバ上のログがZabbixで読める権限ならば監視可能だと思いますが…ログ形式はどんなものでしょうか?

ユーザー TNK の写真

ESXi自体は、Zabbixのサポートプラットホームに含まれていません。
簡単にインストールするパッケージも見当たりませんので、ESXi自体にZabbixのAgentをインストールすることは無理だと考えられたほうが良いと思います。

ログの監視に関しては、syslogサーバを用意し、ESXiからそのサーバに飛ばすように設定して、そのログをZabbixで監視すればよいのではないでしょうか。

・ESXi InstallableおよびvCenterServerセットアップガイド(JA-000256-00)
 P.34 「システムログファイルのリモートホストへのリダイレクト」参照
 https://www.vmware.com/jp/support/pubs/vs_pages/vsp_pubs_esxi40_u1_i_vc40_u1.html

syslogサーバの構成に関しては、以下のURLなども参考にされてはいかがでしょうか。
http://www.atmarkit.co.jp/fsecurity/rensai/unix_sec08/unix_sec01.html

ユーザー KAZ の写真

robinmasukさん、TNKさん

ESXi自体は、Zabbixのサポートプラットホームに含まれていません。
簡単にインストールするパッケージも見当たりませんので、ESXi自体にZabbixのAgentをインストールすることは無理だと考えられたほうが良いと思います。

私なんか勘違いしていますでしょうか…
ESXi上のゲストOSを監視したいのではなくてESXiそのものを監視したいと言うことなのでしょうか?

ログの監視に関しては、syslogサーバを用意し、ESXiからそのサーバに飛ばすように設定して、そのログをZabbixで監視すればよいのではないでしょうか。

これはOKですね。
監視対象じゃないサーバからリモートsyslog出力したログの監視やネットワーク機器がLinuxサーバのsyslog宛てに出力したログの監視は実績ありますので。

syslogの他にsyslog-ngと言うのもあります。
syslogに比べ色々な機能があって便利です。

ユーザー TNK の写真

ESXi上のゲストOSを監視したいのではなくてESXiそのものを監視したいと言うことなのでしょうか?

私は、元の質問がESXi自体を監視したいのだと読み取りました。
ゲストOSが対応していれば、ゲストOSにエージェントを導入することで監視可能だと思います。

syslogの他にsyslog-ngと言うのもあります。

syslog-ngの他にrsyslogというのもあります。
FedoraやRed Hat Enterprise Linuxのインストールメディアにも入っているようです。
syslogの設定をそのまま生かせるので移行が楽かもしれません。
http://www.atmarkit.co.jp/flinux/rensai/newlog01/newlog01c.html
http://www.atmarkit.co.jp/flinux/rensai/newlog04/newlog04a.html

ユーザー robinmasuk の写真

KAZ様
TNK様

すみません。。。返信遅くなりました。
私の質問がわるかったですね。

ESXi上のゲストOSを監視したいのではなくてESXiそのものを監視したいと言うことなのでしょうか?

おっしゃる通りです。
ESXIを監視したかったのですが、agentが対応していないということですね。。。

syslogの他にsyslog-ngと言うのもあります。

こんな機能もあるのですね。。
大変参考になりました。

変な推測をさせてしまって、申し訳ありません。。。

ユーザー kodai の写真

おっしゃる通りです。
ESXIを監視したかったのですが、agentが対応していないということですね。。。

ESXであればサービスコンソール(ホストOS)がLinuxなのでZabbixエージェントをインストールすることも可能ですが、ESXiはサービスコンソール自体がないのではと思います。

私はESXiを触ったことがないので詳しくは知らないのですが、ホストOSにsshでログインしたり、Linux用のRPMをインストールしたりすることができるものなのでしょうか?

ユーザー TNK の写真

ESXiもLinuxベースのコンソールを持つので、シェルを利用することができます。
手順としては、

 1.Alt+F1でコンソールを開く
 2.「unsupported」+Enterを入力する(表示されない)
 3.passwordプロンプトにrootのパスワードを入力

で、「Tech Support Mode」というモードになります。

いくつかのコマンドは利用できます。
/etc/inetd.confを変更して、inetdプロセスにHUPシグナルを送ればリモートからsshを利用することもできます。
しかし、Agentインストールに必要なツールがインストールされていないので、Agentをインストールするのは結構手間がかかると思います。例えば、rpmコマンドはインストールされていません。(ESXi 4.0.0-208167で確認)

syslogに関しては、vSphere ClientでESXiに接続をして、

 「構成」タブ
  →「ソフトウェア」→「詳細設定」→「Syslog」→「Remote」

を開き、Syslog.Remote.HostnameにsyslogサーバのIPアドレスかホスト名を入力します。
ポート番号は、デフォルトが514番になってます。

syslogサーバ側は、

 1.syslogdをリモートからの要求を受け付けるようにする
 2.Firewallの設定で、514/UDPを許可する

でESXiからのsyslogを受けられるようになると思います。
1.のリモートから受けられるようにするには、Red Hat系なら、

 /etc/sysconfig/syslog

内のSYSLOGD_OPTIONSに「-r」を追加して、syslogdを再起動します。

上記のESXiとsyslogサーバの両方の設定を行えば、ESXiのログがsyslogサーバのsyslogに出力されるようになります。

ユーザー robinmasuk の写真

TNK様

回答頂きありがとうございます。

内のSYSLOGD_OPTIONSに「-r」を追加して、syslogdを再起動します。 上記のESXiとsyslogサーバの両方の設定を行えば、ESXiのログがsyslogサーバのsyslogに出力されるようになります。

上記設定を行って、syslogサーバ構築しました。
なんでしょうか・・・構築して思ったのですが
syslogサーバはlogを見る為だけのサーバですので、不要なスペックだと思います。
zabbixでログが見れるので、syslogサーバをたてるつもりはありませんでしたが、ESXIでagentのインストールができないと思っていたので、立てました。。。

ESXIのインストール方法があればいいな・・・と思う程度です。
TNK様貴重なご回答ありがとうございます。

ユーザー TNK の写真

syslogサーバとして別途立てなくても、何かのサーバに共存させてしまっても構わないと思います。
具体的に障害発生時にどのようなログが出力されるかまでは確認できていませんが、恐らく、ESXiの状態の変化などはsyslogに出力されるのではないかと思います。
標準のままだと、vSphere ClientのGUI上からしかログの確認ができないと思うので、どこかで集中管理するという意味では、syslogも有用な機能の一つではないでしょうか。

また、RPMでのインストールができないことは、先日も書かせて頂きましたが、他の方法として、Zabbix Agentをstaticリンクでコンパイルして、それを稼動できないかと思ってやってみました。
具体的には、ソースを展開して、configureを実行する際に、オプションを追加します。
<code>
./configure --enable-agent --enable-static
</code>
結果としては、CentOS 5.4(x86_64)上でコンパイルして、ESXi 4.0上に配置したものの、起動させることができませんでした。
起動できなかった原因までは追究できていません。

やはり、ESXiの監視は、

・vSphere CLI(vSphere SDK for Perl)
 http://www.vmware.com/support/developer/vcli/
 http://www.vmware.com/support/developer/viperltoolkit/
・vMA
 http://www.vmware.com/support/developer/vima/index.html
 http://communities.vmware.com/community/vmtn/vsphere/automationtools/vima

などを検討された方が良いのではないでしょうか。