仮想環境監視
仮想環境監視
仮想環境は、すべての企業の IT アーキテクチャで非常に重要であり、そのため、仮想環境の監視が不可欠です。 Pandora FMS Enterprise を使用すると、次の環境の監視ができます。
Amazon EC2, VMware, RHEV, Nutanix, XenServer, OpenNebula, IBM HMC, HPVM.
Amazon EC2
EC2 環境を監視するには、こちらを参照してください。
このガイドは、オープンソースの EC2 監視用コンポーネントに対応したものです。
ここでは、Amazon EC2 のインスタンスをモニタリングするために CloudWatch API を利用します。インスタンスにおいて、cloudwatch を有効にする必要があります。pandorafms.com のモジュールライブラリに、フリーのプラグインがあります。(EC2 で検索)
このリモートサーバプラグインの基本的な考え方は、ネットワークプラグインサーバを使ってインスタンスから情報を取得するものです。つまり、サーバにプラグインを登録し、EC2 サーバの情報を異なるモジュールとして取得します。
以下に実行例を示します。\
で改行しています。
/home/slerena/ec2_plugin.sh \ -A AKIAILTVCAS26GTKLD4A \ -S CgmQ6DxUWES05txju+alJLoM57acDudHogkLotWk \ -i i_9d0b4af1 \ -n AWS/EC2 \ -m CPUUtilization
これは、インスタンス i-9d0b4af1 において、“CPUUtilization” の値を返します。
インストールは次のようにします。
- JAVA が動作するようにし、JAVA のホームディレクトリを設定します。Pandora FMS アプライアンス(Vmwareイメージ)では、/usr/ です。
- プラグインを上記ディレクトリにコピーし、パーミッションを 755 にします。また、プラグインの最初の行に定義されている AWS_CLOUDWATCH_HOME 変数を設定します。プラグインの最初の行を編集する必要があります。
プラグインには、いくつかのファイルがあります。
/ec2_plugin.sh - プラグイン本体です。 /bin/* - Amazon CloudWatch (モニタリング) コマンドラインツールのコンポーネントで、プラグインの配布ファイルに含まれています。このスクリプトは、Apache ライセンスに基づいて配布されています。
全てのファイルをサーバに展開します。例えば以下の場所です。
/usr/share/pandora_server/plugin/ec2
そして、AWS_CLOUDWATCH_HOME を /usr/share/pandora_server/plugin/ec2 に設定します。
正しくインストールできたか確認するには、以下のコマンドを実行します。
/usr/share/pandora_server/plugin/ec2/mon-cmd --version
以下のように表示されます。
Amazon CloudWatch CLI version 1.0.9.5 (API 2010-08-01)
同様に表示されれば、プラグインは利用可能です。
そうでなければ、おそらく、Amazon CloudWatch (モニタリング) コマンドラインツールのインストールと設定が必要です。以下のステップを実行してください。
インストール
手順:
- システムに、JAVA のバージョン 1.5 もしくはそれ以上がインストールされている必要があります。(java -version)
- zip ファイルを展開します。
- 以下の環境変数を設定します。
- 'AWS_CLOUDWATCH_HOME': ファイルを展開したディレクトリです。確認は以下のようにします。
Unix: ls ${AWS_CLOUDWATCH_HOME}/bin で、mon-list-metrics ... が表示されます。) Windows: dir %AWS_CLOUDWATCH_HOME%\bin で、mon-list-metrics ... が表示されます。)
- JAVA_HOME - Java をインストールしたホームディレクトリです。
- パスを追加します。
'${AWS_CLOUDWATCH_HOME}/bin' (Windows の場合は '%AWS_CLOUDWATCH_HOME%\bin')
設定
AWS ユーザ権限でコマンドラインツールを利用できるようにします。権限を与えるには 2つの方法があります。
- AWS パスワードの利用
- X.509 証明書の利用
AWS パスワードの利用
コマンドラインで認証情報を指定します。
-I ACCESS_KEY --S SECRET_KEY
認証ファイルを作成することもできます。デプロイした環境にはテンプレートファイルが含まれています。
${AWS_CLOUDWATCH_HOME}/credential-file-path.template.
このファイルのコピーを編集し、適切な情報を追加します。UNIX では、認証ファイル(作成した認証ファイル
) の所有者の権限を制限します。
$ chmod 600 <作成した認証ファイル>
ファイルを作成したら、それを参照するいくつかの方法があります。
- 次の環境変数を設定します。
export AWS_CREDENTIAL_FILE =<作成した認証ファイル>
- それぞれのコマンド実行に次のようなオプションを設定します。
- -aws-credential-file <作成した認証ファイル>
X.509 Certs の利用
公開鍵と秘密鍵をファイルに保存します。例えば、my-cert.pem および my-pk.pem
コマンドラインツールに認証情報を提供するには 2種類の方法があります。
- 次の環境変数を設定します。
EC2_CERT =/path/to/cert/file EC2_PRIVATE_KEY =/path/to/key/file
- 各コマンドのコマンドラインでファイルを指定します。
<command> \ --ec2-cert-file-path=/path/to/cert/file \ --ec2-private-key-file-path=/path/to/key/file
カスタム JVM プロパティの設定
環境変数 SERVICE_JVM_ARGS
を設定することにより、コマンドラインに任意の JVM プロパティを渡すことができます。
例えば、以下では Linux/UNIX においてプロキシサーバのプロパティを設定します。
export SERVICE_JVM_ARGS="-D http.proxyHost=http://my.proxy.com -Dhttp.proxyPort=8080"
実行
設定が正しくできたか確認するために、次のコマンドを実行します。
$ mon-cmd --help
全てのモニタリングコマンドで利用方法を表示します。
$ mon-list-metrics --headers
ヘッダーが表示されます。何らかの特別な定義をしていたなら、それも確認してください。
VMware
IT アーキテクチャにとって仮想環境はとても重要です。そのため、これらの環境を監視することは、あなたの会社のシステムの適切なパフォーマンスを確認するために必要です。Pandora FMS Enterprise では VMware Monitoring Plugin を利用でき、VMware アーキテクチャを簡単に操作することができます。
監視する WMware アーキテクチャ
このシステムでは、以下のようなアーキテクチャを監視することができます。
Pandora FMS は、VCenter、ESXi サーバ、データストアおよび、データストアや仮想マシンといった仮想化コンポーネントを監視できます。Pandora FMS は、データ収集のために VMware Perl SDK が提供する API を利用します。
自動検出アプリケーションを通しての監視
自動検出を通して VMware インフラストラクチャの監視については、こちら を参照してください。
プラグインの要件
VMware プラグインが適切に機能するための要件は次の通りです。
- Pandora FMS v7.0NG.732 またはそれ以上
- Perl 用の VMware vSphere SDK
監視のための vCenter 設定
VMware の自動検出アプリケーションは、VMware vCenter および ESXi API が提供する機能を用います。これらが使用可能かどうかは、情報収集用に設定されているレベルによって異なります。
これらのレベルは、Statistics オプションの vCenter Server Settings メニューにて変更できます。vCenter で、それぞれの時間オプションとレベルで、どのカウンタを収集するかを参照することができます。Pandora FMS モニタリングプラグインが利用する最低レベルは Level 2 です。
vCenter の設定によっては、いくつかのモジュールは、Pandora FMS へデータを送信しません。 これは、vCenter でいくつかのプラグインが不足している場合です。これは、エンティティに VMware エージェントをインストールする必要があるか、単にエンティティがオフになっているためです(仮想マシンまたは ESXi)。これらの問題を解決するには、VMware のドキュメントを確認してください。
ハードウエアの状態監視などでは、vCenter および ESX をサポートするホストの高度な設定が必要になる場合があります。
VMware プラグインのデプロイ
Pandora FMS バージョン 732 以降では、VMware の監視は、自動検出アプリケーション システムを用いて行われます。(より詳細は、こちら を参照してください。)
いくつかの理由によりこの機能の外で手動でプラグインを設定したい場合は、以下に説明する旧手法を使うことができます。
VMware プラグインをインストールしたり最新のバージョンにアップデートする場合は、以下に示す手順に従ってください。
手動でのプラグインデプロイ
1. VMware プラグインを展開したファイルがあるディレクトリへ行きます。
2. vmware-plugin.{pl,conf} を対応するディレクトリににコピーします。
sudo cp vmware-plugin.pl vmware-plugin.conf /usr/share/pandora_server/util/plugin/ sudo chown pandora:apache /usr/share/pandora_server/util/plugin/vmware-plugin.{pl,conf} sudo chmod g w /usr/share/pandora_server/util/plugin/vmware-plugin.conf
3. プラグインを設定するために必要なデータを確認します。
Pandora FMS コンソールの “設定(Configuration)” メニューで、API パスワードを設定します。
4. 設定ファイル vmware-plugin.conf を編集します。
5. VMware SDK for Perl が使えるかどうかを確認します。
VMware SDK Perl のインストールを確認するには、以下のスクリプトを実行します。
#!/usr/bin/perl use strict; use warnings; use VMware::VIRuntime; print "VMware SDK Version: " . $VMware::VIRuntime::VERSION . "\n";
スクリプトの実行:
perl check_vmware.pl
出力結果は次のようになります。
VMware SDK Version: 6.5.0
SDK のバージョンが VMware 製品のバージョンと同じか新しいことを確認してください。
Pandora FMS バージョン 717 から、デプロイするマシンに perl ライブラリ PluginTools.pm のインストールも必要です(サーバと一緒に /usr/lib/perl5/PandoraFMS 以下にあります)。(プラグインを実行するマシンの /usr/lib/perl5/PandoraFMS にコピーします)
VMware vSphere SDK for Perl のインストール
必要な VMware ソフトウェアのダウンロードセンターへのリンクは次の通りです。
https://my.vmware.com/web/vmware/details?downloadGroup=VS-PERL-SDK65&productId=614
CentOS 7 への Linux SDK のインストール
この手順は、SDK バージョン 4.1、5.1、6.0、6.5 でテストしています
SDK は、対応する VMware ソフトウエアバージョンと同等のものを利用することをお勧めします。例えば、VMware ソフトウエアが 4.1 の場合は、4.1 の SDK を利用することをお勧めします。
最初に、次のコマンドで SDK パッケージを展開します。
# tar -xzvf VMware-vSphere-Perl-SDK-x.x.x-xxxxxx.i386.tar.gz
次に、次のコマンドで SDK をコンパイルおよびインストールします。
# perl Makefile.PL # make # make install
SDK のインストールが成功しエラーが表示されなければ、次のコマンドで vCenter に接続することができます。
# /usr/lib/vmware-viperl/apps/general/connect.pl --server <vcenter_ip> --username <vcenter_user> --password <vcenter_pass>
コマンドの実行結果は次のようになります。
Connection Successful Server Time : 2013-02-21T16:24:05.213672Z
SDK の旧バージョンから 6.5 へのアップグレード
VMware SDK をアップグレードするには、次のステップを行います。
- 開発者ツールのインストール
yum groupinstall "Developer Tools"
- CPAN のインストール
yum install perl-CPAN
- 依存ファイルのインストール
yum install openssl-devel perl-Class-MethodMaker yum install epel-release
- VMware® SDK Perl のインストールファイルを展開
tar xvzf VMware-vSphere-Perl-SDK-6.5.0-4566394.x86_64.tar.gz
- ディレクトリへアクセス
cd vmware-vsphere-cli-distrib
- インストーラを起動
./vmware-install.pl
インストール中:
- ライセンスを承諾
- not to use the prebuilt modules for VMware SDK が表示される
- CPAN 経由でのモジュールの自動インストールを承諾
- すべての必要ファイルが正しくインストールされたか確認
- VMware SDK Perl モジュールがインストールされるディレクトリを表示
perl UUID パッケージが CentOS 7 にインストールされたときにエラーを生成することがあります。コンポーネントを追加するために以下のステップを実行してください:
- UUID-0.03 に必要な依存ファイルをインストール
yum install libuuid-devel perl-JSON-PP
- コードパッケージをダウンロード
wget https://cpan.metacpan.org/authors/id/C/CF/CFABER/UUID-0.03.tar.gz
- ファイルを展開してディレクトリへ移動
tar xvzf UUID-0.03.tar.gz cd UUID-0.03
- Perl モジュールのコンパイルに必要なファイルの生成
perl Makefile.PL
- Perl モジュールをコンパイル
make
- 次のような応答を確認
Manifying blib/man3/UUID.3pm
- コンパイルしたモジュールのインストール
make install
モジュールをインストールしたら、VMware® SDK Perl のインストール処理を実行します。
./vmware-install.pl
VMware アンインストーラは、以前の VMware モジュールライブラリを完全に削除しません。
次に進む前に、以下にライブラリが正しくインストールされたか確認します。
/usr/lib/vmware-vcli/VMware/share/
以下を手動で実施します。
- 古いライブラリを削除
rm -rf /usr/share/perl5/vendor_perl/VMware rm -rf /usr/share/perl5/VMware
- 新しい VMware® ライブラリを追加
cp -R /usr/lib/vmware-vcli/VMware/share/VMware /usr/share/perl5/vendor_perl/
完了したら、VMware® SDK Perl のインストールを確認するために、次の内容のスクリプトを実行します。
#!/usr/bin/perl use strict; use warnings; use VMware::VIRuntime; print "VMware SDK Version: " . $VMware::VIRuntime::VERSION . "\n";
スクリプトの実行:
perl check_vmware.pl
出力は次のようになります。
VMware SDK Version: 6.5.0
出力結果が異なる場合は、すべてのステップを正しく実行したか確認してください。
CentOS 7 の SDK の依存ファイルは次の通りです。
gdbm-devel glibc-devel glibc-headers kernel-headers libdb-devel libuuid-devel make openssl perl-Business-ISBN perl-Business-ISBN-Data perl-Class-Inspector perl-Class-MethodMaker perl-Convert-BinHex perl-Crypt-SSLeay perl-Digest perl-Digest-MD5 perl-Email-Date-Format perl-Encode-Locale perl-ExtUtils-Install perl-ExtUtils-MakeMaker perl-ExtUtils-Manifest perl-ExtUtils-ParseXS perl-File-Listing perl-HTML-Parser perl-HTML-Tagset perl-HTTP-Cookies perl-HTTP-Daemon perl-HTTP-Date perl-HTTP-Message perl-HTTP-Negotiate perl-IO-HTML perl-IO-SessionData perl-IO-Socket-IP perl-IO-Socket-SSL perl-JSON-PP perl-LWP-MediaTypes perl-LWP-Protocol-https perl-MIME-Lite perl-MIME-Types perl-MIME-tools perl-MailTools perl-Mozilla-CA perl-Net-HTTP perl-Net-LibIDN perl-Net-SMTP-SSL perl-Net-SSLeay perl-SOAP-Lite perl-Test-Harness perl-TimeDate perl-URI perl-WWW-RobotRules perl-XML-LibXML perl-XML-NamespaceSupport perl-XML-Parser perl-XML-SAX perl-XML-SAX-Base perl-devel perl-libwww-perl pyparsing systemtap-sdt-devel glibc glibc-common libblkid libmount libsmartcols libuuid util-linux
以下のコマンドで、プラグイン用の追加の依存ファイル をインストールできます。
yum install perl-Archive-Zip perl-JSON
以下のコマンドで、パスワード暗号化の依存ファイル をインストールできます。
yum install openssl-devel perl-Crypt-CBC perl-Digest-SHA
Artica のリポジトリから、perl-Crypt-OpenSSL-AES のカスタム RPM をダウンロードできます。
- CentOS 7:
yum install https://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/RPM%20CentOS%2C%20RHEL/perl-Crypt-OpenSSL-AES-0.02-1.el7.x86_64.rpm
Ubuntu 22 への Linux SDK のインストール
このインストールプロセスでテストしている SDK のバージョンは 7 です。
VMware® ソフトウェアバージョンに対応する SDK バージョンを使用することを常にお勧めします。 たとえば、バージョン 7 の SDK では VMware® ソフトウェア 7 を使用することをお勧めします。
依存ファイルのインストール:
apt update apt-get install -y lib32z1 build-essential uuid \ uuid-dev libssl-dev perl-doc libxml-libxml-perl \ libcrypt-ssleay-perl libsoap-lite-perl libmodule-build-perl
我々のリポジトリからのダウンロード:
wget https://firefly.artica.es/pandorafms/utils/VMware-vSphere-Perl-SDK-7.0.0-16453907.x86_64.tar.gz
展開とインストール:
tar xvzf VMware-vSphere-Perl-SDK-7.0.0-16453907.x86_64.tar.gz cd vmware-vsphere-cli-distrib/ sed --follow-symlinks -i -e "s/[^#].*show_EULA().*/ #show_EULA();/g" vmware-install.pl ./vmware-install.pl --default cpan Crypt::OpenSSL::AES
Windows での SDK 設定
vSphare SDK と共に提供される Perl のバージョンでは、VMware の perl ライブラリが動作しません。問題に対処するためには次の手順を実施します。
- VMware vSphere SDK をインストール
- Strawberry PERL version 5.12. をインストール
- 'C:\Program Files\VMware\VMware vSphere CLI\Perl\lib\VMware' を 'C:\strawberry\perl\lib' へコピー
- VMware vSphere SDK をアンインストール
プラグイン設定
VMware プラグインは手動で設定することも、ダウンロード可能な VMware プラグインファイルと共に利用可能なコンソール拡張機能を使用して設定することもできます。
手動でのプラグイン設定
VMware プラグインの複数の設定を管理するには、Pandora FMS コンソールの拡張を使用することをお勧めします。
手動で設定ファイルを編集することができます。'#' で始まる行はコメントです。
VMware® プラグインは、デフォルトですべてのエンティティを検出し監視を追加します。 設定ファイルから監視する必要がある変数を選択できます。
設定ファイルには、監視に必要なすべての情報が含まれており、次のセクションにグループ化されています: Configuration, Rename, Reject, Datacenter, Datastore, ESX および VM
設定ファイルに関連するすべてのエラーは、エラーログサーバと Pandora FMS のイベントビューアで確認できます。これらのソースを確認することで、設定ファイルの問題を特定できます。
グローバル設定
VMware® 環境の監視プラグイン設定ファイルには、次の一般的な要素が含まれています。
server
監視した VMware サーバの FQDN または IP。
user
vCenter® で読み出し権限のあるユーザ。
pass
ユーザのパスワード。
datacenter
Datacenter 名。 (デフォルト: ha-datacenter)
temporal
テンポラリディレクトリ。デフォルト: /tmp
logfile
ログファイル。デフォルト: /tmp/vmware_plugin.log
entities_list
監視するエンティティファイル。デフォルト: /tmp/vmware_entitites_list.txt
transfer_mode
XML を Pandora へ転送するモード。デフォルト: local
tentacle_ip
Pandora FMS サーバアドレス。デフォルト: 127.0.0.1
tentacle_port
tentacle ポート。デフォルト: 41121
tentacle_opts
tentacle の追加オプション。
local_folder
XML をローカル転送する場合の保存先フォルダ: /var/spool/pandora/data_in
pandora_url
Pandora FMS コンソールの Web アドレス。デフォルト:
http://127.0.0.1/pandora_console
api_pass
Pandora FMS コンソールの API パスワード。
api_user
Pandora FMS API へアクセスするユーザ。
api_user_pass
API アクセスするユーザのパスワード
retry_send
XML 送信エラー時にリトライする(1) しない(0) の設定。(buffer_xml に似ています)
event_mode
VMware イベント情報をリカバーする(1) しない(0) の設定。
event_pointer_file
VMware イベントの補助インデックスファイル。デフォルト: /tmp/vmware_events_pointer.txt
Virtual network monitoring
仮想スイッチの監視を含める。
Encrypt passwords
以下のコマンドで暗号化パスワードを生成します:
perl vmware-plugin.pl --generate_password
生成されたパスワードを設定ファイル内のパストークンに追加します:
use_encrypted_password 1
verbosity
デバッグレベル。(1 をお勧めします)
threads
利用する最大スレッド数。(4 をお勧めします)
interval
エージェントおよびモジュールを生成する秒間隔。(プラグインの実行頻度に応じて調整します)
Recon Interval
一時エンティティキャッシュファイルが自動削除されたのち、VMware インフラストラクチャが再スキャンされるまでの秒間隔。
group
プラグインにより生成されたエージェントのサーバグループ。
virtual_network_monitoring
仮想スイッチ監視を有効化(1) または、無効化(0) する設定。
use_ds_alias_as_name
データストアエージェントで、別名をエージェント名として利用する(1) または、しない(0) 設定。
サーバ、データセンター、ユーザ、パス、間隔は、Pandora コンソールから調整できます。
Pandora FMS 5.0 以上を利用していて、 かつプラグイン拡張またはイベント監視を使いたい場合は、Pandora FMS API を正しく設定する必要があります。それには、API パスワードおよび、API アクセス許可アドレスを正しく設定する必要があります。 これらの設定は、Pandora FMS コンソールの一般設定にあります。
API パスワードと一緒に使用するユーザは、イベントを記録するための読み取りおよび書き込み 権限を持っている必要があります。 また、エージェントからのコンソールのイベントが発生するため、監視にデータセンターエージェントを含めることを忘れないでください。
VMware® 環境監視プラグインの “Reject” セクションには次のオプションを含んでいます。
- all_ipaddresses
この設定が存在する場合、XML の IPアドレスは更新されません。この設定はタスクにも有効です。
設定ファイルのこのセクションの例を以下に示します。
Configuration server 192.168.70.249 user Administrator pass S1stemas datacenter artica temporal /tmp logfile /tmp/vmware_plugin.log entities_list /tmp/vmware_entities_list.txt transfer_mode tentacle tentacle_ip 192.168.70.81 tentacle_port 41121 tentacle_opts local_folder /var/spool/pandora/data_in pandora_url http://192.168.70.81/pandora_console api_pass 1234 api_user admin api_user_pass pandora event_mode 0 event_pointer_file /tmp/vmware_events_pointer.txt
Windows® でプラグインを使用する場合は、Windows® でサポートされているパスに置き換えてください。
エンティティスキャン
自動検出でこの機能を使用するには、Extra settings 内に目的の設定を追加します。
VMware® インフラストラクチャのエンタープライズクライアントのサイズの問題で、各実行で利用可能なすべてのエンティティの一般的なスキャンがパフォーマンスの問題を引き起こす可能性があります。
この状況を回避するために、VMware 監視プラグインには、最初の実行でスキャンされたエンティティのリストを格納するエンティティファイル (entities_list)
があります。
このファイルが存在する限り、監視はファイルに示されているエンティティに限定されます。
VMware インフラストラクチャの定期的なスキャンが必要な場合は、システムの cron を使用して、このファイルを時々(たとえば 1 時間ごとに)削除します。
エンティティの名前変更
自動検出でこの機能を使用するには、Extra settings 内に目的の設定を追加します。
エンティティの名前変更は、RENAME トークンを使用して行われ、プラグインによって検出されたエンティティの名前を変更できます。 この機能を使用すると、Pandora FMS で作成されたエージェントが新しい名前で表示されます。 このセクションの構造は次のとおりです。
<current name> TO <new name>
このセクションの設定例を以下に示します。
#Rename entities Rename Debian 11 TO Virtual Machine 1 RedHat 12 TO Web server ESX Workstation TO Host Work Sales
エンティティの除外
自動検出でこの機能を使用するには、Extra settings 内に目的の設定を追加します。
プラグインを使用すると、種類ごとまたは個別にエンティティを除外できます。 両方のオプションについて以下で説明します。
エンティティを除外するには REJECT トークンを使用します。 このセクションでは、全ての仮想マシンやすべての ESX ホストなどのタイプに応じてエンティティを除外できます。このセクションで使用できる値は、all_datastore、all_datacenter、all_esx、および all_vm です。
このセクションの設定(すべてのエンティティを除外) は、次のようになります。
#Dismissed entities Reject all_datastore all_datacenter all_esx all_vm
エンティティを個別に除外するには、プラグインによって作成されたエンティティのファイルを削除します。 プラグインは、entities_list パラメータで指定された場所にファイルを作成します (デフォルトでは /tmp/vmware_entities_list.txt
です)。 この プラグイン は、最初の実行時にこのファイルを作成し、(まだ存在しない場合は)検出されたすべてのエンティティのリストを書き込みます。 このファイル例を以下に示します。
Datacenter artica Datastore datastore_1 datastore2 ESX 192.168.70.252 VM Pandora FMS 4.0.3 Debian2 Debian3 Debian4 Redhat debian5 Debian6 Debian8 Debian7 Debian11 Debian10 Debian9 NSM Pandora vcenter suse11.2
設定ファイルは、Datacenter、Datastore、ESX、および VM の複数のトークンに分割され、さまざまなエンティティがリストされています。設定ファイルが作成されると、プラグインは監視対象のエンティティを読み取ります。 特定のエンティティを除外する場合は、フォルダから削除します。 たとえば、次のエンティティを監視したくない場合: Debian2、datastore2、NSM、suse11.2、および 192.168。 70.252 、設定ファイルは次のようにする必要があります。
Datacenter artica Datastore datastore_1 ESX VM Pandora FMS 4.0.3 Debian3 Debian4 Redhat debian5 Debian6 Debian8 Debian7 Debian11 Debian10 Debian9 Pandora vcenter
この機能により、プラグインの実行ごとに監視対象エンティティの数を制限することで、監視負荷を分散できます。 その他の負荷分散方法については、以下で説明します。
監視設定
自動検出でこの機能を使用するには、Extra settings 内に目的の設定を追加します。
次のファイル セクションでは、すべての種類のエンティティに対して作成されたモジュールを設定します。 これらのセクションでは、Data Center、Data Store、ESX、および VM セクションを使用します。 これらのセクションでは、モジュールの監視を有効または無効にできます。 次の例では、ESX および仮想マシン用に作成されるモジュールに基づく設定が含まれています。
... #ESX Modules ESX cpuUsagePercent disabled diskRead enabled diskWrite enabled #VM Modules VM diskReadLatency disabled diskWriteLatency disabled diskRate enabled ...
すべての設定行はモジュールです。 ただし、前の例では、すべてのモジュールがデフォルト値で作成されています。 '名前'、'説明'、'警告' および '障害' 状態の 'しきい値' を設定できます。このタイプの設定例は、次のようになります。
... #VM Modules ESX diskReadLatency disabled diskWriteLatency disabled diskRate name = Disk Rate; desc = Lec Rate/Esc disk; limits_warn = 5 10; limits_crit = 0 4 ...
モジュール設定に使用できるオプションは次のとおりです。
- <module> disabled: モジュールは作成されません。
- <module> enabled: モジュールは(デフォルト値で)作成されます。
- <module> name = <name>; desc = <description>; limits_warn <lim_warn>; limits_crit <lim_crit» : モジュールは、指定された名前と説明とともに作成されます。 このモジュールは、'最大' と '最小' および障害と警告状態のしきい値を定義します。
設定ファイルの行の書式に従うことが非常に重要であり、何よりも、モジュールの名前と説明に文字 ;
が付けられていることを確認することが非常に重要であることに注意してください。以下の 2 行は 同等ではありません (文字 ;
の前のスペースを参照):
diskRate name = Disk Rate; desc = Lec Rate/Esc Disk; limits_warn = 5 10; limits_crit = 0 4 diskRate name = Disk Rate ; desc = Lec Rate/Esc disk ; limits_warn = 5 10; limits_crit = 0 4
モジュールは、短い名前またはより単純な同等の名前で参照され、コマンド ラインに記述されます。 短い名前と完全な名前のマッピングテーブルについては、次のセクションで説明します。
上記の例の設定を分析してみましょう。 次の設定で、Disk Rate モジュールが作成されます。
* Name: Disk Rate * Description: Lec Rate/Esc disk * Min Warning: 5 * Max Warning: 10 * Min Critical: 0 * Max Critical: 4
動的に生成されるモジュールがいくつかあります。 例えば、ディスクまたはネットワークインターフェイス上のモジュールです。これらのメトリクスについて、プラグインは検出された要素ごとにモジュールを作成します。 これらのモジュールは、Pandora FMS では特別な名前が付けられています。例:
Disk Free [0] Disk Free [1] Disk Free [2] ...
このような場合、名前には動的な部分があるため、%s
マクロを使用して、モジュール名の変数部分に置き換えることができます。 動的モジュール設定の例は次のとおりです。
diskfree name = Disk (% s) free space; desc = Free space for disk; limits_warn = 0 0; limits_crit = 0 0
この場合、デフォルトのモジュール名は次の通りです。
Free Disk [0]
そして、次のように名前を変更します。
Disk (0) free space
モジュールの警告状態と障害状態を設定できるように、テキスト文字列を設定することもできます。 このような場合、設定は次のようになります。
powerState operation name = State; desc = VM operating state; limits_warn =. * suspended. *; limits_crit =. * poweredOff. *
正規表現を利用して、設定内でより高い柔軟性を得ることもできます。
VMware 監視の設定
自動検出を通して VMware インフラストラクチャの監視を設定するには、自動検出 で説明している手順に従います。
VMware プラグインの実行
設定した機能を確認するには、次のコマンドを実行します。
perl /usr/share/pandora_server/util/plugin/vmware-plugin.pl /usr/share/pandora_server/util/plugin/vmware-plugin.conf
注意:
- VMware SDK 6.5.0 で、プラグインの実行中に次のような出力が表示された場合:
Server version unavailable at 'https://your_vmwre_fqdn:443/sdk/vimService.wsdl' at /usr/local/lib64/perl5/VMware/VICommon.pm line 734.
perl LWP ライブラリのバージョンを調整することで解決します:
cpan install GAAS/libwww-perl-5.837.tar.gz
インフラを監視するには、VMware 検出アプリケーションの利用をおすすめします。ただし、VMware 監視プラグインの実行を自動化する方法はいろいろあります。
Pandora FMS エージェントからのスケジュール実行
Pandora FMS エージェントを利用します:
Pandora FMS エージェントがアクセス可能な場所へ vmware-plugin.{pl,conf} をコピーします。
sudo cp /usr/share/pandora_server/util/plugin/vmware-plugin.{pl,conf} /etc/pandora/plugins/
.tar には設定ファイル vmware-plugin-events.confは ありませんが、vmware-plugin.confをコピーして 'event_mode' を手動で 1に変更することで作成できます。
次のように、新しいプラグインモジュールをエージェント設定ファイルに追加します。
module_plugin perl /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin.conf
イベントのコピーも実行したい場合は、イベントのコピーを行う別の設定ファイルを使用して別のプラグインモジュールを作成する必要があります。 構文は次の通りです。
module_plugin perl /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-events.conf
Windows システムでは、使用するインタプリタを指定する必要があります。 コマンドは次のようになります。
module_plugin perl "C:\Program Files\pandora_agent\util\vmware-plugin.pl" "C:\Program Files\pandora_agent\util\vmware-plugin.conf"
プラグイン設定ファイルのパラメータについては、以降のセクションで詳しく説明します。
VMware プラグインは、登録されたエンティティの数により、多くの実行時間を必要とします。
自動検出サーバがこれらのタスクを担当するように、自動検出を介して監視することをお勧めします。
他の方法で監視する場合、複数の Pandora FMS ソフトウェアエージェントに負荷を分散するか、他のプログラミングモードを選択する必要があります。 すべての情報は、次のセクションにあります。
システム cron からのスケジュール実行
システム cron からプラグインの実行を行うことができます。 生成された要素の実行間隔(設定した間隔)と実際の実行間隔は一致している必要があります。
# crontab に追加するエントリー。この設定では 600秒間隔にしています。 */10 * * * * root perl /usr/share/pandora_server/util/plugin/vmware-plugin.pl /usr/share/pandora_server/util/plugin/vmware-plugin.conf
上記の例は、crontab に追加される行を示しています。 これを使用するには、間隔を 600 に設定します。
VMware 仮想アーキテクチャのモニタリング
プラグインの実行結果を見るには、'モニタリング(Monitoring)' → 'エージェント詳細(Agent Detail)' へ行きます。
以下では、他の Pandora FMS エージェントと一緒にプラグインにより作成されたエージェントが表示されます。
エージェント名をクリックすると、Pandroa FMS エージェント表示で VMware プラグインで監視されているモジュールを見ることができます。
デフォルトでは、プラグインは各 VMware の要素ごとに基本的な監視項目を表示します。これらのデフォルトのエンティティ設定を以降に示します。
データセンターのデフォルトの監視
- Ping
- Check 443 port
データストアのデフォルトの監視
- Capacity
- Free Space
- Disk Overallocation
- Free Space Bytes
ESXi のデフォルトの監視
- CPU Usage
- Memory Usage
- Data received
- Data transmitted
- Disk Read Latency
- Disk Write Latency
- Host Alive
仮想マシンのデフォルトの監視
- CPU Usage
- Memory Usage
- Tools Running Status
- Host Alive
- Disk Free
- Disk Read Latency
- Disk Write Latency
- Data received
- Data transmitted
- Net Usage
以降の章では、それぞれのモジュールの情報の詳細について説明します。
VMware 仮想アーキテクチャエージェントモジュール
VMware のバージョンおよび環境設定により、いくつかのモジュールが存在しない場合もあります。以下に示す表では、存在するモージュールとその機能を説明します。
プラグインは、' ESX ホストおよび仮想マシンのパフォーマンスカウンタ' の設定をすることができます。その方法については、設定ファイルの説明の章にて説明しています。
データセンターエージェントモジュール
モジュール | 説明 | API バージョン | 存在性 |
---|---|---|---|
Ping | vCenter をサポートするマシンに対して ping の監視をします | すべて | 常時 |
Check 443 port | vCenter をサポートするマシンに対して 443 番ポートの応答を監視します | すべて | 常時 |
データストアエージェントモジュール
モジュール | 説明 | API バージョン | 存在性 |
---|---|---|---|
Capacity | バイト単位のデータストアの最大容量 | すべて | 常時 |
Free Space | データストアの空き率 | すべて | 常時 |
Disk Overallocation | ディスクのオーバーロケーション率 | ≥v4.0 | 常時 |
Free Space Bytes | バイト単位での空き容量 | すべて | 常時 |
ESXi ホストエージェントモジュール
モジュール | 説明 | API バージョン | 存在性 |
---|---|---|---|
Boot Time | ホストが起動した時間 | すべて | 常時 |
CPU Info [x] | CPU の一般情報 (ESXi CPU ごとに一つのモジュールです) | すべて | 接続されている場合 |
Memory Size | バイト単位でのホストの物理メモリ容量 | すべて | 接続されている場合 |
Overall CPU Usage | Mhz 単位での全 CPU の利用状況 | すべて | 接続されている場合 |
Overall Memory Usage | MB 単位でのホストでの利用物理メモリ量 | すべて | 接続されている場合 |
Power State | ホストの電源状態 | ≥v2.5 | 常時 |
SSL Thumbprint | ホストの SSL print | ≥v4.0 | 接続されている場合 |
Uptime | 秒単位でのホストの uptime | ≥v4.1 | 接続されている場合 |
VNIC Info [x] | ホストの仮想ネットワークインタフェースの情報 | すべて | 接続され、設定されている場合 |
Host Alive | ESX が接続されている場合に 1、そうでない場合に 0 になるキープアライブモジュール | すべて | 常時 |
Connection State | ホストの接続状態 | すべて | 常時 |
Disk Read | Kbps 単位でのディスクの読み出し速度 | すべて | 状態レベルが ≥2 の場合 |
Disk Write | Kbps 単位でのディスクの書き込み速度 | すべて | 状態レベルが ≥2 の場合 |
Disk Read Latency | ミリ秒単位でのディスク読み出し遅延 | すべて | 状態レベルが ≥2 の場合 |
Disk Write Latency | ミリ秒単位でのディスク書き込み遅延 | すべて | 状態レベルが ≥2 の場合 |
Data received | Kbps 単位でのホストが受け取ったデータ量 | すべて | 状態レベルが ≥2 の場合 |
Data transmitted | Kbps 単位でのホストが送信したデータ量 | すべて | 状態レベルが ≥2 の場合 |
Packages Received | 一定間隔内で受け取ったパケット数 | すべて | 状態レベルが ≥2 の場合 |
Packages Transmitted | 一定間隔内で送信したパケット数 | すべて | 状態レベルが ≥2 の場合 |
CPU Usage | CPU 利用率(%) | すべて | 状態レベルが ≥2 の場合 |
Memory Usage | メモリ利用率(%) | すべて | 状態レベルが ≥2 の場合 |
Net Usage | 全 NIC での送受信データ量 | すべて | 状態レベルが ≥2 の場合 |
Disk Rate | KB/sec 単位でのトータル I/O 量 | すべて | 状態レベルが ≥2 の場合 |
Max. Disk Latency | 全ディスクの最大遅延 | すべて | 状態レベルが ≥2 の場合 |
HA Status | ホストの HA 状態 | ≥v5.0 | 設定されている場合 |
Sensor* | ハードウエアセンサーの状態 (sensor ごとに一つのモジュールです) | すべて | ESXi >= 3.5 |
仮想マシンエージェントモジュール
これらのモジュールは、VMware アーキテクチャ視点からの情報を提供します。仮想マシンに関する他のパラメータをモニタしたい場合は、02_operationsや03_remote_monitoringに示した手法を考慮する必要があります。
モジュール | 説明 | API バージョン | 存在性 |
---|---|---|---|
Boot Time | 仮想マシンが起動した時間 | すべて | 接続されている場合 |
Connection State | 接続状態 | すべて | 常時 |
Consumed Overhead Memory | MB 単位での仮想マシンが利用するメモリ量 | ≥v4.0 | 接続されている場合 |
CPU Allocation | 仮想マシンの CPU に割り当てられているリソースに関する情報 | すべて | 接続されている場合 |
Disk Free [x] | 仮想マシンのディスク空き率(%) (仮想マシンのディスクごとに一つのモジュールになります) | すべて | 接続されている場合 |
Guest State | ホストOSの動作状況 | すべて | 接続されている場合 |
Host Info | VMware ホストに関する情報 | すべて | 設定されている場合 |
Host Alive | 仮想マシンが実行されている場合は 1、そうでなければ 0 を返す、キープアライブモジュール | すべて | 常時 |
Host Memory Usage | MB 単位での仮想マシンが利用しているメモリ量 | すべて | 接続されている場合 |
Host Name | ホスト OS の名前 | すべて | 設定されている場合 |
IP Address [x] | システムの IP アドレス (ネットワークインタフェースごとに 1つです) | ≥v4.1 | 設定されている場合 |
MAC Address [x] | システムの MAC アドレス (ネットワークインタフェースごとに 1つです) | すべて | 設定されている場合 |
Max CPU Usage | 仮想マシンの CPU 使用率最大上限値 | すべて | 設定されている場合 |
Max Memory Usage | 仮想マシンのメモリ使用率最大上限値 | すべて | 設定されている場合 |
Memory Allocation | メモリのリソース制限 | すべて | 設定されている場合 |
Memory Overhead | バイト単位での、ホストのメモリを超えて仮想マシンが使っているメモリ量 | すべて | 設定されている場合 |
Overall CPU Demand | Mhz 単位での CPU パフォーマンスの基本統計情報 | ≥v4.0 | 接続されている場合 |
Overall CPU Usage | Mhz 単位での CPU 使用率の基本統計情報 | すべて | 接続されている場合 |
Power State | 仮想マシンの現在の電源状態 | すべて | 常時 |
Private Memory | MB 単位の共有せずに仮想マシンに割り当てられているメモリ容量 | ≥v4.0 | 接続されている場合 |
Shared Memory | MB 単位の共有して仮想マシンに割り当てられているメモリ容量 | ≥v4.0 | 接続されている場合 |
Tools Running Status | ホスト OS にインストールされている VMWare Tools の実行状況 | ≥v4.0 | 設定されている場合 |
Trigger Alarm State | VMware アラームの状態 | すべて | 設定されている場合 |
Uptime Seconds | 秒単位での仮想マシンの uptime | ≥v4.1 | 接続されている場合 |
Virtual Image Path | 仮想マシンの設定ファイル(.vmx)パス | すべて | 常時 |
Disk Read | Kbps 単位でのディスク読み出し速度 | すべて | 状態レベルが ≥2 の場合 |
Disk Write | Kbps 単位でのディスク書き込み速度 | すべて | 状態レベルが ≥2 の場合 |
Disk Read Latency | ミリ秒単位でのディスク読み出し遅延 | すべて | 状態レベルが ≥2 の場合 |
Disk Write Latency | ミリ秒単位でのディスク書き込み遅延 | すべて | 状態レベルが ≥2 の場合 |
Data received | Kbps 単位でのホストが受け取ったデータ | すべて | 状態レベルが ≥2 の場合 |
Data transmitted | Kbps 単位でのホストが送信したデータ | すべて | 状態レベルが ≥2 の場合 |
Packages Received | 一定間隔において受け取ったパケット数 | すべて | 状態レベルが ≥2 の場合 |
Packages Transmitted | 一定時間において送信したパケット数 | すべて | 状態レベルが ≥2 の場合 |
CPU Usage | CPU 利用率(%) | すべて | 状態レベルが ≥2 の場合 |
Memory Usage | メモリ使用率(%) | すべて | 状態レベルが ≥2 の場合 |
Net Usage | すべてのNICでの送受信データ量 | すべて | 状態レベルが ≥2 の場合 |
Disk Rate | KB/sec 単位での全ディスク I/O 量 | すべて | 状態レベルが ≥2 の場合 |
Max. Disk Latency | 全ディスクにおける最大遅延 | すべて | 状態レベルが ≥2 の場合 |
HeartBeat | 仮想マシン heartbeat の数 | すべて | 状態レベルが ≥2 の場合 |
CPU Ready | マシンの準備ができていて物理 CPU のスケジューリングができなかった時間の割合 | すべて | 状態レベルが ≥2 の場合 |
Number Snapshots | 仮想マシンのスナップショット数 (このモジュールは監視のパフォーマンスに影響します。 そのため、1時間ごとなど実行間隔をあけることを強くお勧めします。) | すべて | 設定されている場合 |
HA Status | 仮想マシンの HA 状態 | ≥v5.0 | 設定されている場合 |
いくつかのモジュールは、VMware tools のインストールが必要です。
VMware のイベント監視
この機能は、VMWare vCenter から Pandora FMS へイベント情報をコピーするために作成されました。
これらのイベントは、Pandora FMS イベント管理フローにのっとり、自動的に vCenter エージェントに割り当てられます。次の画面は、自動検出タスクで生成されたイベントの例です。
コピー処理は、VMware が生成したイベントの情報や重要度を引き継ぎます。イベントにおける、障害、警告、情報といった重要度のレベルを Pandora に渡します。次の画面は Pandora FMS での詳細情報の例です。
Pandora FMS でのすべてのイベントは、イベント管理のアクションを実行できます。たとえば、アラーと生成、フィルタ設定、インシデント作成などです。
VMware 仮想アーキテクチャの管理と表示
VMWare プラグインと一緒に、VMware Manager および VMware View という 2つの拡張を配布しています。VMware View は、VMware アーキテクチャのコンポーネントを簡単に表示することができます。また、VMware Manager は、Pandora FMS コンソールから仮想マシンの停止、起動、再起動、稼働の中止など、仮想マシンを管理することができます。これらの拡張は、Pandora FMS 4.0 以降でのみ動作するオプションです。
バージョン 4.1 以降のプラグインから、これらの拡張は一つにまとめられました。拡張は VMware Settings と呼びます。この新しい拡張は、Pandora FMS 5.1 以降でサポートされています。
VMware View 拡張の利用
VMware アーキテクチャ表示を使うには、エージェント参照の VMware View をクリックします。
VMware View 拡張は、自動検出タスクで見つけた全 VMware アーキテクチャを含んだ以下のようなマップを表示します。
マップには、VMware アーキテクチャの要素(仮想マシン、ESX、データストアおよび、データセンター)が、それぞれを区別できる異なるアイコンで表示されています。また、Pandora FMS エージェントの状態がそれぞれの要素の状態を表します。さらに、仮想マシン、ESX および データセンター間の関係を表示しています。これにより、簡単にすばやく VMware アーキテクチャの状態を見ることができます。
この拡張には、要素を隠したり、文字を大きくしたり、要素を拡大したりといった、アーキテクチャの表示の改善を手助けしてくれるいくつかのオプションがあります。
上記のオプションを使うと、データセンターと ESX だけを見ることができます。
VMware ビューダッシュボード (バージョン 5.0 以上)
Pandora FMS バージョン 5.0 以上では、VMware ビュー拡張により、仮想アーキテクチャトポロジを表示する 2つの追加マップビューがあります。新たなタブでは、VMware ビュー拡張の異なる表示を切り替えることができます。
最初のビューは、一目で、仮想マシン、データストアや、ESXi ホスト問題が発生しているかをわかるようにした、一般的な仮想アーキテクチャを表示するダッシュボードです。さらに、グラフにより仮想アーキテクチャ全体の中で、5つの仮想マシンが使っている、メモリ、CPU、ディスク、ネットワークがわかります。一般的なパフォーマンスパラメータも簡単に確認することができます。
2つ目のビューでは、ESX ホストのパフォーマンスパラメータを確認することができます。このビューでは、ホストおよび仮想マシンの状態を確認したい ESX ホストを選択することができます。ESXi ホストにおける CPU、メモリ、ディスク、ネットワーク利用状況が表示されます。さらに、仮想マシンのほとんどのリソース情報 (CPU、メモリ、ディスク、ネットワーク) もグラフィカルに参照することができます。
VMware View オプションタブ
Pandora FMS 7.0NG 716 では、VMware 拡張は、Enterprise 版 Pandora FMS コンソールに含まれています。
ダッシュボードおよびマップオプションを設定するための、設定パネルがあります。
- ダッシュボードグラフでの表示閾値(最小 - 最大)を調整することができます。
- デフォルトマップビューを調整することができます。
- 設定管理システムへのリンクを含めることができます。
VMware View のオプションタブ:
VMware Manager 拡張の利用
VMware Manager 拡張を利用するには、VMware アーキテクチャ内の仮想マシンエージェントの操作画面へ行きます。そこに、拡張にリンクした VMware のアイコンがあります。
VMware Manager 拡張では、仮想マシンを Pandora FMS コンソールから管理できます。拡張は仮想マシンの現在の状態を色で表示(緑 = on、オレンジ = off、グレー = 停止中)します。さらにコンボボックスにとりうる状態が表示され、選択して Change Status ボタンをクリックすることにより仮想マシンの状態を変更することができます。
この拡張で、次のように Stop を選択することにより仮想マシンを停止することができます。
これによりマシンが停止し、VMware Manage 拡張での表示が変ります。次のようにマシンが停止状態であると表示されます。
この拡張を利用するには、Pandora を動作させるのと同じマシンに Perl 用 VMware SDK がインストールされている必要があります。 Perl 用 VMware SDK がインストールされていないと拡張は動きません。
RENAME を使用して監視が設定されている場合、名前が変更されたターゲットでは機能しません。
カスタムパフォーマンス測定
自動検出でこの機能を利用するには、Extra settings に設定を追加します。
この節では、仮想マシンと ESX のパフォーマンスカウンタのための新たなモジュールを設定します。新たなパフォーマンスモジュールを設定するには、次の構造を利用します。
custom_performance type = mem; metric = swapinRate; module_type = generic_data; name = Swap In Rate; desc = Swap In Rate for host; limits_warn = 0 0; limits_crit = 0 0
設定パラメータは次の通りです。
- Type: 監視するメトリックのタイプ。指定可能なタイプは次の通りです。
- 'Cpu' CPU
- 'Mem': メモリ
- 'Disk': ディスク
- 'Net' ネットワーク
- 'Sys': システム
- Metric: 監視するメトリック。(メトリックの表示にて後述します)
- Module_type: Pandora のモジュールタイプ。(例 generic_data).
- Name: モジュール名。
- Desc: モジュールの説明。
- Limits_warn: 警告閾値
- Limits_crit: 障害閾値
それぞれのエンティティの Performance セクションのそれぞれのタイプに存在するメトリックを確認できます。以下では、VMware プラグインで vCenter 内より監視できるパフォーマンスメトリックを表示しています。例えば、以下の例では、ESX ホストの Performance view を表示しています。
タイプごとのすべてのメトリックの一覧を参照するには、Advanced ボタンをクリックし、Char オプションボタンをクリックします。以下のように、メトリックの全タイプの一覧と、それぞれのタイプのメトリックのウインドウが表示されます。
メトリックの各タイプには、カウンタ番号(Pandoraで監視できる値)があります。値を監視するには、内部の Name を利用する必要があります。さらに、(vCenterで設定されている)状態レベルをメトリックの Collection Level と比較検索して確認する必要があります。
例えば、ESX ホストの CPU 使用率を見たい場合は、ESX の CPU タイプの値を探し、utilization を選択します。この場合、設定ファイルに追加する必要がある設定は、次のようになります。
custom_performance type = cpu; metric = utilization; module_type = generic_data, name = CPU Utilization, desc = CPU Utilization for ESX; limits_warn = 0 0; limits_crit = 0 0
同一エージェントでの複数データセンターの監視
エージェントに設定したそれぞれのプラグインモジュールが、データセンターを監視します。複数のデータセンターを一つの Pandora FMS ソフトウエアエージェントで監視したい場合は、次の事に注意してください。
- 監視するそれぞれのデータセンター用に module_plugin を追加する必要があります。例えば、次の通りです。
module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter1.conf module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter2.conf
- それぞれの設定ファイルで、logfile 、entities_list 、event_pointer_file パラメータを変更する必要があります。設定ファイルは次のようになります。
vmware-plugin-datacenter1.conf
... logfile / tmp/vmware_plugin_datacenter1.log entities_list / tmp/vmware_entities_list_datacenter1.txt event_pointer_file / tmp/vmware_events_pointer_datacenter1.txt ...
vmware-plugin-datacenter2.conf
... logfile / tmp/vmware_plugin_datacenter2.log entities_list / tmp/vmware_entities_list_datacenter2.txt event_pointer_file / tmp/vmware_events_pointer_datacenter2.txt ...
- また、イベントをコピーしたい場合は、2つ以上のプラグインモジュールを設定ファイルに追加し、event_mode フラグを有効にします。module_plugin の設定は次のようになります。
module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter1.conf module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter1-events.conf module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter2.conf module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter2-events.conf
複数の Pandora サーバ間での監視の負荷分散
プラグイン設定ファイルのオプションで、Pandora FMS サーバ間で監視の負荷分散ができます。
たとえば、仮想環境が次のような構成だとします。
DC | |- Datastore_1 |- DataStore_2 | |- ESX_1 |- mv1.1 |- mv1.2 |- mv1.3 |- ESX_2 |- mv2.1 |- mv2.2 |- mv2.3
この環境において、監視のための 2つの Pandora FMS サーバがあります。負荷を分散する簡単な方法としては、データセンター、データストア、ESX を 1台目のサーバで監視し、仮想サーバを 2台目のサーバで監視します。自動検出スクリプトの設定ファイルは、次のようになります。
サーバ 1:
Reject all_vm
サーバ 2:
Reject all_datacenter all_datastore all_esx
サーバ 1 は、仮想マシン以外のすべてを監視し、サーバ 2 は、仮想マシンのみを監視します。
他の分散方法としては、ESX サーバごとに監視を分ける方法です。1台目の Pandora サーバが、1台目の ESX サーバに関するすべてを監視し、2台目が 2台目の ESX を監視します。entties_list.txt を 2つのファイルに分割し、異なるエージェントで 2つのプラグインの実行を構成します。 設定ファイルは次のようになります。
サーバ 1:
Datacenter DC Datastore Datastore_1 ESX ESX_1 VM mv1.1 mv1.2 mv1.3
サーバ 1 は、2つ目の VMware グループに関連するすべてを無視します。それにより、1つ目の環境のみ監視します。
サーバ 2:
Datastore DataStore_2 ESX ESX_2 VM mv2.1 mv2.2 mv2.3
サーバ 2 は、1つ目の VMware グループに関連するすべてとデータセンターを無視します。データセンターは、サーバ 1 で監視されるエンティティのためです。
エンティティを対象外にする機能はとても柔軟で、それぞれの Pandora FMS エージェントに少ないエンティティを割り当てることにより、負荷を分散することができます。
設定ファイル例
すべてのモジュールを無効にするファイル
#These lines are comments #Datacenter Modules Datacenter ping disabled check443 disabled #Datastore Modules Datastore capacity disabled freeSpace disabled overallocation disabled freeSpaceBytes disabled #ESX Modules ESX bootTime disabled cpuInfo disabled memorySize disabled overallCpuUsage disabled overallMemoryUsage disabled powerState disabled sslThumbprint disabled uptime disabled vnicInfo disabled hostAlive disabled connectionState disabled diskRead disabled diskWrite disabled diskReadLatency disabled diskWriteLatency disabled netReceived disabled netTransmitted disabled netPkgRx disabled netPkgTx disabled cpuUsagePercent disabled memoryUsagePercent disabled netUsage disabled diskRate disabled maxDiskLatency disabled systemHealthInfo disabled #VM Modules VM bootTime disabled connectionState disabled consumedOverheadMemory disabled cpuAllocation disabled diskFree disabled guestState disabled host disabled hostAlive disabled diskUsed disable provisioningUsed disable totalReadLatency disable totalWriteLatency disable hostMemoryUsage disabled hostName disabled ipAddress disabled macAddress disabled maxCpuUsage disabled maxMemoryUsage disabled memoryAllocation disabled memoryOverhead disabled overallCpuDemand disabled overallCpuUsage disabled powerState disabled privateMemory disabled sharedMemory disabled toolsRunningStatus disabled triggeredAlarmState disabled virtualImagePath disabled uptimeSeconds disabled diskRead disabled diskWrite disabled diskReadLatency disabled diskWriteLatency disabled netReceived disabled netTransmitted disabled netPkgRx disabled netPkgTx disabled cpuUsagePercent disabled memoryUsagePercent disabled netUsage disabled diskRate disabled maxDiskLatency disabled heartbeat disabled cpuReady disabled
短い名前の関係表
データセンター
長い名前 | 短い名前 |
---|---|
Ping | ping |
Check 443 port | check443 |
データストア
長い名前 | 短い名前 |
---|---|
Capacity | capacity |
Free Space | freeSpace |
Disk Overallocation | overallocation |
Free Space Bytes | freeSpaceBytes |
ESX
長い名前 | 短い名前 |
---|---|
Boot Time | bootTime |
CPU Info | cpuInfo |
Memory Size | memorySize |
Overall CPU Usage | overallCpuUsage |
Overall Memory Usage | overallMemoryUsage |
Power State | powerState |
SSL Thumbprint | sslThumbprint |
Uptime | uptime |
VNIC Info | vnicInfo |
Host Alive | hostAlive |
Connection State | connectionState |
Disk Read | diskRead |
Disk Write | diskWrite |
Disk Read Latency | diskReadLatency |
Disk Write Latency | diskWriteLatency |
Data received | netReceived |
Data transmitted | netTransmitted |
Packages Received | netPkgRx |
Packages Transmitted | netPkgTx |
CPU Usage | cpuUsagePercent |
Memory Usage | memoryUsagePercent |
Net Usage | netUsage |
Disk Rate | diskRate |
Max Disk Latency | maxDiskLatency |
HA Status | haStatus |
Sensor* | haStatus |
仮想マシン
長い名前 | 短い名前 |
---|---|
Boot Time | bootTime |
Connection State | connectionState |
Consumed Overhead Memory | consumedOverheadMemory |
CPU Allocation | cpuAllocation |
Disk Free | diskFree |
Guest State | guestState |
Host Info | host |
Host Alive | hostAlive |
Disk Used | diskUsed |
Provisioning Used | provisioningUsed |
Total Read Latency | totalReadLatency |
Total Write Latency | totalWriteLatency |
Host Memory Usage | hostMemoryUsage |
Host Name | hostName |
IP Address | ipAddress |
MAC Address | macAddress |
Max. CPU Usage | maxCpuUsage |
Max. Memory Usage | maxMemoryUsage |
Memory Allocation | memoryAllocation |
Memory Overhead | memoryOverhead |
Overall CPU Demand | overallCpuDemand |
Overall CPU Usage | overallCpuUsage |
Power State | powerState |
Private Memory | privateMemory |
Shared Memory | sharedMemory |
Tools Running Status | toolsRunningStatus |
Trigger Alarm State | triggeredAlarmState |
Uptime Seconds | uptimeSeconds |
Virtual Image Path | virtualImagePath |
Disk Read | diskRead |
Disk Write | diskWrite |
Disk Read Latency | diskReadLatency |
Disk Write Latency | diskWriteLatency |
Data Received | netReceived |
Data Transmitted | netTransmitted |
Packages Received | netPkgRx |
Packages Transmitted | netPkgTx |
CPU Usage | cpuUsagePercent |
Memory Usage | memoryUsagePercent |
Net Usage | netUsage |
Disk Rate | diskRate |
Max. Disk Latency | maxDiskLatency |
HeartBeat | heartbeat |
CPU Ready | cpuReady |
Number of Snapshots | snapshotCounter |
HA Status | haStatus |
イベントテーブル
このイベント一覧は、Pandora FMS でイベントのアラートを設定するのに役立ちます。正しい最新のイベント一覧は、VMware のドキュメントを確認してください。
イベント | 重要度 | イベントタイプ | グループ | |
---|---|---|---|---|
An account was created on host {host.name} | Informational | System | All | |
Account {account} was removed on host {host.name} | Informational | System | All | |
An account was updated on host {host.name} | Informational | System | All | |
The default password for the root user on the host {host.name} has not been changed | Informational | System | All | |
Alarm '{alarm.name}' on {entity.name} triggered an action | Informational | System | All | |
Created alarm '{alarm.name}' on {entity.name} | Informational | System | All | |
Alarm '{alarm.name}' on {entity.name} sent email to {to} | Informational | System | All | |
Alarm '{alarm.name}' on {entity.name} cannot send email to {to} | Critical | System | All | |
Reconfigured alarm '{alarm.name}' on {entity.name} | Informational | System | All | |
Removed alarm '{alarm.name}' on {entity.name} | Informational | System | All | |
Alarm '{alarm.name}' on {entity.name} ran script {script} | Informational | System | All | |
Alarm '{alarm.name}' on {entity.name} did not complete script: {reason.msg} | Critical | System | All | |
Alarm '{alarm.name}': an SNMP trap for entity {entity.name} was sent | Informational | System | All | |
Alarm '{alarm.name}' on entity {entity.name} did not send SNMP trap: {reason.msg} | Critical | System | All | |
Alarm '{alarm.name}' on {entity.name} changed from {[email protected]} to {[email protected]} | Informational | System | All | |
All running virtual machines are licensed | Informational | System | All | |
User cannot logon since the user is already logged on | Informational | System | All | |
Cannot login {userName}@{ipAddress} | Critical | System | All | |
The operation performed on host {host.name} in {datacenter.name} was canceled | Informational | System | All | |
Changed ownership of file name {filename} from {oldOwner} to {newOwner} on {host.name} in {datacenter.name}. | Informational | System | All | |
Cannot change ownership of file name {filename} from {owner} to {attemptedOwner} on {host.name} in {datacenter.name}. | Critical | System | All | |
Checked cluster for compliance | Informational | System | All | |
Created cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
Removed cluster {computeResource.name} in datacenter {datacenter.name} | Informational | System | All | |
Insufficient capacity in cluster {computeResource.name} to satisfy resource configuration in {datacenter.name} | Critical | System | All | |
Reconfigured cluster {computeResource.name} in datacenter {datacenter.name} | Informational | System | All | |
Configuration status on cluster {computeResource.name} changed from {[email protected]} to {[email protected]} in {datacenter.name} | Informational | System | All | |
Created new custom field definition {name} | Informational | System | All | |
Removed field definition {name} | Informational | System | All | |
Renamed field definition from {name} to {newName} | Informational | System | All | |
Changed custom field {name} on {entity.name} in {datacenter.name} to {value} | Informational | System | All | |
Cannot complete customization of VM {vm.name}. See customization log at {logLocation} on the guest OS for details. | Informational | System | All | |
An error occurred while setting up Linux identity. See log file '{logLocation}' on guest OS for details. | Critical | System | All | |
An error occurred while setting up network properties of the guest OS. See the log file {logLocation} in the guest OS for details. | Critical | System | All | |
Started customization of VM {vm.name}. Customization log located at {logLocation} in the guest OS. | Informational | System | All | |
Customization of VM {vm.name} succeeded. Customization log located at {logLocation} in the guest OS. | Informational | System | All | |
The version of Sysprep {sysprepVersion} provided for customizing VM {vm.name} does not match the version of guest OS {systemVersion}. See the log file {logLocation} in the guest OS for more information. | Critical | System | All | |
An error occurred while customizing VM {vm.name}. For details reference the log file {logLocation} in the guest OS. | Critical | System | All | |
dvPort group {net.name} in {datacenter.name} was added to switch {dvs.name}. | Informational | System | All | |
dvPort group {net.name} in {datacenter.name} was deleted. | Informational | System | All | |
Informational | System | All | ||
dvPort group {net.name} in {datacenter.name} was reconfigured. | Informational | System | All | |
dvPort group {oldName} in {datacenter.name} was renamed to {newName} | Informational | System | All | |
HA admission control disabled on cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
HA admission control enabled on cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
Re-established contact with a primary host in this HA cluster | Informational | System | All | |
Unable to contact a primary HA agent in cluster {computeResource.name} in {datacenter.name} | Critical | System | All | |
All hosts in the HA cluster {computeResource.name} in {datacenter.name} were isolated from the network. Check the network configuration for proper network redundancy in the management network. | Critical | System | All | |
HA disabled on cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
HA enabled on cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
A possible host failure has been detected by HA on {failedHost.name} in cluster {computeResource.name} in {datacenter.name} | Critical | System | All | |
Host {isolatedHost.name} has been isolated from cluster {computeResource.name} in {datacenter.name} | Warning | System | All | |
Created datacenter {datacenter.name} in folder {parent.name} | Informational | System | All | |
Renamed datacenter from {oldName} to {newName} | Informational | System | All | |
Datastore {datastore.name} increased in capacity from {oldCapacity} bytes to {newCapacity} bytes in {datacenter.name} | Informational | System | All | |
Removed unconfigured datastore {datastore.name} | Informational | System | All | |
Discovered datastore {datastore.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Multiple datastores named {datastore} detected on host {host.name} in {datacenter.name} | Critical | System | All | |
<internal> | Informational | System | All | |
File or directory {sourceFile} copied from {sourceDatastore.name} to {datastore.name} as {targetFile} | Informational | System | All | |
File or directory {targetFile} deleted from {datastore.name} | Informational | System | All | |
File or directory {sourceFile} moved from {sourceDatastore.name} to {datastore.name} as {targetFile} | Informational | System | All | |
Reconfigured Storage I/O Control on datastore {datastore.name} | Informational | System | All | |
Configured datastore principal {datastorePrincipal} on host {host.name} in {datacenter.name} | Informational | System | All | |
Removed datastore {datastore.name} from {host.name} in {datacenter.name} | Informational | System | All | |
Renamed datastore from {oldName} to {newName} in {datacenter.name} | Informational | System | All | |
Renamed datastore from {oldName} to {newName} in {datacenter.name} | Informational | System | All | |
Disabled DRS on cluster {computeResource.name} in datacenter {datacenter.name} | Informational | System | All | |
Enabled DRS on {computeResource.name} with automation level {behavior} in {datacenter.name} | Informational | System | All | |
DRS put {host.name} into standby mode | Informational | System | All | |
DRS is putting {host.name} into standby mode | Informational | System | All | |
DRS cannot move {host.name} out of standby mode | Critical | System | All | |
DRS moved {host.name} out of standby mode | Informational | System | All | |
DRS is moving {host.name} out of standby mode | Informational | System | All | |
DRS invocation not completed | Critical | System | All | |
DRS has recovered from the failure | Informational | System | All | |
Unable to apply DRS resource settings on host {host.name} in {datacenter.name}. {reason.msg}. This can significantly reduce the effectiveness of DRS. | Critical | System | All | |
Resource configuration specification returns to synchronization from previous failure on host '{host.name}' in {datacenter.name} | Informational | System | All | |
{vm.name} on {host.name} in {datacenter.name} is now compliant with DRS VM-Host affinity rules | Informational | System | All | |
{vm.name} on {host.name} in {datacenter.name} is violating a DRS VM-Host affinity rule | Informational | System | All | |
DRS migrated {vm.name} from {sourceHost.name} to {host.name} in cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
DRS powered On {vm.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Virtual machine {macAddress} on host {host.name} has a duplicate IP {duplicateIP} | Informational | System | All | |
A vNetwork Distributed Switch {dvs.name} was created in {datacenter.name}. | Informational | System | All | |
vNetwork Distributed Switch {dvs.name} in {datacenter.name} was deleted. | Informational | System | All | |
vNetwork Distributed Switch event | Informational | System | All | |
The vNetwork Distributed Switch {dvs.name} configuration on the host was synchronized with that of the vCenter Server. | Informational | System | All | |
The host {hostJoined.name} joined the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
The host {hostLeft.name} left the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
The host {hostMember.name} changed status on the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
The vNetwork Distributed Switch {dvs.name} configuration on the host differed from that of the vCenter Server. | Warning | System | All | |
vNetwork Distributed Switch {srcDvs.name} was merged into {dstDvs.name} in {datacenter.name}. | Informational | System | All | |
dvPort {portKey} was blocked in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
The port {portKey} was connected in the vNetwork Distributed Switch {dvs.name} in {datacenter.name} | Informational | System | All | |
New ports were created in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
Deleted ports in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
The dvPort {portKey} was disconnected in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
dvPort {portKey} entered passthrough mode in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
dvPort {portKey} exited passthrough mode in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
dvPort {portKey} was moved into the dvPort group {portgroupName} in {datacenter.name}. | Informational | System | All | |
dvPort {portKey} was moved out of the dvPort group {portgroupName} in {datacenter.name}. | Informational | System | All | |
The port {portKey} link was down in the vNetwork Distributed Switch {dvs.name} in {datacenter.name} | Informational | System | All | |
The port {portKey} link was up in the vNetwork Distributed Switch {dvs.name} in {datacenter.name} | Informational | System | All | |
Reconfigured ports in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
dvPort {portKey} was unblocked in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. | Informational | System | All | |
The vNetwork Distributed Switch {dvs.name} in {datacenter.name} was reconfigured. | Informational | System | All | |
The vNetwork Distributed Switch {oldName} in {datacenter.name} was renamed to {newName}. | Informational | System | All | |
An upgrade for the vNetwork Distributed Switch {dvs.name} in datacenter {datacenter.name} is available. | Informational | System | All | |
An upgrade for the vNetwork Distributed Switch {dvs.name} in datacenter {datacenter.name} is in progress. | Informational | System | All | |
Cannot complete an upgrade for the vNetwork Distributed Switch {dvs.name} in datacenter {datacenter.name} | Informational | System | All | |
vNetwork Distributed Switch {dvs.name} in datacenter {datacenter.name} was upgraded. | Informational | System | All | |
Host {host.name} in {datacenter.name} has entered maintenance mode | Informational | System | All | |
The host {host.name} is in standby mode | Informational | System | All | |
Host {host.name} in {datacenter.name} has started to enter maintenance mode | Informational | System | All | |
The host {host.name} is entering standby mode | Informational | System | All | |
{message} | Critical | System | All | |
Host {host.name} in {datacenter.name} has exited maintenance mode | Informational | System | All | |
The host {host.name} could not exit standby mode | Critical | System | All | |
The host {host.name} is no longer in standby mode | Informational | System | All | |
The host {host.name} is exiting standby mode | Informational | System | All | |
Sufficient resources are available to satisfy HA failover level in cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
General event: {message} | Informational | System | All | |
Error detected on {host.name} in {datacenter.name}: {message} | Critical | System | All | |
Issue detected on {host.name} in {datacenter.name}: {message} | Informational | System | All | |
Issue detected on {host.name} in {datacenter.name}: {message} | Warning | System | All | |
User logged event: {message} | Informational | System | All | |
Error detected for {vm.name} on {host.name} in {datacenter.name}: {message} | Critical | System | All | |
Issue detected for {vm.name} on {host.name} in {datacenter.name}: {message} | Informational | System | All | |
Issue detected for {vm.name} on {host.name} in {datacenter.name}: {message} | Warning | System | All | |
The vNetwork Distributed Switch corresponding to the proxy switches {switchUuid} on the host {host.name} does not exist in vCenter Server or does not contain this host. | Informational | System | All | |
A ghost proxy switch {switchUuid} on the host {host.name} was resolved. | Informational | System | All | |
The message changed: {message} | Informational | System | All | |
{componentName} status changed from {oldStatus} to {newStatus} | Informational | System | All | |
Cannot add host {hostname} to datacenter {datacenter.name} | Critical | System | All | |
Added host {host.name} to datacenter {datacenter.name} | Informational | System | All | |
Administrator access to the host {host.name} is disabled | Warning | System | All | |
Administrator access to the host {host.name} has been restored | Warning | System | All | |
Cannot connect {host.name} in {datacenter.name}: cannot configure management account | Critical | System | All | |
Cannot connect {host.name} in {datacenter.name}: already managed by {serverName} | Critical | System | All | |
Cannot connect host {host.name} in {datacenter.name} : server agent is not responding | Critical | System | All | |
Cannot connect {host.name} in {datacenter.name}: incorrect user name or password | Critical | System | All | |
Cannot connect {host.name} in {datacenter.name}: incompatible version | Critical | System | All | |
Cannot connect host {host.name} in {datacenter.name}. Did not install or upgrade vCenter agent service. | Critical | System | All | |
Cannot connect {host.name} in {datacenter.name}: error connecting to host | Critical | System | All | |
Cannot connect {host.name} in {datacenter.name}: network error | Critical | System | All | |
Cannot connect host {host.name} in {datacenter.name}: account has insufficient privileges | Critical | System | All | |
Cannot connect host {host.name} in {datacenter.name} | Critical | System | All | |
Cannot connect {host.name} in {datacenter.name}: not enough CPU licenses | Critical | System | All | |
Cannot connect {host.name} in {datacenter.name}: incorrect host name | Critical | System | All | |
Cannot connect {host.name} in {datacenter.name}: time-out waiting for host response | Critical | System | All | |
Host {host.name} checked for compliance. | Informational | System | All | |
Host {host.name} is in compliance with the attached profile | Informational | System | All | |
Host configuration changes applied. | Informational | System | All | |
Connected to {host.name} in {datacenter.name} | Informational | System | All | |
Host {host.name} in {datacenter.name} is not responding | Critical | System | All | |
dvPort connected to host {host.name} in {datacenter.name} changed status | Informational | System | All | |
HA agent disabled on {host.name} in cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
HA is being disabled on {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} | Informational | System | All | |
HA agent enabled on {host.name} in cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
Enabling HA agent on {host.name} in cluster {computeResource.name} in {datacenter.name} | Warning | System | All | |
HA agent on {host.name} in cluster {computeResource.name} in {datacenter.name} has an error {message}: {[email protected]} | Critical | System | All | |
HA agent on host {host.name} in cluster {computeResource.name} in {datacenter.name} is configured correctly | Informational | System | All | |
Disconnected from {host.name} in {datacenter.name}. Reason: {[email protected]} | Informational | System | All | |
Cannot restore some administrator permissions to the host {host.name} | Critical | System | All | |
Host {host.name} has the following extra networks not used by other hosts for HA communication:{ips}. Consider using HA advanced option das.allowNetwork to control network usage | Critical | System | All | |
Cannot complete command 'hostname -s' on host {host.name} or returned incorrect name format | Critical | System | All | |
Maximum ({capacity}) number of hosts allowed for this edition of vCenter Server has been reached | Critical | System | All | |
The virtual machine inventory file on host {host.name} is damaged or unreadable. | Informational | System | All | |
IP address of the host {host.name} changed from {oldIP} to {newIP} | Informational | System | All | |
Configuration of host IP address is inconsistent on host {host.name}: address resolved to {ipAddress} and {ipAddress2} | Critical | System | All | |
Cannot resolve IP address to short name on host {host.name} | Critical | System | All | |
Host {host.name} could not reach isolation address: {isolationIp} | Critical | System | All | |
A host license for {host.name} has expired | Critical | System | All | |
Host {host.name} does not have the following networks used by other hosts for HA communication:{ips}. Consider using HA advanced option das.allowNetwork to control network usage | Critical | System | All | |
Host monitoring state in {computeResource.name} in {datacenter.name} changed to {[email protected]} | Informational | System | All | |
Host {host.name} currently has no available networks for HA Communication. The following networks are currently used by HA: {ips} | Critical | System | All | |
Host {host.name} has no port groups enabled for HA communication. | Critical | System | All | |
Host {host.name} currently has no management network redundancy | Critical | System | All | |
Host {host.name} is not in compliance with the attached profile | Critical | System | All | |
Host {host.name} is not a cluster member in {datacenter.name} | Critical | System | All | |
Insufficient capacity in host {computeResource.name} to satisfy resource configuration in {datacenter.name} | Critical | System | All | |
Primary agent {primaryAgent} was not specified as a short name to host {host.name} | Critical | System | All | |
Profile is applied on the host {host.name} | Informational | System | All | |
Cannot reconnect to {host.name} in {datacenter.name} | Critical | System | All | |
Removed host {host.name} in {datacenter.name} | Informational | System | All | |
Host names {shortName} and {shortName2} both resolved to the same IP address. Check the host's network configuration and DNS entries | Critical | System | All | |
Cannot resolve short name {shortName} to IP address on host {host.name} | Critical | System | All | |
Shut down of {host.name} in {datacenter.name}: {reason} | Informational | System | All | |
Configuration status on host {computeResource.name} changed from {[email protected]} to {[email protected]} in {datacenter.name} | Informational | System | All | |
Cannot synchronize host {host.name}. {reason.msg} | Critical | System | All | |
Cannot install or upgrade vCenter agent service on {host.name} in {datacenter.name} | Critical | System | All | |
The userworld swap is not enabled on the host {host.name} | Warning | System | All | |
Host {host.name} vNIC {vnic.vnic} was reconfigured to use dvPort {vnic.port.portKey} with port level configuration, which might be different from the dvPort group. | Informational | System | All | |
WWNs are changed for {host.name} | Warning | System | All | |
The WWN ({wwn}) of {host.name} conflicts with the currently registered WWN | Critical | System | All | |
Host {host.name} did not provide the information needed to acquire the correct set of licenses | Critical | System | All | |
{message} | Informational | System | All | |
Insufficient resources to satisfy HA failover level on cluster {computeResource.name} in {datacenter.name} | Critical | System | All | |
The license edition '{feature}' is invalid | Critical | System | All | |
License {feature.featureName} has expired | Critical | System | All | |
License inventory is not compliant. Licenses are overused | Critical | System | All | |
Unable to acquire licenses due to a restriction in the option file on the license server. | Critical | System | All | |
License server {licenseServer} is available | Informational | System | All | |
License server {licenseServer} is unavailable | Critical | System | All | |
Created local datastore {datastore.name} on {host.name} in {datacenter.name} | Informational | System | All | |
The Local Tech Support Mode for the host {host.name} has been enabled | Informational | System | All | |
Datastore {datastore} which is configured to back the locker does not exist | Warning | System | All | |
Locker was reconfigured from {oldDatastore} to {newDatastore} datastore | Informational | System | All | |
Unable to migrate {vm.name} from {host.name} in {datacenter.name}: {fault.msg} | Critical | System | All | |
Unable to migrate {vm.name} from {host.name} to {dstHost.name} in {datacenter.name}: {fault.msg} | Critical | System | All | |
Migration of {vm.name} from {host.name} to {dstHost.name} in {datacenter.name}: {fault.msg} | Warning | System | All | |
Cannot migrate {vm.name} from {host.name} to {dstHost.name} and resource pool {dstPool.name} in {datacenter.name}: {fault.msg} | Critical | System | All | |
Migration of {vm.name} from {host.name} to {dstHost.name} and resource pool {dstPool.name} in {datacenter.name}: {fault.msg} | Warning | System | All | |
Migration of {vm.name} from {host.name} in {datacenter.name}: {fault.msg} | Warning | System | All | |
Created NAS datastore {datastore.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Cannot login user {userName}@{ipAddress}: no permission | Critical | System | All | |
No datastores have been configured on the host {host.name} | Informational | System | All | |
A required license {feature.featureName} is not reserved | Critical | System | All | |
Unable to automatically migrate {vm.name} from {host.name} | Informational | System | All | |
Non-VI workload detected on datastore {datastore.name} | Critical | System | All | |
Not enough resources to failover {vm.name} in {computeResource.name} in {datacenter.name} | Informational | System | All | |
The vNetwork Distributed Switch configuration on some hosts differed from that of the vCenter Server. | Warning | System | All | |
Permission created for {principal} on {entity.name}, role is {role.name}, propagation is {[email protected]} | Informational | System | All | |
Permission rule removed for {principal} on {entity.name} | Informational | System | All | |
Permission changed for {principal} on {entity.name}, role is {role.name}, propagation is {[email protected]} | Informational | System | All | |
Profile {profile.name} attached. | Informational | System | All | |
Profile {profile.name} was changed. | Informational | System | All | |
Profile is created. | Informational | System | All | |
Profile {profile.name} detached. | Informational | System | All | |
Profile {profile.name} reference host changed. | Informational | System | All | |
Profile was removed. | Informational | System | All | |
Remote Tech Support Mode (SSH) for the host {host.name} has been enabled | Informational | System | All | |
Created resource pool {resourcePool.name} in compute-resource {computeResource.name} in {datacenter.name} | Informational | System | All | |
Removed resource pool {resourcePool.name} on {computeResource.name} in {datacenter.name} | Informational | System | All | |
Moved resource pool {resourcePool.name} from {oldParent.name} to {newParent.name} on {computeResource.name} in {datacenter.name} | Informational | System | All | |
Updated configuration for {resourcePool.name} in compute-resource {computeResource.name} in {datacenter.name} | Informational | System | All | |
Resource usage exceeds configuration for resource pool {resourcePool.name} in compute-resource {computeResource.name} in {datacenter.name} | Critical | System | All | |
New role {role.name} created | Informational | System | All | |
Role {role.name} removed | Informational | System | All | |
Modifed role {role.name} | Informational | System | All | |
Task {scheduledTask.name} on {entity.name} in {datacenter.name} completed successfully | Informational | System | All | |
Created task {scheduledTask.name} on {entity.name} in {datacenter.name} | Informational | System | All | |
Task {scheduledTask.name} on {entity.name} in {datacenter.name} sent email to {to} | Informational | System | All | |
Task {scheduledTask.name} on {entity.name} in {datacenter.name} cannot send email to {to}: {reason.msg} | Critical | System | All | |
Task {scheduledTask.name} on {entity.name} in {datacenter.name} cannot be completed: {reason.msg} | Critical | System | All | |
Reconfigured task {scheduledTask.name} on {entity.name} in {datacenter.name} | Informational | System | All | |
Removed task {scheduledTask.name} on {entity.name} in {datacenter.name} | Informational | System | All | |
Running task {scheduledTask.name} on {entity.name} in {datacenter.name} | Informational | System | All | |
A vCenter Server license has expired | Critical | System | All | |
vCenter started | Informational | System | All | |
A session for user '{terminatedUsername}' has stopped | Informational | System | All | |
Task: {info.descriptionId} | Informational | System | All | |
Task: {info.descriptionId} time-out | Informational | System | All | |
Upgrading template {legacyTemplate} | Informational | System | All | |
Cannot upgrade template {legacyTemplate} due to: {reason.msg} | Informational | System | All | |
Template {legacyTemplate} upgrade completed | Informational | System | All | |
The operation performed on {host.name} in {datacenter.name} timed out | Warning | System | All | |
There are {unlicensed} unlicensed virtual machines on host {host} - there are only {available} licenses available | Informational | System | All | |
{unlicensed} unlicensed virtual machines found on host {host} | Informational | System | All | |
The agent on host {host.name} is updated and will soon restart | Informational | System | All | |
User {userLogin} was added to group {group} | Informational | System | All | |
User {userName}@{ipAddress} logged in | Informational | System | All | |
User {userName} logged out | Informational | System | All | |
Password was changed for account {userLogin} on host {host.name} | Informational | System | All | |
User {userLogin} removed from group {group} | Informational | System | All | |
{message} | Informational | System | All | |
Created VMFS datastore {datastore.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Expanded VMFS datastore {datastore.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Extended VMFS datastore {datastore.name} on {host.name} in {datacenter.name} | Informational | System | All | |
A vMotion license for {host.name} has expired | Critical | System | All | |
Cannot uninstall vCenter agent from {host.name} in {datacenter.name}. {[email protected]} | Critical | System | All | |
vCenter agent has been uninstalled from {host.name} in {datacenter.name} | Informational | System | All | |
Cannot upgrade vCenter agent on {host.name} in {datacenter.name}. {[email protected]} | Critical | System | All | |
vCenter agent has been upgraded on {host.name} in {datacenter.name} | Informational | System | All | |
VIM account password was changed on host {host.name} | Informational | System | All | |
Remote console to {vm.name} on {host.name} in {datacenter.name} has been opened | Informational | System | All | |
A ticket for {vm.name} of type {ticketType} on {host.name} in {datacenter.name} has been acquired | Informational | System | All | |
Invalid name for {vm.name} on {host.name} in {datacenter.name}. Renamed from {oldName} to {newName} | Informational | System | All | |
Cloning {vm.name} on host {host.name} in {datacenter.name} to {destName} on host {destHost.name} | Informational | System | All | |
Cloning {vm.name} on host {host.name} in {datacenter.name} to {destName} on host {destHost.name} | Informational | System | All | |
Creating {vm.name} on host {host.name} in {datacenter.name} | Informational | System | All | |
Deploying {vm.name} on host {host.name} in {datacenter.name} from template {srcTemplate.name} | Informational | System | All | |
Migrating {vm.name} from {host.name} to {destHost.name} in {datacenter.name} | Informational | System | All | |
Relocating {vm.name} from {host.name} to {destHost.name} in {datacenter.name} | Informational | System | All | |
Relocating {vm.name} in {datacenter.name} from {host.name} to {destHost.name} | Informational | System | All | |
Cannot clone {vm.name}: {reason.msg} | Critical | System | All | |
Clone of {sourceVm.name} completed | Informational | System | All | |
Configuration file for {vm.name} on {host.name} in {datacenter.name} cannot be found | Informational | System | All | |
Virtual machine {vm.name} is connected | Informational | System | All | |
Created virtual machine {vm.name} on {host.name} in {datacenter.name} | Informational | System | All | |
dvPort connected to VM {vm.name} on {host.name} in {datacenter.name} changed status | Informational | System | All | |
{vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} reset by HA. Reason: {[email protected]} | Informational | System | All | |
{vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} reset by HA. Reason: {[email protected]}. A screenshot is saved at {screenshotFilePath}. | Informational | System | All | |
Cannot reset {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} | Warning | System | All | |
Unable to update HA agents given the state of {vm.name} | Critical | System | All | |
HA agents have been updated with the current state of the virtual machine | Informational | System | All | |
Disconnecting all hosts as the date of virtual machine {vm.name} has been rolled back | Critical | System | All | |
Cannot deploy template: {reason.msg} | Critical | System | All | |
Template {srcTemplate.name} deployed on host {host.name} | Informational | System | All | |
{vm.name} on host {host.name} in {datacenter.name} is disconnected | Informational | System | All | |
Discovered {vm.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Cannot create virtual disk {disk} | Critical | System | All | |
Migrating {vm.name} off host {host.name} in {datacenter.name} | Informational | System | All | |
End a recording session on {vm.name} | Informational | System | All | |
End a replay session on {vm.name} | Informational | System | All | |
Cannot migrate {vm.name} from {host.name} to {destHost.name} in {datacenter.name} | Critical | System | All | |
Cannot complete relayout {vm.name} on {host.name} in {datacenter.name}: {reason.msg} | Critical | System | All | |
Cannot complete relayout for virtual machine {vm.name} which has disks on a VMFS2 volume. | Critical | System | All | |
vCenter cannot start the Secondary VM {vm.name}. Reason: {[email protected]} | Critical | System | All | |
Cannot power Off {vm.name} on {host.name} in {datacenter.name}: {reason.msg} | Critical | System | All | |
Cannot power On {vm.name} on {host.name} in {datacenter.name}. {reason.msg} | Critical | System | All | |
Cannot reboot the guest OS for {vm.name} on {host.name} in {datacenter.name}. {reason.msg} | Critical | System | All | |
Cannot suspend {vm.name} on {host.name} in {datacenter.name}: {reason.msg} | Critical | System | All | |
{vm.name} cannot shut down the guest OS on {host.name} in {datacenter.name}: {reason.msg} | Critical | System | All | |
{vm.name} cannot standby the guest OS on {host.name} in {datacenter.name}: {reason.msg} | Critical | System | All | |
Cannot suspend {vm.name} on {host.name} in {datacenter.name}: {reason.msg} | Critical | System | All | |
vCenter cannot update the Secondary VM {vm.name} configuration | Critical | System | All | |
Failover unsuccessful for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name}. Reason: {reason.msg} | Warning | System | All | |
Fault Tolerance state on {vm.name} changed from {[email protected]} to {[email protected]} | Informational | System | All | |
Fault Tolerance protection has been turned off for {vm.name} | Informational | System | All | |
The Fault Tolerance VM ({vm.name}) has been terminated. {[email protected]} | Informational | System | All | |
Guest OS reboot for {vm.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Guest OS shut down for {vm.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Guest OS standby for {vm.name} on {host.name} in {datacenter.name} | Informational | System | All | |
VM monitoring state in {computeResource.name} in {datacenter.name} changed to {[email protected]} | Informational | System | All | |
Assign a new instance UUID ({instanceUuid}) to {vm.name} | Informational | System | All | |
The instance UUID of {vm.name} has been changed from ({oldInstanceUuid}) to ({newInstanceUuid}) | Informational | System | All | |
The instance UUID ({instanceUuid}) of {vm.name} conflicts with the instance UUID assigned to {conflictedVm.name} | Critical | System | All | |
New MAC address ({mac}) assigned to adapter {adapter} for {vm.name} | Informational | System | All | |
Changed MAC address from {oldMac} to {newMac} for adapter {adapter} for {vm.name} | Warning | System | All | |
The MAC address ({mac}) of {vm.name} conflicts with MAC assigned to {conflictedVm.name} | Critical | System | All | |
Reached maximum Secondary VM (with FT turned On) restart count for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name}. | Warning | System | All | |
Reached maximum VM restart count for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name}. | Warning | System | All | |
Error message on {vm.name} on {host.name} in {datacenter.name}: {message} | Critical | System | All | |
Message on {vm.name} on {host.name} in {datacenter.name}: {message} | Informational | System | All | |
Warning message on {vm.name} on {host.name} in {datacenter.name}: {message} | Warning | System | All | |
Migration of virtual machine {vm.name} from {sourceHost.name} to {host.name} completed | Informational | System | All | |
No compatible host for the Secondary VM {vm.name} | Critical | System | All | |
Not all networks for {vm.name} are accessible by {destHost.name} | Warning | System | All | |
{vm.name} does not exist on {host.name} in {datacenter.name} | Warning | System | All | |
{vm.name} was powered Off on the isolated host {isolatedHost.name} in cluster {computeResource.name} in {datacenter.name} | Informational | System | All | |
{vm.name} on {host.name} in {datacenter.name} is powered off | Informational | System | All | |
{vm.name} on {host.name} in {datacenter.name} is powered on | Informational | System | All | |
Virtual machine {vm.name} powered On with vNICs connected to dvPorts that have a port level configuration, which might be different from the dvPort group configuration. | Informational | System | All | |
VM ({vm.name}) failed over to {host.name}. {[email protected]} | Critical | System | All | |
Reconfigured {vm.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Registered {vm.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Relayout of {vm.name} on {host.name} in {datacenter.name} completed | Informational | System | All | |
{vm.name} on {host.name} in {datacenter.name} is in the correct format and relayout is not necessary | Informational | System | All | |
{vm.name} on {host.name} reloaded from new configuration {configPath}. | Informational | System | All | |
{vm.name} on {host.name} could not be reloaded from {configPath}. | Critical | System | All | |
Cannot relocate virtual machine '{vm.name}' in {datacenter.name} | Critical | System | All | |
Completed the relocation of the virtual machine | Informational | System | All | |
Remote console connected to {vm.name} on host {host.name} | Informational | System | All | |
Remote console disconnected from {vm.name} on host {host.name} | Informational | System | All | |
Removed {vm.name} on {host.name} from {datacenter.name} | Informational | System | All | |
Renamed {vm.name} from {oldName} to {newName} in {datacenter.name} | Warning | System | All | |
{vm.name} on {host.name} in {datacenter.name} is reset | Informational | System | All | |
Moved {vm.name} from resource pool {oldParent.name} to {newParent.name} in {datacenter.name} | Informational | System | All | |
Changed resource allocation for {vm.name} | Informational | System | All | |
Virtual machine {vm.name} was restarted on {host.name} since {sourceHost.name} failed | Informational | System | All | |
{vm.name} on {host.name} in {datacenter.name} is resumed | Informational | System | All | |
A Secondary VM has been added for {vm.name} | Informational | System | All | |
vCenter disabled Fault Tolerance on VM '{vm.name}' because the Secondary VM could not be powered On. | Critical | System | All | |
Disabled Secondary VM for {vm.name} | Informational | System | All | |
Enabled Secondary VM for {vm.name} | Informational | System | All | |
Started Secondary VM for {vm.name} | Informational | System | All | |
{vm.name} was shut down on the isolated host {isolatedHost.name} in cluster {computeResource.name} in {datacenter.name}: {[email protected]} | Informational | System | All | |
Start a recording session on {vm.name} | Informational | System | All | |
Start a replay session on {vm.name} | Informational | System | All | |
{vm.name} on host {host.name} in {datacenter.name} is starting | Informational | System | All | |
Starting Secondary VM for {vm.name} | Informational | System | All | |
The static MAC address ({mac}) of {vm.name} conflicts with MAC assigned to {conflictedVm.name} | Critical | System | All | |
{vm.name} on {host.name} in {datacenter.name} is stopping | Informational | System | All | |
{vm.name} on {host.name} in {datacenter.name} is suspended | Informational | System | All | |
{vm.name} on {host.name} in {datacenter.name} is being suspended | Informational | System | All | |
Starting the Secondary VM {vm.name} timed out within {timeout} ms | Critical | System | All | |
Unsupported guest OS {guestId} for {vm.name} on {host.name} in {datacenter.name} | Warning | System | All | |
Virtual hardware upgraded to version {version} | Informational | System | All | |
Cannot upgrade virtual hardware | Critical | System | All | |
Upgrading virtual hardware on {vm.name} in {datacenter.name} to version {version} | Informational | System | All | |
Assigned new BIOS UUID ({uuid}) to {vm.name} on {host.name} in {datacenter.name} | Informational | System | All | |
Changed BIOS UUID from {oldUuid} to {newUuid} for {vm.name} on {host.name} in {datacenter.name} | Warning | System | All | |
BIOS ID ({uuid}) of {vm.name} conflicts with that of {conflictedVm.name} | Critical | System | All | |
New WWNs assigned to {vm.name} | Informational | System | All | |
WWNs are changed for {vm.name} | Warning | System | All | |
The WWN ({wwn}) of {vm.name} conflicts with the currently registered WWN | Critical | System | All | |
{message} | Warning | System | All | |
Booting from iSCSI failed with an error. See the VMware Knowledge Base for information on configuring iBFT networking. | Warning | System | All | |
com.vmware.license.AddLicenseEvent | License {licenseKey} added to VirtualCenter | Informational | System | All |
com.vmware.license.AssignLicenseEvent | License {licenseKey} assigned to asset {entityName} with id {entityId} | Informational | System | All |
com.vmware.license.DLFDownloadFailedEvent | Failed to download license information from the host {hostname} due to {errorReason.@enum.com.vmware.license.DLFDownloadFailedEvent.DLFDownloadFailedReason} | Warning | System | All |
com.vmware.license.LicenseAssignFailedEvent | License assignment on the host fails. Reasons: {[email protected]}. | Informational | System | All |
com.vmware.license.LicenseExpiryEvent | Your host license will expire in {remainingDays} days. The host will be disconnected from VC when its license expires. | Warning | System | All |
com.vmware.license.LicenseUserThresholdExceededEvent | Current license usage ({currentUsage} {costUnitText}) for {edition} exceeded the user-defined threshold ({threshold} {costUnitText}) | Warning | System | All |
com.vmware.license.RemoveLicenseEvent | License {licenseKey} removed from VirtualCenter | Informational | System | All |
com.vmware.license.UnassignLicenseEvent | License unassigned from asset {entityName} with id {entityId} | Informational | System | All |
com.vmware.vc.HA.ClusterFailoverActionCompletedEvent | HA completed a failover action in cluster {computeResource.name} in datacenter {datacenter.name} | Informational | System | All |
com.vmware.vc.HA.ClusterFailoverActionInitiatedEvent | HA initiated a failover action in cluster {computeResource.name} in datacenter {datacenter.name} | Warning | System | All |
com.vmware.vc.HA.DasAgentRunningEvent | HA Agent on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} is running | Informational | System | All |
com.vmware.vc.HA.DasFailoverHostFailedEvent | HA failover host {host.name} in cluster {computeResource.name} in {datacenter.name} has failed | Critical | System | All |
com.vmware.vc.HA.DasHostCompleteDatastoreFailureEvent | All shared datastores failed on the host {hostName} in cluster {computeResource.name} in {datacenter.name} | Critical | System | All |
com.vmware.vc.HA.DasHostCompleteNetworkFailureEvent | All VM networks failed on the host {hostName} in cluster {computeResource.name} in {datacenter.name} | Critical | System | All |
com.vmware.vc.HA.DasHostFailedEvent | A possible host failure has been detected by HA on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} | Critical | System | All |
com.vmware.vc.HA.DasHostMonitoringDisabledEvent | No virtual machine failover will occur until Host Monitoring is enabled in cluster {computeResource.name} in {datacenter.name} | Warning | System | All |
com.vmware.vc.HA.DasTotalClusterFailureEvent | HA recovered from a total cluster failure in cluster {computeResource.name} in datacenter {datacenter.name} | Warning | System | All |
com.vmware.vc.HA.HostDasAgentHealthyEvent | HA Agent on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} is healthy | Informational | System | All |
com.vmware.vc.HA.HostDasErrorEvent | HA agent on {host.name} in cluster {computeResource.name} in {datacenter.name} has an error: {[email protected]} | Critical | System | All |
com.vmware.vc.VCHealthStateChangedEvent | vCenter Service overall health changed from '{oldState}' to '{newState}' | Informational | System | All |
com.vmware.vc.cim.CIMGroupHealthStateChanged | Health of [data.group] changed from [data.oldState] to [data.newState]. | Informational | System | All |
com.vmware.vc.datastore.UpdateVmFilesFailedEvent | Failed to update VM files on datastore {ds.name} using host {hostName} | Critical | System | All |
com.vmware.vc.datastore.UpdatedVmFilesEvent | Updated VM files on datastore {ds.name} using host {hostName} | Informational | System | All |
com.vmware.vc.datastore.UpdatingVmFilesEvent | Updating VM files on datastore {ds.name} using host {hostName} | Informational | System | All |
com.vmware.vc.ft.VmAffectedByDasDisabledEvent | VMware HA has been disabled in cluster {computeResource.name} of datacenter {datacenter.name}. HA will not restart VM {vm.name} or its Secondary VM after a failure. | Warning | System | All |
com.vmware.vc.npt.VmAdapterEnteredPassthroughEvent | Network passthrough is active on adapter {deviceLabel} of virtual machine {vm.name} on host {host.name} in {datacenter.name} | Informational | System | All |
com.vmware.vc.npt.VmAdapterExitedPassthroughEvent | Network passthrough is inactive on adapter {deviceLabel} of virtual machine {vm.name} on host {host.name} in {datacenter.name} | Informational | System | All |
com.vmware.vc.vcp.FtDisabledVmTreatAsNonFtEvent | HA VM Component Protection protects virtual machine {vm.name} on {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} as non-FT virtual machine because the FT state is disabled | Informational | System | All |
com.vmware.vc.vcp.FtFailoverEvent | FT Primary VM {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} is going to fail over to Secondary VM due to component failure | Informational | System | All |
com.vmware.vc.vcp.FtFailoverFailedEvent | FT virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} failed to failover to secondary | Critical | System | All |
com.vmware.vc.vcp.FtSecondaryRestartEvent | HA VM Component Protection is restarting FT secondary virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} due to component failure | Informational | System | All |
com.vmware.vc.vcp.FtSecondaryRestartFailedEvent | FT Secondary VM {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} failed to restart | Critical | System | All |
com.vmware.vc.vcp.NeedSecondaryFtVmTreatAsNonFtEvent | HA VM Component Protection protects virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} as non-FT virtual machine because it has been in the needSecondary state too long | Informational | System | All |
com.vmware.vc.vcp.TestEndEvent | VM Component Protection test ends on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} | Informational | System | All |
com.vmware.vc.vcp.TestStartEvent | VM Component Protection test starts on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} | Informational | System | All |
com.vmware.vc.vcp.VcpNoActionEvent | HA VM Component Protection did not take action on virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} due to the feature configuration setting | Informational | System | All |
com.vmware.vc.vcp.VmDatastoreFailedEvent | Virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} lost access to {datastore} | Critical | System | All |
com.vmware.vc.vcp.VmNetworkFailedEvent | Virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} lost access to {network} | Critical | System | All |
com.vmware.vc.vcp.VmPowerOffHangEvent | HA VM Component Protection could not power off virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} successfully after trying {numTimes} times and will keep trying | Critical | System | All |
com.vmware.vc.vcp.VmRestartEvent | HA VM Component Protection is restarting virtual machine {vm.name} due to component failure on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} | Informational | System | All |
com.vmware.vc.vcp.VmRestartFailedEvent | Virtual machine {vm.name} affected by component failure on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} failed to restart | Critical | System | All |
com.vmware.vc.vcp.VmWaitForCandidateHostEvent | HA VM Component Protection could not find a destination host for virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} after waiting {numSecWait} seconds and will keep trying | Critical | System | All |
com.vmware.vc.vmam.AppMonitoringNotSupported | Application monitoring is not supported on {host.name} in cluster {computeResource.name} in {datacenter.name} | Warning | System | All |
com.vmware.vc.vmam.VmAppHealthMonitoringStateChangedEvent | Application heartbeat status changed to {status} for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} | Warning | System | All |
com.vmware.vc.vmam.VmDasAppHeartbeatFailedEvent | Application heartbeat failed for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} | Warning | System | All |
esx.clear.net.connectivity.restored | Network connectivity restored on virtual switch {1}, portgroups: {2}. Physical NIC {3} is up. | Informational | System | All |
esx.clear.net.dvport.connectivity.restored | Network connectivity restored on DVPorts: {1}. Physical NIC {2} is up. | Informational | System | All |
esx.clear.net.dvport.redundancy.restored | Uplink redundancy restored on DVPorts: {1}. Physical NIC {2} is up. | Informational | System | All |
esx.clear.net.redundancy.restored | Uplink redundancy restored on virtual switch {1}, portgroups: {2}. Physical NIC {3} is up. | Informational | System | All |
esx.clear.net.vmnic.linkstate.up | Physical NIC {1} linkstate is up. | Informational | System | All |
esx.clear.storage.connectivity.restored | Connectivity to storage device {1} (Datastores: {2}) restored. Path {3} is active again. | Informational | System | All |
esx.clear.storage.redundancy.restored | Path redundancy to storage device {1} (Datastores: {2}) restored. Path {3} is active again. | Informational | System | All |
esx.problem.apei.bert.memory.error.corrected | A corrected memory error occurred in last boot. The following details were reported. Physical Addr: {1}, Physical Addr Mask: {2}, Node: {3}, Card: {4}, Module: {5}, Bank: {6}, Device: {7}, Row: {8}, Column: {9} Error type: {10} | Critical | System | All |
esx.problem.apei.bert.memory.error.fatal | A fatal memory error occurred in the last boot. The following details were reported. Physical Addr: {1}, Physical Addr Mask: {2}, Node: {3}, Card: {4}, Module: {5}, Bank: {6}, Device: {7}, Row: {8}, Column: {9} Error type: {10} | Critical | System | All |
esx.problem.apei.bert.memory.error.recoverable | A recoverable memory error occurred in last boot. The following details were reported. Physical Addr: {1}, Physical Addr Mask: {2}, Node: {3}, Card: {4}, Module: {5}, Bank: {6}, Device: {7}, Row: {8}, Column: {9} Error type: {10} | Critical | System | All |
esx.problem.apei.bert.pcie.error.corrected | A corrected PCIe error occurred in last boot. The following details were reported. Port Type: {1}, Device: {2}, Bus #: {3}, Function: {4}, Slot: {5}, Device Vendor: {6}, Version: {7}, Command Register: {8}, Status Register: {9}. | Critical | System | All |
esx.problem.apei.bert.pcie.error.fatal | Platform encounterd a fatal PCIe error in last boot. The following details were reported. Port Type: {1}, Device: {2}, Bus #: {3}, Function: {4}, Slot: {5}, Device Vendor: {6}, Version: {7}, Command Register: {8}, Status Register: {9}. | Critical | System | All |
esx.problem.apei.bert.pcie.error.recoverable | A recoverable PCIe error occurred in last boot. The following details were reported. Port Type: {1}, Device: {2}, Bus #: {3}, Function: {4}, Slot: {5}, Device Vendor: {6}, Version: {7}, Command Register: {8}, Status Register: {9}. | Critical | System | All |
esx.problem.iorm.nonviworkload | An external I/O activity is detected on datastore {1}, this is an unsupported configuration. Consult the Resource Management Guide or follow the Ask VMware link for more information. | Informational | System | All |
esx.problem.net.connectivity.lost | Lost network connectivity on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. | Critical | System | All |
esx.problem.net.dvport.connectivity.lost | Lost network connectivity on DVPorts: {1}. Physical NIC {2} is down. | Critical | System | All |
esx.problem.net.dvport.redundancy.degraded | Uplink redundancy degraded on DVPorts: {1}. Physical NIC {2} is down. | Warning | System | All |
esx.problem.net.dvport.redundancy.lost | Lost uplink redundancy on DVPorts: {1}. Physical NIC {2} is down. | Warning | System | All |
esx.problem.net.e1000.tso6.notsupported | Guest-initiated IPv6 TCP Segmentation Offload (TSO) packets ignored. Manually disable TSO inside the guest operating system in virtual machine {1}, or use a different virtual adapter. | Critical | System | All |
esx.problem.net.migrate.bindtovmk | The ESX advanced configuration option /Migrate/Vmknic is set to an invalid vmknic: {1}. /Migrate/Vmknic specifies a vmknic that vMotion binds to for improved performance. Update the configuration option with a valid vmknic. Alternatively, if you do not want vMotion to bind to a specific vmknic, remove the invalid vmknic and leave the option blank. | Warning | System | All |
esx.problem.net.proxyswitch.port.unavailable | Virtual NIC with hardware address {1} failed to connect to distributed virtual port {2} on switch {3}. There are no more ports available on the host proxy switch. | Warning | System | All |
esx.problem.net.redundancy.degraded | Uplink redundancy degraded on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. | Warning | System | All |
esx.problem.net.redundancy.lost | Lost uplink redundancy on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. | Warning | System | All |
esx.problem.net.uplink.mtu.failed | VMkernel failed to set the MTU value {1} on the uplink {2}. | Warning | System | All |
esx.problem.net.vmknic.ip.duplicate | A duplicate IP address was detected for {1} on the interface {2}. The current owner is {3}. | Warning | System | All |
esx.problem.net.vmnic.linkstate.down | Physical NIC {1} linkstate is down. | Informational | System | All |
esx.problem.net.vmnic.watchdog.reset | Uplink {1} has recovered from a transient failure due to watchdog timeout | Informational | System | All |
esx.problem.scsi.device.limitreached | The maximum number of supported devices of {1} has been reached. A device from plugin {2} could not be created. | Critical | System | All |
esx.problem.scsi.device.thinprov.atquota | Space utilization on thin-provisioned device {1} exceeded configured threshold. Affected datastores (if any): {2}. | Warning | System | All |
esx.problem.scsi.scsipath.limitreached | The maximum number of supported paths of {1} has been reached. Path {2} could not be added. | Critical | System | All |
esx.problem.storage.connectivity.devicepor | Frequent PowerOn Reset Unit Attentions are occurring on device {1}. This might indicate a storage problem. Affected datastores: {2} | Warning | System | All |
esx.problem.storage.connectivity.lost | Lost connectivity to storage device {1}. Path {2} is down. Affected datastores: {3}. | Critical | System | All |
esx.problem.storage.connectivity.pathpor | Frequent PowerOn Reset Unit Attentions are occurring on path {1}. This might indicate a storage problem. Affected device: {2}. Affected datastores: {3} | Warning | System | All |
esx.problem.storage.connectivity.pathstatechanges | Frequent path state changes are occurring for path {1}. This might indicate a storage problem. Affected device: {2}. Affected datastores: {3} | Warning | System | All |
esx.problem.storage.redundancy.degraded | Path redundancy to storage device {1} degraded. Path {2} is down. Affected datastores: {3}. | Warning | System | All |
esx.problem.storage.redundancy.lost | Lost path redundancy to storage device {1}. Path {2} is down. Affected datastores: {3}. | Warning | System | All |
esx.problem.vmfs.heartbeat.recovered | Successfully restored access to volume {1} ({2}) following connectivity issues. | Informational | System | All |
esx.problem.vmfs.heartbeat.timedout | Lost access to volume {1} ({2}) due to connectivity issues. Recovery attempt is in progress and outcome will be reported shortly. | Informational | System | All |
esx.problem.vmfs.heartbeat.unrecoverable | Lost connectivity to volume {1} ({2}) and subsequent recovery attempts have failed. | Critical | System | All |
esx.problem.vmfs.journal.createfailed | No space for journal on volume {1} ({2}). Opening volume in read-only metadata mode with limited write support. | Critical | System | All |
esx.problem.vmfs.lock.corruptondisk | At least one corrupt on-disk lock was detected on volume {1} ({2}). Other regions of the volume might be damaged too. | Critical | System | All |
esx.problem.vmfs.nfs.mount.connect.failed | Failed to mount to the server {1} mount point {2}. {3} | Critical | System | All |
esx.problem.vmfs.nfs.mount.limit.exceeded | Failed to mount to the server {1} mount point {2}. {3} | Critical | System | All |
esx.problem.vmfs.nfs.server.disconnect | Lost connection to server {1} mount point {2} mounted as {3} ({4}). | Critical | System | All |
esx.problem.vmfs.nfs.server.restored | Restored connection to server {1} mount point {2} mounted as {3} ({4}). | Informational | System | All |
esx.problem.vmfs.resource.corruptondisk | At least one corrupt resource metadata region was detected on volume {1} ({2}). Other regions of the volume might be damaged too. | Critical | System | All |
esx.problem.vmfs.volume.locked | Volume on device {1} locked, possibly because remote host {2} encountered an error during a volume operation and could not recover. | Critical | System | All |
vim.event.LicenseDowngradedEvent | License downgrade: {licenseKey} removes the following features: {lostFeatures} | Warning | System | All |
vprob.net.connectivity.lost | Lost network connectivity on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. | Critical | System | All |
vprob.net.e1000.tso6.notsupported | Guest-initiated IPv6 TCP Segmentation Offload (TSO) packets ignored. Manually disable TSO inside the guest operating system in virtual machine {1}, or use a different virtual adapter. | Critical | System | All |
vprob.net.migrate.bindtovmk | The ESX advanced config option /Migrate/Vmknic is set to an invalid vmknic: {1}. /Migrate/Vmknic specifies a vmknic that vMotion binds to for improved performance. Please update the config option with a valid vmknic or, if you do not want vMotion to bind to a specific vmknic, remove the invalid vmknic and leave the option blank. | Warning | System | All |
vprob.net.proxyswitch.port.unavailable | Virtual NIC with hardware address {1} failed to connect to distributed virtual port {2} on switch {3}. There are no more ports available on the host proxy switch. | Warning | System | All |
vprob.net.redundancy.degraded | Uplink redundancy degraded on virtual switch {1}. Physical NIC {2} is down. {3} uplinks still up. Affected portgroups:{4}. | Warning | System | All |
vprob.net.redundancy.lost | Lost uplink redundancy on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. | Warning | System | All |
vprob.scsi.device.thinprov.atquota | Space utilization on thin-provisioned device {1} exceeded configured threshold. | Warning | System | All |
vprob.storage.connectivity.lost | Lost connectivity to storage device {1}. Path {2} is down. Affected datastores: {3}. | Critical | System | All |
vprob.storage.redundancy.degraded | Path redundancy to storage device {1} degraded. Path {2} is down. {3} remaining active paths. Affected datastores: {4}. | Warning | System | All |
vprob.storage.redundancy.lost | Lost path redundancy to storage device {1}. Path {2} is down. Affected datastores: {3}. | Warning | System | All |
vprob.vmfs.heartbeat.recovered | Successfully restored access to volume {1} ({2}) following connectivity issues. | Informational | System | All |
vprob.vmfs.heartbeat.timedout | Lost access to volume {1} ({2}) due to connectivity issues. Recovery attempt is in progress and outcome will be reported shortly. | Informational | System | All |
vprob.vmfs.heartbeat.unrecoverable | Lost connectivity to volume {1} ({2}) and subsequent recovery attempts have failed. | Critical | System | All |
vprob.vmfs.journal.createfailed | No space for journal on volume {1} ({2}). Opening volume in read-only metadata mode with limited write support. | Critical | System | All |
vprob.vmfs.lock.corruptondisk | At least one corrupt on-disk lock was detected on volume {1} ({2}). Other regions of the volume may be damaged too. | Critical | System | All |
vprob.vmfs.nfs.server.disconnect | Lost connection to server {1} mount point {2} mounted as {3} ({4}). | Critical | System | All |
vprob.vmfs.nfs.server.restored | Restored connection to server {1} mount point {2} mounted as {3} ({4}). | Informational | System | All |
vprob.vmfs.resource.corruptondisk | At least one corrupt resource metadata region was detected on volume {1} ({2}). Other regions of the volume might be damaged too. | Critical | System | All |
vprob.vmfs.volume.locked | Volume on device {1} locked, possibly because remote host {2} encountered an error during a volume operation and could not recover. | Critical | System | All |
RHEV
Red Hat Enterprise Virtualization (RHEV) は、RedHat を利用するデータセンター企業で使われている仮想化技術の一つです。Pandora FMS は、RHEV Monitoring Plugin というプラグインを通してRHEV を使った仮想アーキテクチャをモニタすることができます。これは、簡単に RHEV の仮想アーキテクチャに関連するすべての値を制御することができます。
モニタする RHEV アーキテクチャ
このプラグインで、データセンター、ホストクラスタ、ストレージドメイン、ネットワーク、ホストおよび、仮想マシンといった、RHEV アーキテクチャの全体をモニタすることができ、仮想環境の全体の状態を確認することができます。
これを実現するために、Pandora では RHEV 仮想化システムによって公式に提供されている API を利用しています。
RHEV モニタリングプラグインでのモニタリング
RHEV 環境のモニタリングは、2つのコンポーネントに基づいています。
- 自動検出動作を行うエージェントプラグインとデータ収集タスク。このエージェントプラグインは、Pandora FMS へ情報を送信します。
- 検出したいくつかのパラメータを更新する自動検出スクリプト。このスクリプトは、「拡張」のために必要です。
- RHEV View および RHEV Manager 拡張。これらは、プラグインに機能追加し、Pandora FMS のコンソールからインフラのモニタリングおよび仮想マシンの管理 (電源ON/OFF) ができるようにした「拡張」です。
自動検出スクリプトを利用するには、自動検出サーバを有効にする必要があります。
仮想マシンで収集するデータを API で返すようにするには、RHEV エージェントをインストールする必要があります 。詳細については、RHEV のドキュメントを参照してください。
仮想マシンにインストールされた OS をモニタする には、RHEV API ではなくPandora FMS エージェント が必要です。
プラグイン動作の仕組
RHEV モニタリングプラグインは、RHEV 仮想環境の web API を通して情報を展開します。
モニタしたいだけであれば、この処理を実行するソフトウエアエージェントプラグインを設定します。
エージェントプラグインは、デバイスの自動検出を行い、検出したデバイスごとにモジュールを定義し XML を生成します。プラグインの設定では、どの要素をモニタリングしたいかを選択しモジュールを設定することができます。プラグインで作成されたモジュールの設定は変更が可能です。モジュールの、名前、説明、警告や障害状態の最小値、最大値を変更できます。
Pandora FMS 4.0 以降では XML を通して警告および障害状態の値(閾値)を更新することができますが、それより前のバージョンでは、ウェブコンソールから変更します。
XML が生成されると、エージェントプラグインは転送手法の設定に従って tentacle またはローカルでのファイルコピーにより、そのファイルを送信します。
また、RHEV View および RHEV Manager 拡張を利用する場合は、自動検出スクリプトを利用する必要があります。
自動検出スクリプトは、RHEV 仮想環境のそれぞれの Pandora FMS エージェントの値を更新します。これらの値は、RHEV View 拡張で状態を正しく表示したり、RHEV Manager 拡張で仮想マシンを正しく管理するために必要な値です。
インストール要件
エージェントプラグインは、次のソフトウエアが必要です。
- curl
- perl-XML-Simple
- Pandora FMS ソフトウエアエージェント
- tentacle_client (ファイルの送信に tentacle を利用したい場合。tentacle_client は、Pandora FMS ソフトウエアエージェントと共に配布されています。)
Red Hat
RedHat システムでは、次のように依存ファイルをインストールします。
yum install perl-XML-Simple curl
SLES
SUSE システムでは、次のように依存ファイルをインストールします。
zypper install perl-XML-Simple curl
Debian/Ubuntu
Debian/Ubuntu システムでは、次のように依存ファイルをインストールします。
apt-get install libxml-simple-perl curl
Pandora FMS ソフトウエアエージェントのインストール
Pandora FMS ソフトウエアエージェントのインストールは、Pandora FMSのインストールにて説明しています。ここに、エージェントをインストールためのドキュメントがそろっています。
RHEV 証明書のダウンロード
プラグインを実行する前に、RHEV API に HTTPS で接続するための証明書をダウンロードする必要があります。証明書をダウンロードするには、次のコマンドを実行します。
curl -o rhevm.cer http://[RHEVM-HOST]:8080/ca.crt
ここで、rhev-host は、RHEV API サーバのサーバ名です。例えば次の通りです。
curl -o rhevm.cer http://rhevm.server:8080/ca.crt
証明書をダウンロードしたら、次のコマンドで API に接続することができます。
curl -X GET -H "Accept: application/xml" -u [USER:PASS] --cacert [CERT] https://[RHEVM-HOST]:8443/api
次の値を指定してください。
- USER: API へ接続する user@domain
- PASS: API へ接続するためのユーザのパスワード
- CERT: ダウンロードした証明書のパス
- RHEVM-HOST: API ホストのアドレス
実際の実行例は次の通りです。
curl -X GET -H "Accept: application/xml" -u [[user@testdomain:12345|]] --cacert /home/user/ca.crt https://rhevm.server:8443/api
すべて成功すると、コマンドが XML フォーマットで RHEV API の一般情報を出力します。
RHEV 設定時に考慮すべき点
RHEV の仮想化環境は、同じ名前で複数のエンティティを持つことができます。この機能では、Pandora FMS において複数のエージェントが同じ名前でデータを送信してしまうという問題があります。この問題に加えて、API が出力する XML のパースにおいて次のようなエラーが出る問題があります。
Warning: <data_center> element has non-unique value in 'name' key attribute: Default at ./plugin-rhev.pl line 199
この問題の解決のためには、RHEV 仮想環境のエンティティの名前付けポリシーを、同一名にならないようにする必要があります。
エージェントプラグインのインストール
エージェントプラグインをインストールするには、rhev-plugin.pl および rhev-plugin.conf をプラグインを実行させたいマシンにインストールした pandora エージェントがアクセスできるフォルダにコピーするだけです。プラグインは、Pandora FMS サーバと同じマシンまたは他のマシンにインストールされたエージェントより実行できます。
プラグインを実行するには、エージェントの設定ファイル(デフォルトでは /etc/pandora/pandora_agent.conf です)に次のような行を追加します。
module_plugin /root/rhev-plugin.pl /root/rhev-plugin.conf
この行を追加することにより、エージェントの実行間隔でエージェントプラグインが実行されます。
RHEV 仮想アーキテクチャのモニタリング
プラグインの実行結果を見るには、モニタリング(Monitoring) > 表示(Views) > エージェント詳細(Agent Detail) をクリックします。
見ての通り、プラグインが Pandora FMS 内に、RHEV アーキテクチャで検出したエンティティごとに一つのエージェントを作成しています。
エージェント名をクリックすると、プラグインにより作成されたモジュールを見ることができます。加えて、エージェントに関連したその他データを次のように見ることができます。
それぞれのエンティティで、それぞれ重要な情報をモニタリングするための複数のモジュールが自動的に作成されます。
仮想マシンではなくホストに関連づけられたエージェントを選択した場合は、モニタリングモジュールは異なります。
RHEV プラグインは、仮想アーキテクチャ内で発生したイベントもモニタリングできます。プラグインは、次の画面のように、それぞれのエージェントにイベントをモニタするモジュールを作成します。
イベントに基づいたこれらのモジュールのデータは、イベントが発生した時間とイベントの説明です。以下にデータの例を示します。
RHEV アーキテクチャに関連したエージェントおよびモジュールに加え、プラグインを実行するエージェントで生成されたモジュールもあります。このモジュールは、デフォルトではRHEV Plugin という名前で、このモジュールの実行結果例は次の通りです。
このプラグインの内容はプラグインの実行結果であり、実行が正常にできた場合は OK で、エラーが発生した場合は、エラー文字列を表示します。この情報は、ログファイルにも書かれます。
エンティティ状態のモニタリング
エンティティの状態モジュールは、RHEV アーキテクチャで事前に定義された値を返します。これは、モニタするエンティティの状態に応じて、値が up, down, error, maintenance, non_operational などの文字列であることを意味します。
警告や障害状態を定義するには、モジュール設定にて正規表現を利用する必要があります。例えば、値が error 、down 、non_operational の時に障害状態とするには、そのモジュールの障害の場合の文字列(Str.) フィールドに、次の正規表現を設定します。
error|down|non_operational
Pandora FMS 4.0 の初期バージョンではこのオプションは利用できませんが、同一の場合の条件を利用して設定することができます。上記の例でアラーとテンプレートを作成するには、次の手順を実施します。
- 優先度が障害のアラートテンプレートを作成し、条件種別(Condition Type) フィールドを 正規表現(Regular expresion) に設定します。
- error|down|non_operational という正規表現をフィールドに入力します。これは、モジュールの値が error 、down 、non_operational のいずれかになった場合にアラートを実行するという意味になります。
- 以降は通常の設定を行います。
テンプレートを定義すると、イベント作成、メールや SMS 送信など、アラートが発生したときの実行アクションを選択することができます。
RHEV アーキテクチャのためのエージェントモジュール
以下に、RHEV アーキテクチャのそれぞれの要素のためのモジュールの詳細について示します。
データセンター
- Status: データセンターの状態
ストレージドメイン
- Available Space: ストレージドメインの空き容量
- Committed Space: ストレージドメインのコミット容量
- Used Space: ストレージドメインの利用容量
- Percent Free Space: ストレージドメインの空き容量率
ネットワーク
- Status: 仮想ネットワークの状態
- STP Status: スパニングツリープロトコルの状態
クラスタ
- Overcommit Percent: クラスタのオーバーコミット率
- Transparent HugePages: Transparent HugePage の状態
- High threshold: ポリシープランニングのための上位閾値
- Low threshold: ポリシープランニングのための下位閾値
- Threshold duration: ポリシープランニングのための閾値期間
ホスト
- Status: ホストの状態
- Buffers size: バッファサイズ
- Cache size: キャッシュサイズ
- Cached swap: キャッシュスワップのためのメモリ量 (バイト単位)
- Free memory: 空きメモリ量 (バイト単位)
- Percent free memory: 空きメモリ率
- Swap cached percent: キャッシュスワップメモリ率
- Swap free: スワップの空き容量 (バイト単位)
- Swap free percent: 空きスワップメモリ率
- Total Memory: このホストのトータルメモリ容量 (バイト単位)
- Total Swap: スワップメモリ容量 (バイト単位)
- Used memory: 利用メモリ量 (バイト単位)
- Used Swap: 利用スワップメモリ量 (バイト単位)
- Nic [x] TX: nic x の送信速度 (バイト/秒) インタフェースごとにモジュールが生成されます。
- Nic [x] RX: nic x の受信速度 (バイト/秒) インタフェースごとにモジュールが生成されます。
- Nic [x] erros TX: nic x の送信エラー数。インタフェースごとにモジュールが生成されます。
- Nic [x] erros RX: nic x の受信エラー数。インタフェースごとにモジュールが生成されます。
- User CPU: user CPU 使用率
- System CPU: system CPU 使用率
- CPU Idle: idle CPU 使用率
- CPU Load: 5分間のロードアベレージ
- KSM CPU: KSM の CPU 使用率
- Active VM: ホスト内の稼働中の仮想マシン数
- Migrating VM: ホスト内でマイグレーション処理中の仮想マシン数
- Total VM: このホストにおける全仮想マシン数
- Fence Status: ホストフェンスの状態
仮想マシン
- Status: 仮想マシンの状態
- Disk [x] read: ディスク x の読み込み速度 (バイト/秒)。ディスクごとにモジュールが生成されます。
- Disk [x] write: ディスク x の書き込み速度 (バイト/秒)。ディスクごとにモジュールが生成されます。
- Disk [x] size: disk x のディスクサイズ。ディスクごとにモジュールが生成されます。
- Disk [x] status: disk x の状態。ディスクごとにモジュールが生成されます。
- Nic [x] TX: nic x の送信速度 (バイト/秒)。nic ごとにモジュールが生成されます。
- Nic [x] RX: nic x の受信速度 (バイト/秒)。nic ごとにモジュールが生成されます。
- Nic [x] erros TX: nic x の送信エラー数。nic ごとにモジュールが生成されます。
- Nic [x] erros RX: nic x の受信エラー数。nic ごとにモジュールが生成されます。
- Installed memory: 設定されたメモリ容量 (バイト単位)
- Percent free memory: 空きメモリ率
- Used memory: 利用メモリ量 (バイト単位)
- Stateless: ステートレス機能の状態
- HA Status: HA 機能の状態
- Total CPU: この仮想マシン全体の CPU 使用率
- Hypervisor CPU: 仮想マシンによって使われている、ハイパーバイザーの CPU 使用率
- Guest CPU: 仮想マシンの CPU 使用率
イベント
- Event [x]: システム内で発生したイベント x の説明。それぞれのエージェント内に、検出されたイベントごとにモジュールが作成されます。
RHEV アーキテクチャの管理と参照
この節では、インストール、設定、および、どのように RHEV View および RHEV Manager 拡張が動作するかを説明します。
RHEV View および RHEV Manager 拡張は、Pandora FMS 4.0.2 以上 でのみ動作します。
自動検出タスクのインストール
カスタム検出タスクの作成は、検出サーバ を参照してください。
RHEV View および RHEV Manager 拡張のインストール
拡張のインストールは、extensions フォルダの中身をコピーするだけです。つぎのようなコマンドで、プラグインを展開したものを Pandora FMS コンソールの enterprise の中へコピーします。
cp -R extensions/* <pandora_console_dir>/enterprise/extensions/
これで、RHEV モニタリング拡張が使えるようになります。
RHEV View 拡張の利用
RHEV View 拡張を利用するには、モニタリング(Monitoring) メニューの中の RHEV View をクリックします。
拡張は、プラグインで検出した RHEV アーキテクチャの全コンポーネントを次のようにマップ表示します。
マップ内には、RHEV アーキテクチャの異なる要素(データセンター、ストレージドメイン、クラスタ、ネットワーク、ホスト、仮想マシン)が表示されます。それぞれの要素はアイコン表示され、それぞれの要素ごとに異なります。アイコン間の関係は、RHEV アーキテクチャの要素間の関係として表示します。この画面では、一目で要素の関係と状態を見ることができます。
拡張には、表示を設定するためのメニューがあります。エンティティを隠したり表示したり、テキストのサイズを変更したり、詳細画像の拡大・縮小ができます。
以下の画像の例では、ネットワーク、ホスト、仮想マシンのエレメントは隠れています。なぜなら、データセンターで、クラスタとストレージドメインの関係の詳細を見たいからです。
RHEV Manager 拡張の利用
RHEV Manager 拡張は、Pandora FMS 内で RHEV 仮想マシンを表示するエージェント操作画面にあります。
この拡張は、curl コマンドを利用します。このコマンドがインストールされ、Pandora FMS コンソールを実行する web サーバプロセスのユーザ権限で利用できる必要があります。
拡張にアクセスするには、エージェントのタブにある Red Hat ロゴのアイコンをクリックします。
拡張では、RHEV 管理コンソールを使わずに仮想マシンを管理(電源 on/off、サスペンド)することができます。拡張は、色で仮想マシンの現在の状態を表示(緑 = 電源on、オレンジ = サスペンド、グレー = 電源off)します。また、状態を選択し、状態変更(Change Status) ボタンをクリックして状態を変更することができます。
仮想マシンを停止するために停止(Stop) 状態を選択すると、拡張は RHEV API に接続しコマンドを送信します。結果、仮想マシンの状態が変化し、選択オプションが次のようになります。
いくつかの状態の間の変更には、いくつかのステップがあります。例えば、停止(Stop) から 開始(Start) への変更です。この場合、拡張はそれぞれのステップで仮想マシンの状態を表示します。停止から開始への変更では、仮想マシンの状態は次のように変化します。
エージェントプラグイン設定
エージェントプラグイン設定は、デフォルトで rhev-plugin.conf という設定ファイル使って行います。
デフォルトでは、エージェントプラグインは全エンティティを選択し、名前と説明をデフォルトの値で全モジュールを作成します。これらのパラメータはすべて設定ファイルを通してカスタマイズできます。
設定ファイル
設定ファイルは、全体の設定と個々の監視の設定の 2つの部分から成ります。
全体の設定の部分では、Configuration という記述から始まり、プラグイン設定に関する情報があります。この部分で設定可能なパラメータは次の通りです。
- module_name: プラグインを実行するエージェントから報告されるモジュール名です。
- server: RHEV API を実行するホスト名です。
- user: API に接続するユーザです。user@domain という書式です。
- pass: API へ接続するパスワードです。
- cert: API 証明書のパスです。
- temporal: テンポラリフォルダです。
- logfile: ログファイル名です。
- transfer_mode: 転送モードです。local または tentacle です。
- tentacle_ip: 情報の送信先の tentacle サーバの IP です。一般的に Pandora サーバと同じマシンです。転送モードに tentacle を利用した場合に利用できます。
- tentacle_port: tentacle サーバのポート番号です。転送モードに tentacle を利用した場合に利用できます。
- tentacle_opts: tentacle サーバの拡張オプションです。転送モードに tentacle を利用した場合に利用できます。
監視設定部分には、いくつかのサブセクションがあります。一つ目は、Reject というトークンがあり、除外する仮想環境のエンティティの名前のリストを作成することができます。エンティティを除外するには、次のように名前のリストを記載する必要があります。
#Dismissed entities Reject mv1 mv_WindowsXP mv_WebServer1 ...
全ホスト、全仮想マシンなど、一つの種類のすべてのエンティティを除外することもできます。それぞれのエンティティのトークンは、all_dc (データセンタ)、all_host (ホスト)、all_network (ネットワーク)、all_storage (ストレージドメイン)、all_cluster (クラスタ)、all_vm (仮想マシン)です。これらのトークンの利用例を以下に示します。
#Dismissed entities Reject all_dc all_host all_network all_storage all_cluster all_vm
2つ目のセクションは、Rename というトークンで定義され、エンティティの名前を変更できます。この機能は、Pandora FMS の同一エージェント内でソフトウエアエージェントと API 情報を結びつけるのにとても便利です。このセクションの設定は、古い名前、新しい名前の順にスペースを入れて次のように記述します。
#Rename entities Rename mv_WebServer1 WebServer1 mv_WindowsXP WindowsXP Test ...
次のサブセクションは、エンティティのモニタリング設定に関するものです。それぞれのエンティティには、それぞれ DataCenter, StorageDomain, Network, Cluster, Host および VM というトークンがあります。各エンティティで、モジュールの有効・無効、警告や障害状態となる最小値や最大値を定義することができます。例を以下に示します。
#VM Modules VM status disabled errors_total_tx name = TX Error Net [%s]; desc = Total error TX net; limits = 60 70 71 100 memory_used name = Used Mem; desc = Memory used by the virtual machine; limits = 256 1024 1025 2048 ...
それぞれの行はモニタリングモジュールに関連していて、次の 2つのオプションがあります。
- <モジュール> disabled: モジュールは、作成されません 。
- <モジュール> name = <名前>; desc = <説明>; limits = <警告の最小値> <警告の最大値> <障害の最小値> <障害の最大値» モジュールは、指定した名前と説明で作成されます。また、警告および障害の最大・最小の閾値を指定します。
設定ファイルの行構造 に注意し、特にモジュール名とモジュールの説明の近くの; 文字 に注意することがとても重要 です。これらの行は、同じではありません 。(; 文字の前のスペースを確認してください)
errors_total_tx name = TX Error Net [%s]; desc = Total error TX net; limits = 60 70 71 100 #OK errors_total_tx name = TX Error Net [%s] ; desc = Total error TX net ; limits = 60 70 71 100 #Wrong
モジュールは、コマンドラインで入力しやすい短い名前で参照されます。フルネームと短い名前の関連付けした表を次の章に示します。
仮想マシンの設定例 (VM セクション) を見てみましょう。
仮想マシンをモニタするには、設定ファイルの VM セクションで、モジュールを有効化・無効化するかの一覧を定義します。status モジュールは無効化されており、errors_total_tx および memory_used モジュールはカスタム値を持っています。リストに無い残りのモジュールは、デフォルトの値で作成されます。この設定で、memory_used モジュールは次の値になります。
- Name: Used Memory
- Description: Memory used by the virtual machine
- Min Warning: 256
- Max Warning: 1024
- Min Critical: 1025
- Max Critical: 2048
ディスクやネットワークインタフェースに関連するモジュールは動的に生成されます。それぞれの要素ごとにモジュールが作成され、次のようにモジュール名は特別な書式になっています。
errors_total_tx name = Errores TX Net [%s]; desc = Errores totales TX de red; limits = 60 70 71 100
この場合、名前は動的に決まる部分があり、% マクロを利用することができます。これはプラグインによりモジュール名で動的に変わるものに置き換えられます。
例えば、errors_total_tx モジュールのデフォルトの名前は次の通りです。
Nic [nic1] errors TX
この設定での名前は次の通りです。
TX Error Net [nic1]
nic1 がモジュール名で動的に決まる部分です。
設定ファイルに関連する全てのエラーはログファイルに出力されます。また、Pandora FMS のプラグインを実行するエージェント内部の非同期モジュールへ送信されます。
それぞれの要素に関連したセクションに加え、設定ファイルにはイベント設定のための共通セクションがあります。このセクションは、EventCodes というトークンで定義され、モニタするすべてのイベントコード一覧を次のように定義します。
EventCodes 30 920 980 509 956
このセクションを定義しないと、イベントモニタリングは動作しません。
複数のソフトウエアエージェントでのモニタリング負荷の分散
設定ファイルを通して、RHEV 仮想環境のモニタリング負荷を分散することができます。
そのためには、モニタするエンティティをエージェント間で分割する必要があります。この例では、次のようなアーキテクチャを想定します。
DC1 | |- Cluster 1.1 |- c1.1mv1 |- c1.1mv2 |- c1.1mv3 |- Cluster 1.2 |- c1.2mv1 |- c1.2mv2 |- c1.2mv3 DC2 | |- Cluster 2.1 |- c2.1mv1 |- c2.1mv2 |- c2.1mv3 |- Cluster 2.2 |- c2.2mv1 |- c2.2mv2 |- c2.2mv3
負荷を分散する方法として、一つのデータセンタをそれぞれ違うエージェントに割り当てます。そのためには、エンティティを除外する機能 (Reject トークン) を利用します。
最初のエージェントはデータセンター DC1 のみをモニタし、DC2 のエンティティは除外します。
Reject DC2 Cluster 2.1 Cluster 2.2 c2.1mv1 c2.1mv2 c2.1mv3 c2.2mv1 c2.2mv2 c2.2mv3
2つ目のソフトウエアエージェントは、データセンター DC2 をモニタし、DC1 は除外します。
Reject DC1 Cluster 1.1 Cluster 1.2 c1.1mv1 c1.1mv2 c1.1mv3 c1.2mv1 c1.2mv2 c1.2mv3
また、クラスタをベースに負荷を分散することもできます。例えば、4つのソフトウエアエージェントがあり、それぞれ異なるクラスタをモニタします。
ソフトウエアエージェント1 ではクラスタ 1.1 をモニタし、他のエンティティを除外します。
Reject DC1 Cluster 1.2 c1.2mv1 c1.2mv2 c1.2mv3 DC2 Cluster 2.1 Cluster 2.2 c2.1mv1 c2.1mv2 c2.1mv3 c2.2mv1 c2.2mv2 c2.2mv3
ソフトウエアエージェント2 ではクラスタ 1.2 をモニタし、他のエンティティを除外します。
Reject DC1 Cluster 1.1 c1.1mv1 c1.1mv2 c1.1mv3 DC2 Cluster 2.1 Cluster 2.2 c2.1mv1 c2.1mv2 c2.1mv3 c2.2mv1 c2.2mv2 c2.2mv3
ソフトウエアエージェント3ではクラスタ 2.1 をモニタし、他のエンティティを除外します。
Reject DC1 Cluster 1.1 Cluster 1.2 c1.1mv1 c1.1mv2 c1.1mv3 c1.2mv1 c1.2mv2 c1.2mv3 DC2 Cluster 2.2 c2.2mv1 c2.2mv2 c2.2mv3
ソフトウエアエージェント4ではクラスタ 2.2 をモニタし、他のエンティティを除外します。
Reject DC1 Cluster 1.1 Cluster 1.2 c1.1mv1 c1.1mv2 c1.1mv3 c1.2mv1 c1.2mv2 c1.2mv3 DC2 Cluster 2.1 c2.1mv1 c2.1mv2 c2.1mv3
エンティティの除外設定はとても柔軟で、それぞれのソフトウエアエージェントで複数のエンティティのモニタリング負荷を分散させることができます。
設定ファイル例
全モジュール無効化の例
#These lines are comments #Plugin configuration parameters Configuration server rhevm.server user user@testdomain pass 12345 cert /home/user/rhevm.cer temporal /tmp logfile /tmp/plugin-rhev.log transfer_mode local tentacle_ip 127.0.0.1 tentacle_port 41121 tentacle_opts #Dismissed entities Reject #Data Center modules DataCenter status disabled #StorageDomain modules StorageDomain available disabled used disabled committed disabled free_percent disabled #Networks modules Network status disabled stp disabled #Clusters modules Cluster overcommit disabled hugepages disabled threshold_low disabled threshold_high disabled threshold_duration disabled #Host Modules Host status disabled vm_active disabled vm_migrating disabled vm_total disabled data_current_rx disabled data_current_tx disabled errors_total_rx disabled errors_total_tx disabled memory_cached disabled memory_total disabled swap_free_percent disabled swap_cached_percent disabled swap_free disabled cpu_current_idle disabled cpu_current_user disabled memory_used disabled ksm_cpu_current disabled memory_free_percent disabled swap_total disabled memory_buffers disabled cpu_current_system disabled cpu_load_avg_5m disabled swap_cached disabled swap_used disabled memory_free disabled fence_status disabled #VM Modules VM status disabled stateless disabled ha disabled cpu_current_guest disabled cpu_current_hypervisor disabled memory_free_percent disabled memory_installed disabled memory_used disabled cpu_current_total disabled data_current_read disabled data_current_write disabled size disabled disk_status disabled data_current_rx disabled data_current_tx disabled errors_total_rx disabled errors_total_tx disabled
モジュール名関係表
データセンター
長い名前 | 短い名前 |
---|---|
Status | status |
ストレージドメイン
長い名前 | 短い名前 |
---|---|
Available Space | available |
Used Space | used |
Committed Space | committed |
Percent Free Space | free_percent |
ネットワーク
長い名前 | 短い名前 |
---|---|
Status | status |
STP Status | stp |
クラスタ
長い名前 | 短い名前 |
---|---|
Overcommit Percent | overcommit |
Transparent HugePages | hugepages |
Low Threshold | threshold_low |
High Threshold | threshold_high |
Threshold duration | threshold_duration |
ホスト
長い名前 | 短い名前 |
---|---|
Status | status |
Active VM | vm_active |
Migrating VM | vm_migrating |
Total VM | vm_total |
Nic [x] RX | data_current_rx |
Nic [x] TX | data_current_tx |
Nic [x] errors RX | errors_total_rx |
Nic [x] errors TX | errors_total_tx |
Cache size | memory_cached |
Total memory | memory_total |
Swap free percent | swap_free_percent |
Swap cached percent | swap_cached_percent |
Swap free | swap_free |
CPU Idle | cpu_current_idle |
User CPU | cpu_current_user |
Used memory | memory_used |
KSM CPU | ksm_cpu_current |
Percent free memory | memory_free_percent |
Total swap | swap_total |
Buffers size | memory_buffers |
System CPU | cpu_current_system |
CPU Load | cpu_load_avg_5m |
Cached swap | swap_cached |
Used swap | swap_used |
Free memory | memory_free |
Fence Status | fence_status |
仮想マシン
長い名前 | 短い名前 |
---|---|
Status | status |
Stateless | stateless |
HA Status | ha |
Guest CPU | cpu_current_guest |
Hypervisor CPU | cpu_current_hypervisor |
Percent free memory | memory_free_percent |
Installed memory | memory_installed |
Used memory | memory_used |
Total CPU | cpu_current_total |
Disk [x] read | data_current_read |
Disk [x] write | data_current_write |
Disk [x] size | size |
Disk [x] status | disk_status |
Nic [x] RX | data_current_rx |
Nic [x] TX | data_current_tx |
Nic [x] errors RX | errors_total_rx |
Nic [x] errors TX | errors_total_tx |
Nutanix
Nutanix ハイパーコンバージドソリューションでは、ネットワーク、ディスク、処理、メモリリソースのすべてを一ヵ所で管理することができます。
Pandora FMS の Nutanix 監視プラグインにより、Nutaix ソリューションの状態を常に監視することができます。
プラグイン操作
Nutanix プラグインは、Perl で書かれたプログラムで、Nutanix PRISM の REST API へ接続します。以下の要素を監視するために必要なメトリックスを取得します。
- Nutanix クラスタ
- ストレージデバイス
- コンテナ
- 仮想マシン
- ホスト
- レプリケーションプロセスの状態
プラグインの必要条件
REST API から情報を取得するためには、以下が必要です。
- ポータルの IPアドレス/FQDN
- API の読み出し権限を持った ユーザ
- ユーザの パスワード
監視結果を Pandora FMS へ反映させるために、以下が必要です。
- ローカルまたは Tentacle での 情報の転送
- ローカルであれば、結果を含む XML ファイルを置くディレクトリが必要です。またディレクトリには書き込み権限が必要です。
- Tentacle を利用する場合は、Pandora サーバの IPアドレスまたは FQDN に Tentacle のポートで接続できる必要があります。tentacle クライアントの場所やオプションの定義も必要です。
プラグインのインストール
プラグインに必要なファイルを モジュールライブラリ からダウンロードします。
Nutanix インフラストラクチャを監視するリモートのコンピュータへファイルを転送し、プラグインファイルを展開します。
tar xvzf pandora_nutanix.tar.gz
プラグイン設定
次のフィールドがあります。
Nutanix API 設定
nx_fqdn
Prism メインサーバのアドレス
nx_port
REST API のポート番号(デフォルトは 9440)
nx_user
REST API の読み出し権限を持ったユーザ
nx_pass
上記ユーザのパスワード
use_https
https を利用する(1)かしないか(0)
nx_rest_version
API バージョン(デフォルトは 'v1')
Nutanix エージェント設定
agent_interval
プラグインで生成されるエージェントの間隔(デフォルトは 300)
agent_group
生成されるエージェントが所属するグループ(Pandora サーバの設定で 'autocreate_group' が無効化されている場合) デフォルトは、Nutanix です。
module_interval
生成されたエージェントのモジュールの間隔(倍率指定で、デフォルトは 1)
module_tags
生成されたエージェントの新規モジュールに関連付けるタグ
module_group
新たなモジュールが所属するグループ
Pandora サーバとの通信設定
mode
データ転送モード “local” または “tentacle”
tentacle_ip
Pandora サーバの IP アドレス。tentacle モードでのみ利用します。
tentacle_port
Tentacle の接続ポート番号
tentacle_opts
Tentacle の拡張オプション
tentacle_client
Tentacle クライアントのパス
temp
テンポラリディレクトリ
local_folder“local” データ転送モード時のディレクトリパス
フィルタ
cluster_monitoring
クラスタ監視の有効化(1)または無効化(0)
storage_monitoring
ストレージデバイス監視の有効化(1)または無効化(0)
container_monitoring
ストレージコンテナ監視の有効化(1)または無効化(0)
vm_monitoring
仮想マシン監視の有効化(1)または無効化(0)
host_monitoring
仮想マシンサーバ(Nutanixノード)監視の有効化(1)または無効化(0)
pd_monitoring
プロテクションドメイン監視の有効化(1)または無効化(0)
カスタマイズ
cluster_agent_header
クラスタタイプデバイスエージェントのエージェント名ヘッダ
storage_agent_header
ストレージデバイスタイプエージェントのエージェント名ヘッダ
host_agent_header
仮想マシンサーバタイプデバイス(Nutanix ノード)エージェントのエージェント名ヘッダ
container_agent_header
ストレージコンテナタイプデバイスエージェントのエージェント名ヘッダ
vm_agent_header
仮想マシンタイプデバイスエージェントのエージェント名ヘッダ
pd_agent_header
プロテクションドメインタイプデバイスエージェントのエージェント名ヘッダ
モジュール生成ルール
vm_stat
仮想マシンを監視するためのモジュール追加集約ルールです。デフォルトは 'hypervisor_cpu_usage_ppm|hypervisor_memory_usage_ppm|.*avg.*' です。メトリックの名前がこのフィールドに示されている正規表現と一致した場合に、異常モジュールを生成します。すべてのメトリックを監視するには、“.*” を追加します。
host_stat
仮想マシンサーバ(Nutanix ノード)を監視するためのモジュールを追加するルールです。デフォルトは、' hypervisor_cpu_usage_ppm|hypervisor_memory_usage_ppm|. *avg*' です。メトリックの名前がこのフィールドに示されている正規表現と一致した場合に、異常モジュールを生成します。すべてのメトリックを監視するには、“.*” を追加します。
pd_stat
プロテクションドメインを監視するためのモジュールを追加するルールです。デフォルトは、'replication_transmitted_bandwidth_kBps|replication_total_transmitted_bytes' です。メトリックの名前がこのフィールドに示されている正規表現と一致した場合に、異常モジュールを生成します。すべてのメトリックを監視するには、“.*” を追加します。
名前変更エンティティ
RENAME aaa TO bbb
エンティティの名前を変更するためのルールで、要素の名前を変更するのに必要な数のディレクティブを定義できます。
エンティティの除外
REJECT aaa
エンティティを監視から除外するルールで、除外したい数のディレクティブを定義できます。
プラグインの実行
プラグインを実行するサーバは、監視のために Pandora サーバおよび Nutanix インフラストラクチャの両方にアクセスできる必要があります。
手動実行:
./pandora_nutanix-linux-x64 pandora_nutanix.conf
/etc/crontab に以下の設定を追加することにより、cron でプラグインを自動実行できます。
- /5 * * * * root /path/to/plugin/pandora_nutanix-linux-x64 /path/to/plugin/pandora_nutanix.conf
プラグインの結果
XenServer
Xen は、ケンブリッジ大学で開発されたオープンソースの仮想環境です。
設計の目標は、すべての機能を備えたオペレーティングシステムのインスタンスを、単純なコンピュータで完全に機能させることです。
Xenは、安全な隔離、リソース管理、サービス品質の保証、仮想マシンのホットマイグレーションを提供します。 オペレーティングシステムは、Xen で実行するための変更を行います(ただし、ユーザアプリケーションとの互換性は維持されます)。 これにより、Xen は特別なハードウェアサポートなしで高性能仮想化を実現します。
インテルは、VT-X Vanderpool アーキテクチャ拡張をサポートするための複数の機能を Xen に提供しました。 この技術により、物理サーバが Intel または AMD の VT 拡張をサポートしていれば、オペレーティングシステムを変更することなく Xen の仮想マシンとして動作することが可能になります。
プラグイン操作
Xen 環境監視のための Pandora FMS プラグインは、Python で書かれています。 必要な情報をすべて取得するには、XenAPI を使用します。 これにより、次のタイプの要素の監視が可能になります。
- Xen 内の仮想化システム
- ストレージリソース
- Xen 自身のサーバ(ホスト)
プラグインに必要なもの
プラグインを実行するシステムには次のものが必要です。
- Python のインストール
- 以下の Python ライブラリ
- XenAPI
- xmltodict
- XenServer API へのアクセス (プラグインを実行するマシンから、XenServer へのポート 443 または 80 での接続許可)
- 利用できる情報が多いため、仮想マシンには Xen Server Tools のインストールを推奨します。
プラグインは、XenServer 6.5 および 7.2 のシステムでテストしています。
プラグインのインストール
Pandora FMS の XenServer プラグインを、モジュールライブラリ からダウンロードします。
実行環境のマシン(Windows または Linux)で、Pandora FMS エージェントまたはシステム cron を使用して実行できるディレクトリにファイルを展開します。
プラグイン設定
Xen 用の Pandora FMS プラグイン設定は以下の通りです。
設定ブロック conf
xen_server_ip
Xen Server の IP/FQDN アドレス
user
Xen API に対してクエリを出せるユーザ
password
ユーザのパスワード
temporal
テンポラリディレクトリ
設定ブロック [PANDORA]
tentacle_client
Tentacle クライアントの実行ファイルの場所
tentacle_ip
Tentacle の接続先 IP アドレス
tentacle_port
Tentacle の接続先ポート
logfile
ログファイルのパス
interval
生成したエージェントの間隔
group
生成したエージェントに割り当てるグループ
設定ブロック [TUNNING]
time_adjustment
プラグインを実行しているコンピュータと Xen server との間で許容可能な時間差を調整するパラメータ。(デフォルト = 10, 秒単位)
scan_vm_ip
プラグインが Xen サーバーの VM の IP を取得するかどうかを定義するパラメータ。XenTools がインストールされた VM の IP のみ取得できます。有効化(scan_vm_ip = true)または、無効化(scan_vm_ip = false)の設定ができます。設定されていない場合は、有効になります。
設定ブロック [RENAME]
xen_element_name=pandora_agent_name
このブロックでは、以下のフォーマットで多くのエントリーを定義できます。XenServer 要素の名前を Pandora で使われるエージェント名に変更することができます。VMs、SR、Xen Server 自身を変更することができ、以下に例を示します。
[RENAME] example-xen-server = Example Xen Server Example Xen Server 2 = example-xen-server-2 example-vm = Example VM Example VM 2 = example-vm-2 example-sr = Example SR Example SR 2 = example-sr-2
名前にスペースが含まれていても、クオートでくくる必要はありません。
プラグインの実行
Pandora FMS エージェントの設定に以下を追加することによって、プラグインの実行ができます。
module_plugin python "<ruta>\xen-plugin.py" "<ruta>\xen-plugin.conf"
システムの cron で設定する場合は、/etc/crontab に以下を追加します。
- /5 * * * * root python “<ruta>\xen-plugin.py” “<ruta>\xen-plugin.conf” > /dev/null 2>&1
プラグインを手動実行すると、出力は以下のようになります。
python "<ruta>\xen-plugin.py" "<ruta>\xen-plugin.conf" <module> <name><![CDATA[XenServer Plugin]]></name> <type><![CDATA[async_string]]></type> <description><![CDATA[Result of XenServer Plugin execution]]></description> <data><![CDATA[OK]]></data> </module>
プラグインの結果
OpenNebula
OpenNebula は、分散型および異機種のデータセンターに焦点を当てたクラウドコンピューティングのプラットフォームであり、インフラストラクチャのプライベート、パブリック、およびハイブリッドのインプリメンテーションをサービス(IaaS)クラウドとして構築する仮想インフラストラクチャを提供します。
OpenNebula は、Apache 2 ライセンスのオープンソースソフトウエアです。
プラグイン操作
OpenNebula 環境を監視するための Pandora FMS プラグインは Perl で書かれています。OpenNebula サーバのローカルで実行し、OpenNebula 自身の管理コマンドを使って必要な情報を取得します。
- クラスタ
- ホスト
- 仮想マシン
- ストレージリソース
プラグインに必要なもの
プラグインの実行には以下が必要です。
- Perl のインストール
- 以下のコマンドの実行権限
- onehost
- onecluster
- onedatastore
プラグインの実行は OpenNebula システム 5.X.X でテストしています。
プラグインのインストール
OpenNebula 用の Pandora FMS プラグインは、モジュールライブラリ からダウンロードします。
Pandora FMS エージェントまたはシステム cron を使用して実行できるディレクトリにファイルを展開します。
unzip pandora_OpenNebula.zip
プラグインの設定
OpenNebula 用の Pandora FMS プラグインには以下の設定があります。
Pandora サーバとの通信設定
mode
データ転送モード。“local” または “tentacle” です。
tentacle_ip
Pandora サーバの IP アドレス。tentacle モードの場合のみ。
tentacle_port
Tentacle サーバのポート番号
tentacle_opts
Tentacle の追加オプション
tentacle_client
Tentacle クライアントのパス
temp
テンポラリディレクトリ
local_folder
データ転送モードが “local” の場合のパス
エージェント設定
agent_interval
エージェント間隔。デフォルトは 300。
agent_group
エージェントグループ。デフォルトは OpenNebula。
モジュールカスタマイズ
module_group
モジュールグループ。デフォルトは、OpenNebula。
module_interval
モジュール間隔(倍率)。デフォルトは 1
module_tags
モジュールのタグ
名前のカスタマイズ
cluster_agent_header
クラスタタイプデバイスエージェントのエージェント名ヘッダ
host_agent_header
仮想マシンサーバタイプデバイスエージェントのエージェント名ヘッダ
storage_agent_header
ストレージデバイスタイプエージェントのエージェント名ヘッダ
vm_agent_header
仮想マシンタイプデバイスエージェントのエージェント名ヘッダ
フィルタ
cluster_monitoring
クラスタ監視の有効化(1)または無効化(0)
host_monitoring
仮想マシンサーバ監視の有効化(1)または無効化(0)
storage_monitoring
ストレージデバイス監視の有効化(1)または無効化(0)
vm_monitoring
仮想マシン監視の有効化(1)または無効化(0)
エンティティのリネーム
RENAME aaa TO bbb
エンティティのリネームルールで、必要なだけ定義することができます。
エンティティの除外
REJECT aaa
監視対象外エンティティのルールで、必要なだけ定義することができます。
プラグインの実行
システム cron で設定するには、次の行を /etc/crontab へ追加します。
- /5 * * * * root “<ruta>/pandora_opennebula” “<ruta>/pandora_opennebula.conf” > /dev/null 2>&1
プラグインを手動実行すると、出力は次のようになります。
[root@valhalla ~]# ./pandora_opennebula pandora_opennebula.conf [root@valhalla ~]# echo $? 0
プラグインの実行結果
OpenNebula プラグインで生成されるモジュール一覧です。
ホスト:
- Available CPU
- Available Disk
- Available memory
- Error Error reported by OpenNebula
- State
- Total zombies
- VMs running
ストレージデバイス:
- Disk Free %
仮想マシン:
- Assigned CPU
- Assigned Memory
- Network RX
- Network TX
- State
- Time running
OpenNebula アーキテクチャマップの例:
IBM HMC
このプラグインは、HMC ハードウエア管理コンソールを通して IBM AIX 仮想環境を監視できます。 このプラグインは、HMC システムによって AIX 環境に作成されたすべての論理パーティションから情報を収集します。各管理サーバ、論理パーティション、仮想 IO サーバごとに一つのエージェントを作成します。
SSH で情報を収集するために、プラグインは以下の 3つのモードを使えます。
- スクリプト ssh_launcher.sh の利用をもとにしたもの
- Net::SSH::Perl ライブラリをもとにしたもの
- Net::SSH::Expect ライブラリをもとにしたもの
キャプチャされた情報を補完するために、REST API に対してもクエリが実行されます。(デフォルトは https://fqdn:12443/rest/api/{root_element} です。)
必要条件
監視に必要なパラメータは次の通りです。
- HMC システムの認証に必要なユーザ名(読み出し専用)
- ユーザは REST API への接続権限および、HMC シェルへログインし(少なくとも)次のコマンドを実行する権限が必要です。
- lssyscfg
- lshwres
- ユーザのパスワード
- HMC の場所(FQDN/IP) (myhmc.mydomain など)
- HMC REST API のベース URL (https://myhmc.mydomain:12443 など)
プラグインにより生成されるモジュール
プラグインによって監視されるパラメータは次の通りです。(エレメントタイプでグループ化されます)
- Current logical partitions 展開されている現在の論理パーティション
- Max logical partitions 最大論理パーティション数
- Max memory available 未使用メモリ
- Max memory installed 最大搭載メモリ
- Proc pool DefaultPool current proc units
- Proc pool DefaultPool max proc units
- Proc pool DevelopmentPool current proc units
- Proc pool DevelopmentPool max proc units
- Proc pool ProductionPool current proc units
- Proc pool ProductionPool max proc units
- Proc pool TestPool current proc units
- Proc pool TestPool max proc units
- Proc pool VIOPool current proc units
- Proc pool VIOPool max proc units
- Processor pools configured 設定されているプロセッサプール
- Processor units available 未使用プロセッサユニット
- Processor units installed 搭載されているプロセッサユニット
- State 管理システムの状態
- UUID HMC API を照会するために使用されます
- Virtual proc units max 論理パーティションの最大仮想プロセッサユニット
LPAR:
- Auto start 自動起動設定の論理パーティション
- LPAR type 論理パーティションタイプ
- LPAR UUID HMC API を照会するために使用されます
- Max memory 最大メモリ
- Max memory current 未使用メモリ
- Processor units available 未使用プロセッサユニット
- Processor units current 搭載プロセッサユニット
- RMC IP address RMC IP アドレス
- RMC state LPAR の RMC の状態
- State 論理パーティションの状態
- Virtual proc units この LPAR に割り当てられた仮想プロセッサユニット
Virtual IO:
- Auto start 自動起動設定の論理パーティション
- LPAR type 論理パーティションタイプ
- LPAR UUID HMC API を照会するために使用されます
- Max memory 最大メモリ
- Max memory current 未使用メモリ
- Processor units available 未使用プロセッサユニット
- Processor units current 搭載プロセッサユニット
- RMC IP address RMC IP アドレス
- RMC state LPAR の RMC の状態
- State 論理パーティションの状態
- Virtual proc units この LPAR へ割り当てられている仮想プロセッサユニット
プラグイン設定
プラグインのパラメータは次の通りです。(エレメントタイプごとにグループ化)
Pandora サーバとの通信設定
mode
データ転送モード。“local” または “tentacle”
tentacle_ip
Pandora サーバの IP アドレス。tentacle モードの場合のみ利用。
tentacle_port
Tentacle サーバのポート
tentacle_opts
Tentacle の追加パラメータ
tentacle_client
Tentacle クライアントのパス
temp
テンポラリディレクトリ
local_folder
データ転送モードが “local” の場合のパス
HMC へのアクセス設定
hmc_host
HMC の IP または FQDN
hmc_user
読み出し権限のユーザ
hmc_pass
パスワード
as_agent_plugin
Pandora FMS エージェントで実行する場合(as_agent_plugin = 1)、プラグインの出力は XML フォーマットで返されます。システムの cron で実行するかまたは、サーバプラグインとして実行する場合(as_agent_plugin = 0)は、標準出力に状態が返されます。
エージェント設定
agent_name
オプション。親エージェントの名前を設定します。デフォルトは 'hostname' です。
agent_interval
エージェントの間隔。デフォルトは 300。
agent_group
エージェントグループ。デフォルトは IBM。
モジュールカスタマイズ
module_group
モジュールグループ。デフォルトは IBM。
module_interval
モジュールの間隔(倍率)。デフォルトは 1。
module_tags
モジュールのタグ
その他エンティティ
名前変更エンティティ。rename というブロックを使います。
rename MyLPAR_NAME TO my new name MyLPAR_NAME2 TO my second new name rename_end
プラグインの実行
IBM AIX システムを HMC を通して監視するための Pandora プラグインは次のように展開しますj。
as_agent_plugin パラメータを 1 に設定した場合(エージェントプラグインとしての実行):
module_plugin /usr/bin/perl pandora_hmc.pl pandora_hmc.conf
as_agent_plugin パラメータを 0 に設定した場合(サーバプラグインとしての実行):
# /etc/crontab */5 * * * * root /usr/bin/perl /root/hmc/pandora_hmc.pl /root/vmware/pandora_hmc .conf
HPVM
Hewlett-Packard が提供する仮想化で、HP-UX を実行する Itanium サーバ上で複数の仮想マシンを同時に実行することができます。サーバに最適化された製品です。
プラグイン設定
このプラグインは、HPVM 仮想化サーバを監視できます。エージェントプラグインとして起動し、監視対象システム内に起動している各仮想マシンごとに、エージェントを生成します。
情報を収集するためにローカルコマンドを利用します。
プラグインに必要なもの
- 監視対象のいコンピュータへの Pandora FMS エージェントのインストール
- プラグインの実行権限を持ったユーザ
- ユーザは、以下のように hpvvmstatus コマンドを実行する権限が必要です
- hpvmstatus
- hpvmstatus -X
- hpvmstatus -r -X
プラグインのインストール
プラグイン設定
HPVM 用の Pandora FMS プラグインの設定は以下の通りです。
Pandora サーバとの通信設定
mode
データ転送モード。“local” または “tentacle”
tentacle_ip
Pandora サーバの IP アドレス。データ転送モードが tentacle の場合のみ。
tentacle_port
Tentacle サーバのポート
tentacle_opts
Tentacle の拡張オプション
tentacle_client
Tentacle クライアントのパス
temp
テンポラリディレクトリ
local_folder
データ転送モードが “local” の場合のパス
エージェント設定
agent_name
オプション。エージェント名を設定します。デフォルトは 'hostname' です。
agent_interval
エージェント間隔。デフォルトは 300。
agent_group
エージェントグループ。デフォルトは HPVM。
モジュールカスタマイズ
module_group
モジュールグループ。
module_interval
モジュールの間隔(倍率)。デフォルトは 1。
module_tags
モジュールのタグ
プラグインの実行
Pandora FMS エージェントからのプラグイン実行では、エージェント設定ファイルに次の設定をします。
module_plugin /usr/bin/perl pandora_hpvm.pl pandora_hpvm.conf
手動でテストをするには、プラグインを設定し次のように起動します。
perl pandora_hpvm.pl pandora_hpvm.conf
プラグインの実行結果
プラグインで生成されるモジュールの一覧を要素ごとに示します。
サーバーエージェント (プラグインを起動するユーザ)
- Available VMs
- HPVM Plugin HPVM プラグイン実行ステータス
- HPVM Service hpvmctrld の稼働状態 (X インスタンス)
- HPVM Service CPU usage hpvmctrld の CPU 利用率 (X インスタンス)
- HPVM Service RAM usage hpvmctrld のメモリ利用率 (X インスタンス)
- hpvmapp hpvmapp の稼働状態 (X インスタンス)
- hpvmapp CPU usage hpvmapp の CPU 利用率 (X インスタンス)
- hpvmapp RAM usage hpvmapp のメモリ使用率 (X インスタンス)
仮想マシン
- boot_type
- console_type
- CPU usage
- device_number
- direct_io_number
- distributed
- effective_serverid
- guest_type
- Host RAM available
- Host RAM free
- local_id
- memory total
- model_name
- networks_number
- run_pid
- run_serverid
- serial_number
- uuid
- vcpu_number
- vm_condition
- vm_config_label
- vm_config_version
- vm_state
- vm_version
- vm_version_label