【Zabbix3.0】ネットワークディスカバリを利用したホスト登録の自動化手順

# **概要**
- Zabbixにおけるネットワークディスカバリを利用したホスト登録を自動化する手順を記していきます！
- 本手順はZabbixエージェントのチェックをトリガーにホストを自動登録する手順となります

# **環境**
- zabbix_server (Zabbix) 3.0.3
- CentOS7.2 (ZabbixServer & Client)

# **前提条件**
- ZabbixClient側のAgentインストール及び設定が正しくされていること

# **手順概要**
1. ディスカバリルールの作成
2. アクションの作成
3. 確認


# **手順**
## **ディスカバリルールの作成**
### [設定] - [ディスカバリ] - [ディスカバリルールの作成] を選択
![WS000627.png](https://qiita-image-store.s3.amazonaws.com/0/79134/f8cd1220-719b-afb7-9174-f08c3ea48e82.png)

### 必要項目を入力し、追加を選択
- 名前
- IPアドレスの範囲
- チェック
  - チェックタイプ：Zabbixエージェント
  - ポートの範囲：10050
  - キー：`system.uname`

![WS000628.png](https://qiita-image-store.s3.amazonaws.com/0/79134/cd5c3684-632e-4513-f49b-c8cc6330152b.png)

![WS000629.png](https://qiita-image-store.s3.amazonaws.com/0/79134/da09f5bf-58d5-fe0d-fd9f-6c706c300b3c.png)

## **アクションの作成**
### [設定] - [アクション] を選択し、[イベントソース]を[ディスカバリ]に設定して[アクションの作成]を選択
![WS000631.png](https://qiita-image-store.s3.amazonaws.com/0/79134/12724a91-fc5e-ae1e-e89e-ae63bec68662.png)

### [名前]を入力
![WS000632.png](https://qiita-image-store.s3.amazonaws.com/0/79134/6f605eb6-8496-f5ff-fc4f-e55c27bb1cd5.png)

### [アクションの実行条件]を選択し、条件を以下のように作成し、[追加]を選択
※ディスカバリルールのチェックで設定したキーの値が[受信した値]となる

```shell-session:この値が帰ってくる
# zabbix_get -s 172.18.251.101 -k system.uname
Linux cmtk01 2.6.32-573.12.1.el6.x86_64 #1 SMP Tue Dec 15 21:19:08 UTC 2015 x86_64
```

![WS000633.png](https://qiita-image-store.s3.amazonaws.com/0/79134/33207ad8-ef21-1957-7581-ad7a0ac5ba0f.png)

### [アクションの実行内容]を選択し、下記のようにアクションの実行内容を追加し、[追加]を選択する
![WS000634.png](https://qiita-image-store.s3.amazonaws.com/0/79134/9a7e0592-defb-af41-73ff-58ca35bbd5ac.png)

### アクションが追加されたことを確認
![WS000635.png](https://qiita-image-store.s3.amazonaws.com/0/79134/3d2041df-9a61-de1b-bd57-f653fde94d14.png)

## **確認**
### [監視データ] - [ディスカバリ]から該当のサーバが表示され、[監視中のホスト]にIPが表示されていることを確認
※名前解決出来る場合は名前解決されたホスト名等が表示される

![WS000636.png](https://qiita-image-store.s3.amazonaws.com/0/79134/a908874c-beab-7f68-4354-a99be3d36811.png)

### ホスト一覧に表示され、エージェントの状態も有効になっていることを確認
![WS000637.png](https://qiita-image-store.s3.amazonaws.com/0/79134/8ce5dbfa-109e-4d9f-4666-51bf28c84afd.png)

### データも取れてる！
![WS000638.png](https://qiita-image-store.s3.amazonaws.com/0/79134/41ef3766-7239-48c2-4b65-1651c808ab3d.png)

**おしまい**

# **疑問**
ネットワークディスカバリとローレベルディスカバリの違いってなんだ？と思い、Twitterで助けを求めたところ、即座に回答していただくことができました！

Zabbix界隈の人々が親切すぎて鼻血でそうです。
@atanaka7さん、 @qryuuさんありがとうございます！

<blockquote class="twitter-tweet" data-conversation="none" data-lang="ja"><p lang="ja" dir="ltr">.<a href="https://twitter.com/Tocyuki">@Tocyuki</a> ネットワークディスカバリは監視対象ホストを追加・削除するための機能です。<br>ローレベルディスカバリは監視対象ホスト内の監視項目を追加・削除するための機能になります <a href="https://twitter.com/hashtag/zabbix?src=hash">#zabbix</a></p>&mdash; 九龍真乙 (@qryuu) <a href="https://twitter.com/qryuu/status/748330587333627904">2016年6月30日</a></blockquote>
<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" data-conversation="none" data-lang="ja"><p lang="ja" dir="ltr"><a href="https://twitter.com/Tocyuki">@Tocyuki</a> ネットワークディスカバリというのは、IPのレンジを指定してそのレンジ内のIPアドレスに対してpingやSNMPのリクエストを利用して新しい機器が接続されていないか、以前接続された機器がなくなっていないかをチェックするための仕組みです。ホスト自動登録に利用します。</p>&mdash; Atsushi Tanaka (@atanaka7) <a href="https://twitter.com/atanaka7/status/748330939487383552">2016年6月30日</a></blockquote>
<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<blockquote class="twitter-tweet" data-conversation="none" data-lang="ja"><p lang="ja" dir="ltr"><a href="https://twitter.com/Tocyuki">@Tocyuki</a> ローレベルディスカバリというのは、登録されているホストに対して、動的に変化する監視対象のリストを取得して、そのリストから監視用のアイテムやトリガーを自動生成するための仕組みです。デフォルトのテンプレートではNW I/Fやディスクの自動設定に利用されています。</p>&mdash; Atsushi Tanaka (@atanaka7) <a href="https://twitter.com/atanaka7/status/748330593063038976">2016年6月30日</a></blockquote>
<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

次はローレベルディスカバリを試してみようと思います！