目次 表示
WMI プロキシホストの標準的な方法は、Nagios リソースマクロ "USER21" が WMIプロキシサーバの IP アドレスに割り当てられることを基にして導入されています。標準の WMIチェックコマンドは、- H ポジションにあるこのマクロ名でコード化されているので、check_nrpe コマンドはそのプロキシに vbscript チェックを実行させるためリクエストを送ります。残りの WMI コマンドの中で、 -c 引数には(WMIプロキシから)実行させる vbscript チェックを識別する引数が続き、-a 引数は vbscript に引き渡されるパラメータのリスト、一般的には、要求されるターゲットホストの IP、パフォーマンスカウンター、インスタンスおよびチェックされるしきい値を示します。
-H USER21マクロ内の WMI プロキシのアドレス
-c プロキシ上で実行される WMI チェックの vbscript
-a WMI チェックの vbscript に渡される引数 xy(プロキシによって問い合わされるホストの IPアドレス、パフォーマンスカウンタ、 インスタンス、 しきい値の値)
ここでの制限事項は、1台より多くのプロキシサーバは、簡単にはサポートできないということです。新しいWMI プロキシの各々は、WMI プロキシの IP アドレスのために割り当てられる追加の USERX マクロを持ち、さらに、USERX マクロが影響するすべてのチェックコマンド、サービスとチェックコマンドを使うプロファイルを複製し、結果として多くの追加オブジェクトが構成設定し、保守されなければなりません。
GroundWork Monitor の管理者は、任意のホストの集合に適用するチェックコマンドと、サービスの関連を構築するための Monarch 内の Group(グループ)オプションを使用することができます。重要な概念は、追加のマクロの集合がNagiosのリソースマクロと別であることです。これらグループマクロは、Configuration(コンフィギュレーション)の Preflight(プリフライト)やCommit(コミット) が実行される時点で翻訳されますので、各グループマクロの値は、そのグループの関連で使用されるであろうどのようなコマンドやサービスにでも置換されます。グループマクロは、Nagiosの構築物ではないので、構成ファイルの中に引数として引き渡す必要があります(もともとの枠組みではNagiosリソースマクロを使っていました)。この方法で、コマンドは、もともと $USER21$ を置いた場所の ARG として引き渡されるグループマクロ %PROXY% を盛り込むことができます。
あるグループ定義の中で、そのグループマクロ %PROXY% がホスト集合のための WMI プロキシに適当な IP アドレス 10.1.1.1 を割り当てられます。それらのホストは、また、同じグループに関連付けられ、プリフライトやコミット時、 Monarch はそれらのホストだけのためのコマンドやサービスチェック内で値 10.1.1.1 を置き換えます。同じメカニズムによって、二番目のグループ定義は異なるIPアドレス、たとえば、10.2.1.1 をグループマクロ %PROXY% に割り当てます。二番目のグループに関連付けられた異なるホストの集合は、%PROXY% があるところで置換された、この 10.2.1.1 の値を受け取ります。
この方法では、ひとつのコマンドの集合は Nagios マクロを使用せず、WMI プロキシのIP アドレスのための ARG 値を引き渡すだけです。これらのコマンドはひとつのサービスチェックの集合の中で使われ、直接、あるいはサービスプロファイルを通じて、順々に複数のホスト集合に割り当てられます。Monarch がNagios構成ファイルを作成するときに、そのグループマクロは、その値を与えられ、これが、しきい値やディスク名などと一緒にに引数として組み込まれます。管理者は、通常、各WMIプロキシのためのホストグループを作成し、しかるべきホストグループにホストを位置づけます。下記のWMIサービスプロファイルは、バージョン 5.3 で提供され、プロキシのIPアドレスの割り当てのために Monarch のグループを使うやめに変更されています。
service-profile-wmi-citrix.xml
service-profile-wmi-dc.xml
service-profile-wmi-dns.xml
service-profile-wmi-exchange.xml
service-profile-wmi-exhange-virus,xml
service-profile-wmi-ftp.xml
service-profile-wmi-http.xml
service-profile-wmi-https.xml
service-profile-wmi-iis.xml
service-profile-wmi-imap.xml
service-profile-wmi-ldap.xml
service-profile-wmi-mssql.xml
service-profile-wmi-pop3.xml
service-profile-wmi-proxy.xml
service-profile-wmi-smtp.xml
service-profile-wmi-windows.xml
check_nrpe –H $ARG1$ -c get_cpu –a $HOSTADDRESS$ $ARG2$ $ARG3$
check_wmi_cpu –H $ARG1$ -c get_cpu –a $HOSTADDRESS$ $ARG2$ $ARG3$
check_wmi_cpu!%PROXY%!_Total!80,90
WMIベースのコマンドを変更し、USER21 マクロの使用箇所を $ARG1$で置き換えます。
すべての引数の番号付けを、一貫した数値 1、2、3 で調整します。通常、これは各引数の数字は1ずつ増えることを意味します(すべての場合に USER21 が ARG1 になったので、その前の ARG1 は必ず ARG2 となり、以下同様です)
WMI ベースの各サービスを変更し、コマンドラインが最初の引数位置への値 %PROXY% 追加を反映させます。
Apply Hosts 機能を使って、変更されたサービスチェックをそれを使用するすべてのホストに配布します。
プリフライト構成ファイルの検査で %PROXY% がまだ残っていたら、Replace Existing service properties(既存サービス属性差し替え)ボックスをチェックすることが必要かもしれません;その場合、手動リセットでのしきい値の上書きが必要になるでしょう。
WMIプロキシサーバのドメイン各々について、ホストを束ねるホストグループを作ります。
ホストをしかるべきホストグループに割り当てます。
macro(マクロ)セクションの中で、 PROXY マクロを作ってダミーの値を割り当てます。
使用される最初の WMIプロキシのためのグループを作成します。
このグループのホストグループでホストを割り当てます。
このグループの macro(マクロ)セクションの中で PROXY マクロを選んで、それをこのグループに追加します。
このグループのWMIプロキシサーバの、IPアドレスの値を変更します。
Save(保存)を選びます。
各 WMI プロキシの集合についてグループセクションのステップ1から5を繰り返します。
Pre Flight(プリフライト)を実施し、エラーがないこと(no errorsの表示)を確認します。
構成ファイルを調べて、すべての場合に PROXY マクロが置換されているかを確認します。
Commit(コミット)を実行します。
Configuration(コンフィギュレーション)の Pre Flight(プリフライト)機能を使い、それが終わったら、サーバに Linux のシェルを使ってログインして /usr/local/groundwork/core/monarch/workspace ディレクトリに移動します。 services.cfg ファイルを確認し、置換されていないマクロ"この例では PROXY"を探します。もし見つけたら、その誤りは、Group(グループ)の機能を使ってそのホストがホストグループにアサインされていないか、マクロがそのグループに追加されていないか値が割り当てられていません。
注意:
Service Names(サービス名)への変更(特に既存システム内の)は、Apply to Hosts(ホストへの適用)機能が実行されない限り、すでに割り当てられたそのホストHostsへは波及されません。
Group(グループ)機能の中では、Build Instance(インスタンス構築)やグループの下のPre Flight(プリフライト)機能を実行する必要はありません。それはエラーを引き起こし、何の影響も及ぼしません。これらの機能は、複数のGroundWork/Nagiosに対してのみ適用可能です。
Group(グループ)の下のMacros(マクロ)オプションは、Assign Label(ラベル割り当て)チェックボックスをチェックしません。この機能はWMIプロキシのツール使用では有効でなく、エラーとなります。
グループとホストグループの名前をつける上で、分かりやすい名前表現を使ってください。もしあるホスト集合のためのWMIプロキシが、たとえば dmz-monitor-wmi の場合、そのグループ名は同じで、そのWMIサーバで監視するすべてのホストを含むホストグループの名前も同じとします。WMI プロキシサーバは dmz-monitor-proxy 、ホストグループは dmz-monitor-proxy、グループは dmz-monitor-proxy