はじめに
今回はZabbixで監視対象をSNMPエージェントとして監視する方法を紹介します。
環境設定
以下のような環境で今回は設定していきたいと思います。
機器情報
【Zabbix serer】
今回SNMPマネージャーの設定を入れる機器です。
IPアドレス:192.168.68.250
OS:CentOS8
【rt01】
今回SNMPエージェントして監視したいルーターです。
IPアドレス:192.168.68.51
機器名:Cisco1921/K9
構成図
Zabbixで設定する前に
今回紹介する設定は、Zabbix serverにnet-snmpがインストールされていて、OIDを指定して監視対象(今回はrt01)からMIB情報を取得できる状態であることが前提となっています。
以下の記事は、CentOS8にSNMPマネージャーを設定し、監視対象をSNMPエージェントとして機能させる記事を紹介しています。ここまでの設定方法を紹介しているので、設定がしていない場合は設定をしてから今回の記事で紹介する方法を実践してください。
設定方法
SNMPコミュニティをマクロに登録
Zabbixにログイン後、[管理]>[一般設定]を選択します。
右上の[マクロ]を選択します。
マクロの設定画面で以下のように、{$SNMP_COMMUNITY}というマクロを、設定したいSNMPのコミュニティ名を登録します。
SNMPのコミュニティ名はホストを登録の際に設定可能です。マクロを登録しておくと、ホストを作成する度にコミュニティ名を入力し直す必要がなくなり、入力ミスも減らせます(私自身マクロの機能を知らず、その都度入力して打ち間違いや入力忘れを起こしてエラーを頻発させました)。
大量にホスト登録する際にはマクロを登録しておくと便利です。
入力後、[更新]を選択して登録します。
ホストのSNMPエージェント設定
[設定]>[ホスト]を選択し、ホストの一覧画面からSNMPエージェント設定をしたい対象を選択します。
今回は「rt01」を選択して設定します。
以下のホスト情報の編集画面で、[SNMPインターフェース]にSNMPエージェントのIPを入力します。基本的にはポート番号は161番ですが、特別に設定している場合は、ここでポート番号を編集します。
コミュニティ名の確認
次に、SNMPのコミュニティ名を登録します。マクロを登録しておいたので、反映されているかを確認します。
[マクロ]タブを選択し、[継承したマクロとホストマクロ]を選択します。
{$SNMP_COMMUNITY}が設定した通り登録されていることを確認します。
他にもSNMPエージェントで取得したアイテムの値に対し、個々に設定できる値が一覧で表示されています。トリガーとの兼ね合いで編集したい場合は、ここで値を変更できます。
ここではデフォルトの値で登録します。
テンプレートの設定
最後に、SNMPエージェントのテンプレートを選択します。[テンプレート]タグを選択します。
今回はCisco機器なので、[Template Net Cisco IOS SNMPv2]というテンプレートを選択しています(監視対象に合わせて設定します)。
全て設定した後、青い[更新](新規の場合は[追加])を選択します。
以上でSNMPエージェントの設定は終了です。
SNMPエージェントの状態確認
以下の画像はホストの一覧画面の一部です。SNMPエージェント設定してすぐの段階では、「エージェントの状態」には何も表示されません。
数分待ち、Zabbix serverがSNMPエージェントからMIB情報を正常に情報を取得できた場合、「SNMP」の部分が緑色になります。逆に設定がうまくいっていない場合は、緑ではなく赤くなるので、エラーが発生していることを知らせてくれます。
取得したデータを確認する
[監視データ]>[最新データ]を選択すると、監視対象の監視データの一覧をみることができます。監視データをもう少し詳しくみるのは、違う記事でまとめたいと思います。
以上でZabbixでSNMPエージェントを登録する方法は終わりです。
大量のホストを登録する場合(ZabbixAPIを使う)
今回紹介した方法はいかがだったでしょうか?割と簡単!と思ったとしても、「監視対象100個に設定する」としたら、結構な手間ですよね。ニーズは限られてくるとは思いますが、大量にホストを登録したい場合にオススメなのが、「ZabbixAPI」を使う方法です。GUIでちまちまやるより黒画面でガリガリやりたいという方にはおすすめかもしれません。是非、興味のある方はどうぞ!