ICINGA2 + Check WMI Plus でWindowsホストの監視(2)

(1)で、Icinga Web 2, Check WMI Plus のセットアップが完了しましたので、実際にWindowsのホストを監視する設定を行っていきます。

Icinga Directorでの設定は、DeployをすることでIcingaのコンフィグに反映します。エラーがある場合はその際に分かりますので、Deploymentsメニューから、途中途中でDeployしておくと良いと思います。


  1. Command Templateの作成

    Plugin Check Command用のCommand Templateを作成します。

    コマンドとなるスクリプトのファイルは check_wmi_plus.pl ですので、Commandタブはこちらのようになります。

    Argumentsタブで、引数を設定します。
    この中で、固定の値になる --inidir, --inifile は直接記述してしまいます。それ以外はすべて1.で作成したData Field変数です。


  2. Commandの作成

    2.で作成したテンプレートを使用して、Commandを作成します。

  3. Service Templateの作成

    3.で作成したCommandを使用して、Service Templateを作成します。

    Fieldsタブで、check_wmi_plus.pl の引数を追加していくと、上のように引数が表示されます。サービスによって引数の有無が違うので、Mandatoryかどうかは、必要に応じて設定します。

  4. Service Ruleの作成
    監視したい項目ごとに、Service Ruleを作成していきます。

    それぞれしたの画面のような設定になっています。
    このService Ruleの場合、

    host.vars.OS_Type = Windows
    host.vars.AD = True

    のときに自動的に監視項目となるようにしています。この変数は後述するHostの中で設定します。

    Custom Propertiesは、こちらの情報が参考になると思います。

    Check WMI Plus - Can you show me some example command lines?


  5. Host Templateの作成
    Host Templateを作成します。

    Fieldsタブで、こちらのように3つの変数を追加しています。
    それぞれ、下記のような目的で使用しています。

    • host_address
    • OS_Type
      • Windowsホストかどうか識別してService Ruleを適用するため。上の画面で、Windows という値を設定しています。
    • wmi_authfile_path
      • ホストの認証情報を書いたファイルを指定するため

  6. Hostの作成

    最後に、監視したいホストを作成します。
    ホストテンプレートで作成したhost_address, wmi_authfile_pathを指定しています。

    わざわざhost_addressを指定している理由は、Icingaサーバが監視したいホストのアドレスを解決できない場合、WMIクエリが失敗してしまうためです。

    wmi_authfile_pathは、ホストにより認証情報が異なることがあるため、あらかじめファイルを必要に応じ用意しておき、ホストごとに指定しています。同じ認証情報しか使用しない場合は不要です。

これでひととおりWindowsホストを監視するための設定が出来ました。