Windows用ZabbixエージェントをCドライブ直下以外のconfを使用してインストールする


概要

Windows Server 2012 R2にZabbixエージェントをインストールして、Zabbixにホスト追加をします。

confファイルはデフォルトインストールの場合、Cドライブ直下のzabbix_agentd.confが使用されるようですが、Cドライブ直下に置きたく無かったのでインストール時にconfファイルの場所を指定してインストールをしてみます。

エージェントのインストールと合わせて、ファイアーウォールで TCP 10050ポートを空ける必要があります。
(ついつい忘れてしまう)

Zabbix自体、インストールから操作まで初めてです。

環境

  • IPアドレス

    • [Zabbixサーバー(Linux)]:192.168.0.1
    • [Zabbixエージェント(Windows)]:192.168.0.20
  • クライアント

    • [OS]:Windows Server 2012 R2
    • [実行ユーザー]:Administrator
  • Zabbix

    • [バージョン]:3.4

ディレクトリ構成

ディレクトリ構成は以下で考えています。

  • Cドライブ直下にzabbixディレクトリを作成
  • エージェントのDLしたzipファイルはzabbixディレクトリに配置・展開
  • 展開後、log ディレクトリを作っておく
C:  
├ zabbix  
    ├zabbix_agents_3.4.0.win  
       ├─bin  
       │  ├─win32  
       │  │  └─dev  
       │  └─win64  
       │      └─dev  
       ├─conf  
       └─log (自分で作る)

インストールマニュアル

インストール方法が書かれたサイトです(英語)。
日本語にしようと日の丸ボタンをおしたのですが、日本語化はされていないようでした。

ファイアーウォールの設定

通信用にTCP:10050 ポートを開ける必要があります。
インストール後、ついつい忘れてしまうことが多いので先に書いておきます。

ファイアーウォールの設定から、「受信の規則」にTCP:10050ポートを設定しておきます。

エージェントのダウンロード

下記サイトからエージェントをダウンロードします。

ダウンロードファイルの展開

C:¥zabbix 配下にzipを展開します。

confファイルの設定

confファイルのコピー

conf ディレクトリ配下の zabbix_agentd.win.conf をコピーして zabbix_agentd.conf にリネームします。

今回はconfファイルを指定してインストールするので、既存の zabbix_agentd.win.conf や別名のファイルでも問題はありませんが、念のため。

confファイルの設定を変更する

conf ファイルを開いて以下設定を変更します。

ログファイルのディレクトリは事前に作成してください。
(指定のディレクトリが無いとサービスが起動しない)

  • ログファイルの出力先を変更する場合
LogFile=C:\zabbix\zabbix_agents_3.4.0.win\log\zabbix_agentd.log
  • ZabbixServerが稼働しているサーバーのIPを設定する(IPは環境に合わせて変更してください)
Server=192.168.0.1
ServerActive=192.168.0.1
  • ホスト名を指定する:設定済みのPC名を使用する場合
    • Hostnameをコメントアウト
    • HostnameItemをアンコメント
#Hostname=Windows host
HostnameItem=system.hostname

設定済みのPC名を使用せずに独自名称にしたい場合は Hostname に記入し、HostnameItemはコメントアウトします。

Hostname=設定したい名称を記入
# HostnameItem=system.hostname

Hostname / HostnameItem の両方が有効な場合は Hostnameを使うよって警告が出た気がします。

confファイルを指定してエージェントをインストール

confディレクトリ配下のファイルを指定してインストールをします。

confファイルを指定しないでインストールした場合はCドライブ直下の zabbix_agentd.conf が使用されるようです。

実行exeもCドライブ直下に移動せずにzip展開後のbin配下のまま使用してみます。

自分の環境では特に問題無かったのですが、いろいろ見ているとexeもconfもCドライブ直下にコピーして、exeにはプロパティから管理者権限にチェックを入れて実行する方法等があったので、もし権限でインストールが上手く行かない場合はそちらの方法を取ったほうがよいのかもしれません。

コマンドプロンプト起動

コマンドプロンプトを管理者として実行で起動します。

インストール(サービスへの登録)

bin ディレクトリに移動し、--config オプションを指定してインストールします。
(win32 / win64 は各環境に合わせてください)

> cd C:\zabbix\zabbix_agents_3.0.4.win\bin\win64

> zabbix_agentd.exe --config C:\zabbix\zabbix_agents_3.0.4.win\conf\zabbix_agentd.conf --install

installed successfully が表示されればインストール完了です。

Cドライブ直下に zabbix_agentd.conf を配置する場合はオプション不要です。

> zabbix_agentd.exe --install

エージェントを開始する

サービスの画面を開いて、Zabbix Agent を開始します。

サービスがどのconfファイルで動いているか確認する場合

サービスのプロパティから 実行ファイルのパス で確認ができます
(長いと右に隠れているのいるので、カーソルをわせて表示をスクロールする)

  • サービス画面 > Zabbix Agent > プロパティ > 実行フィルのパス

ファイアーウォールの設定

10050ポートの設定をまだ行っていない場合は、ファイアーウォールの設定から、「受信の規則」にTCP:10050ポートを設定します。

エージェントのアンインストール

インストール時に--installとしたオプションを--uninstallとします。
サービスが起動している場合は停止まで削除削除されず「無効」状態になります(停止するとサービスから消える)

  • サービスを停止する
  • コマンドプロンプトで--uninstallを指定して実行する
  • サービスから削除された事を確認する
confファイルを指定している場合
> zabbix_agentd.exe --config C:\zabbix\zabbix_agents_3.4.0.win\conf\zabbix_agentd.conf --uninstall

confファイルがデフォルトCドライブ直下の場合
> zabbix_agentd.exe --uninstall

Zabbixへのホスト追加

Zabbixにホストを追加する

以上です。