ニフクラ ブログ

ニフクラやクラウドの技術について、エンジニアが語るブログです。

Zabbixでニフティクラウドを監視する(Windowsホスト監視編)

前回はニフティクラウドにLinuxのサーバーを用意し、ZabbixにLinuxホストとして監視登録する手順を解説しました。

今回はWindowsホストを監視登録する手順と、Zabbixの特徴的な機能を紹介します。

Windowsホストを準備

監視対象となるWindowsホストを作成します。

OSはWindows Server 2012 R2、ネットワーク設定でグローバルに付け替えIPアドレスを指定して、Windowsホストを作成します。

サーバー起動後、RDPで接続し、ログオンします。

Windowsの基本設定

作成直後のWindowsサーバーはいくつか設定が不足しているので、Zabbixエージェントをインストールする前に設定を行っておきます。

DNSを設定

Windowsサーバーはデフォルトの状態では名前解決に参照するDNSが設定されていないので、設定しておきます。

デフォルトのネットワーク状態では、グローバルとプライベートに1つずつネットワークインターフェースが接続されています。Windowsから見ると「vmxnet3 Ethernet Adapter #3」がグローバル側に、「vmxnet3 Ethernet Adapter」がプライベート側に接続されています。分かりやすく名前を変えておくとよいでしょう。

例では、グローバル側のネットワークインターフェースにDNSとして8.8.8.8と8.8.8.9を設定しています。

windows_dns

ネットワーク接続テストを兼ねて、このタイミングでWindows Updateを実行してアップデートを適用しておくとよいでしょう。

設定編集用テキストエディタのインストール

Zabbixエージェントの設定を修正する際に、改行コードがLFになっているため、「メモ帳」が使用できません。あらかじめ、改行コードがLFでも使用可能なテキストエディタをインストールしておきます。

今回は「サクラエディタ」をインストールしておきました。

Windows用Zabbixエージェントのインストール

Windows用Zabbixエージェントをダウンロードし、インストールします。

Windows用Zabbixエージェントのダウンロード

Windows用ZabbixエージェントはZabbix社のダウンロードページからダウンロードできます。「コンパイル済みZabbixエージェント」から、Zabbix 3.0 LTSパッケージの「Windows (全バージョン)」をダウンロードします。

Windows用Zabbixエージェントのインストール

Windows版のZabbixエージェントにはインストーラーが無い(そもそもファイル数がすごく少ない)ので、フォルダを作成して、ダウンロードしたZIPファイルから展開したファイルをコピーします。 インストールの手順は以下の通りです。

  1. フォルダの作成
  2. ZIPファイルを展開
  3. ファイルのコピー
  4. Zabbixエージェントの設定を修正
  5. Zabbixエージェントサービスの登録
  6. Zabbixエージェントサービスの起動
  7. Windowsファイアーウォールの設定

1.フォルダの作成

適当なフォルダを作成します。 ここではC:\Program Files\フォルダ内に、Zabbix Agentフォルダを作成しました。

2.ZIPファイルを展開

ダウンロードしたZIPファイルを適当なフォルダ内に展開しておきます。

3.ファイルのコピー

ZIPファイルから展開した以下のファイルを、作成したZabbix Agentフォルダ内にコピーします。

展開したフォルダ\bin\win64\フォルダ内の以下の3つのファイル

  • zabbix_agentd.exe
  • zabbix_get.exe
  • zabbix_sender.exe

展開したフォルダ\conf\フォルダ内の以下の設定ファイル

  • zabbix_agentd.win.conf

windows_agent

4.Zabbixエージェントの設定を修正

Zabbixエージェントの設定ファイルzabbix_agentd.win.confを修正します。

設定項目 設定値
SourceIP Windowsホストの付け替えIPアドレス
EnableRemoteCommands 1(お好みで設定)
LogRemoteCommands 1(お好みで設定)
Server Zabbixサーバーの付け替えIPアドレス
ServerActive Zabbixサーバーの付け替えIPアドレス
Hostname WindowsHost(ホスト登録時に同じ名前で登録が必要)

5.Zabbixエージェントサービスの登録

ZabbixエージェントをサービスとしてOSに登録します。

まず、コマンドプロンプトを管理者として起動します。

  1. 「スタート」画面を呼び出す
  2. 画面左下の「↓」(丸に下向き矢印)をクリックして、「アプリ」画面を呼び出す
  3. 右上の検索ボックスに「cmd」と入力
  4. 「コマンド プロンプト」のアイコンを右クリック
  5. 「管理者として実行」をクリック
  6. 確認ダイアログが表示されるので、「はい(Y)」ボタンをクリック
  7. 「管理者: コマンド プロンプト」でウインドウが開くのを確認

cmd_find

以下のようにコマンドを実行して、ZabbixエージェントをサービスとしてOSに登録します。

cd C:\Program Files\Zabbix Agent
zabbix_agentd.exe --config zabbix_agentd.win.conf --install

以下のように表示されれば登録は成功です。

zabbix_agentd.exe [xxxx]: service [Zabbix Agent] installed successfully
zabbix_agentd.exe [xxxx]: event source [Zabbix Agent] installed successfully

6.Zabbixエージェントサービスの起動

Zabbixエージェントのサービスはまだ起動していないので、サービスを起動します。

  1. 「サーバーマネージャー」の「ローカル サーバー」をクリック
  2. 「サービス」で「Zabbix」と入力して検索
  3. 「Zabbix Agent」を右クリックして、「サービスの開始」を選択
  4. Zabbix Agentサービスの状態が「実行中」になるのを確認

service

7.Windowsファイアーウォールの設定

Windowsファイアーウォールの設定を変更して、外部からZabbixエージェントに接続できるようにします。

方法は以下のいずれかを実行してください。

  • ポート番号10050番へのアクセスを許可する
  • アプリケーションを選択してアクセスを許可する

ここでは、先ほどインストールしたC:\Program Files\Zabbix Agent\zabbix_agentd.exeに対して、外部からのアクセスを許可するように設定しました。

windows_firewall

Windowsホストの登録

ZabbixのWeb管理画面にログインし、Windowsホストを登録します。

  1. 「設定」→「ホスト」を選択
  2. 「ホストの作成」をクリック
  3. 以下の項目を設定

設定項目 設定値
ホスト名 WindowsHost(zabbix_agentd.win.confでHostnameに指定した名前と同じ名前を指定)
表示名 Web管理画面に表示される名前。ホスト名と同じでよい
新規グループ作成 「Windows servers」を入力
エージェントのインターフェース Windowsホストの付け替えIPアドレスを指定

winhost_regist

テンプレートの紐付けもしておきます。 テンプレートを紐付けしておくと、自動的に監視項目などが設定されます。

  1. 「テンプレート」タブをクリック
  2. 「新規テンプレートをリンク」に「Windows」と入力して検索
  3. 「Template OS Windows」を選択
  4. 「追加」リンクをクリック(間違えて下の「追加」ボタンを押さないように注意)
  5. 「テンプレートとのリンク」に「Template OS Windows」が追加される
  6. 「追加」ボタンをクリックして、ホスト登録を完了
  7. ホストが登録されたことを確認します。

win_template

障害発生時のメール通知のテスト

Windowsホストでも障害発生時に通知メールが送信されるかテストします。 監視対象であるWindowsホストのZabbixエージェントを停止して、擬似的に障害を発生させます。

  1. サービス起動時同様、Zabbix Agentサービスを検索
  2. 「Zabbix Agent」を右クリックし、「サービスの停止」を選択

5分ほど待って、メールが届くことを確認します。

また、ZabbixのWeb画面でダッシュボードを選択すると、障害発生を検知していることが分かります。

dashboard

監視情報を確認

Zabbixサーバーは定期的にZabbixエージェントに接続し、各種情報を取得、蓄積しています。取得する情報はホスト登録する際に紐付けたテンプレートで定義されています。

ここでは、Windowsホストの性能に関する情報を確認してみましょう。

最新データを表示

登録したホストの監視項目についての情報は「最新データ」画面で確認できます。

  1. ZabbixのWeb管理画面を表示
  2. 「監視データ」→「最新データ」を選択
  3. 「ホストグループ」に「Windows servers」を選択
  4. 「アプリケーション」に「Performance」を選択
  5. 「フィルター」ボタンをクリック

Windowsホストから取得した性能情報が確認できます。ただし、表示されているのは最新の値のみなので、蓄積された情報はグラフで確認します。

グラフを表示

最新データからグラフ表示に変更します。

  1. 確認したいアイテムの右にある「グラフ」をクリック
  2. 直近1時間の性能情報がグラフ表示
  3. 「ズーム」で表示する範囲を変更

例では、朝の8時頃に頻繁にファイル書き込みが発生していることが分かります。

windows_graph

グラフフォントを変更する

デフォルトでは、グラフ下部の表示が文字化けしています。 zabbix-web-japaneseパッケージをインストールすれば、文字化けは解消できます。

yum install zabbix-web-japanese -y

フォントの設定は即時反映されます。

好みのフォントを使いたい場合には

zabbix-web-japaneseパッケージはVLフォントを使用していますが、ほかのフォントを使いたい場合には、Zabbixサーバーに日本語フォントをインストールし、Zabbixサーバーがグラフ表示に使用するようにシンボリックリンクを作成すれば、フォントを変更できます。

  1. ZabbixサーバーにSSHでログイン
  2. 日本語フォントをインストール
  3. シンボリックリンクを作成

yum install ipa-pgothic-fonts -y
mv /usr/share/zabbix/fonts/graphfont.ttf /usr/share/zabbix/fonts/graphfont.ttf.bak
ln -s /usr/share/fonts/ipa-pgothic/ipagp.ttf /usr/share/zabbix/fonts/graphfont.ttf

グラフを新規追加

Template OS Windowsテンプレートはグラフの種類が少ないので、グラフを新規に追加してみます。上で確認したディスクの性能に関するグラフを追加してみます。

テンプレートにグラフを新規追加

  1. ZabbixのWeb管理画面を表示
  2. 「設定」→「テンプレート」を選択
  3. 「Template OS Windows」の「グラフ」をクリック
  4. 右上の「グラフの作成」ボタンをクリック
  5. 「名前」に「Disk load」と入力
  6. 「アイテム」の「追加」をクリック
  7. 「Average disk read queue length」、「Average disk write queue length」、「File read bytes per second」、「File 1. write bytes per second」をチェックし、「選択」ボタンをクリック
  8. 「追加ボタン」をクリック

template_graph

グラフを確認

テンプレートに定義されているグラフは簡単に呼び出せます。

  1. 「監視データ」→「グラフ」を選択
  2. 「グループ」で「Windows servers」を選択
  3. 「グラフ」で「Disk load」を選択

表示されたグラフ上を範囲選択すると、特定の時間に表示を絞り込むことができます。

最後に、Zabbixには今回の記事で紹介しきれなかったさまざまな機能が備わっています。Zabbix 3.0はZabbix 2.xとそれほど大きく変わっていませんので、Zabbix 2.xに対応した情報も参考になります。構築した環境を利用していろいろと試してみてください。