ZabbixでLinuxをSNMPで監視する手順。Zabbixエージェントは未使用

やること

先日Zabbixを構築したので、LinuxサーバをZabbixで監視してみたいと思います。

SNMPだけで監視することとして、LinuxにZabbixエージェントは導入しません。

テンプレートも、Zabbixでデフォルトで用意されているものを使用します。

Zabbixサーバのセットアップ(インストール)は別の記事に手順をまとめています。参考になれば幸いです。

Zabbixの構築手順(CentOS 7,MySQL)インストールとログインまで

環境

項目 OS ホスト名 IPアドレス
Zabbixサーバ CentOS 7 ZABXVM01 10.0.0.113
Zabbixクライアント CentOS 7 TMDSVM01 10.0.0.112

Zabbixのバージョンは5.0.11を使用しています。

Linuxサーバ側の準備

SNMPのインストール

ZabbixサーバがZabbixクライアント(Linuxサーバ)に対して、SNMPで検知できるようにするため、LinuxサーバにSNMPをインストールします。

[root@TMDSVM01 ~]# yum install net-snmp
読み込んだプラグイン:fastestmirror, langpacks

~~~(省略)~~~

依存性を解決しました

=====================================================================================================================
 Package                           アーキテクチャー     バージョン                       リポジトリー           容量
=====================================================================================================================
インストール中:
 net-snmp                          x86_64               1:5.7.2-49.el7_9.1               updates               325 k
依存性関連でのインストールをします:
 net-snmp-agent-libs               x86_64               1:5.7.2-49.el7_9.1               updates               707 k

トランザクションの要約
=====================================================================================================================
インストール  1 パッケージ (+1 個の依存関係のパッケージ)

総ダウンロード容量: 1.0 M
インストール容量: 2.9 M
Is this ok [y/d/N]: y

~~~(省略)~~~

インストール:
  net-snmp.x86_64 1:5.7.2-49.el7_9.1                                                                                 

依存性関連をインストールしました:
  net-snmp-agent-libs.x86_64 1:5.7.2-49.el7_9.1                                                                      

完了しました!
[root@TMDSVM0 ~]#

SNMPの設定

/etc/snmp/snmpd.confに追記を行います。★マークを付けているところが追記した個所です。

[root@TMDSVM01 ~]# cat /etc/snmp/snmpd.conf | grep -v '#' | grep -v '^$'
com2sec notConfigUser  default       public
com2sec snmpUser        default homeCom ★
group   notConfigGroup v1           notConfigUser
group   notConfigGroup v2c           notConfigUser
group   snmpGroup       v2c     snmpUser ★
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1
view    snmpView        included        .1 ★
access  notConfigGroup ""      any       noauth    exact  systemview none none
access  snmpGroup       ""      any     noauth  exact   snmpView        none    none ★
syslocation Unknown (edit /etc/snmp/snmpd.conf)
syscontact Root  (configure /etc/snmp/snmp.local.conf)
dontLogTCPWrappersConnects yes
[root@TMDSVM01 ~]#

snmpd.confの設定(コミュニティ名など)を表にすると下のようになります。(参考まで)

項目 項目名 設定値
コミュニティ名 community homeCom
セキュリティ名 sec.name snmpUser
グループ名 groupName snmpGroup
SNMPバージョン securityModel v2c
ビュー名 name snmpView

SNMPの有効化

snmpdサービスを起動して有効化します。

[root@TMDSVM01 ~]# systemctl start snmpd
[root@TMDSVM01 ~]# 
[root@TMDSVM01 ~]# systemctl enable snmpd
Created symlink from /etc/systemd/system/multi-user.target.wants/snmpd.service to /usr/lib/systemd/system/snmpd.service.
[root@TMDSVM01 ~]# 
[root@TMDSVM01 ~]# systemctl status snmpd
● snmpd.service - Simple Network Management Protocol (SNMP) Daemon.
   Loaded: loaded (/usr/lib/systemd/system/snmpd.service; enabled; vendor preset: disabled)
   Active: active (running) since 日 2021-05-02 09:12:06 JST; 3h 40min ago
 Main PID: 1406 (snmpd)
   CGroup: /system.slice/snmpd.service
           mq1406 /usr/sbin/snmpd -LS0-6d -f

 5月 02 09:12:06 TMDSVM01 systemd[1]: Starting Simple Network Management Protocol (SNMP) Daemon....
 5月 02 09:12:06 TMDSVM01 systemd[1]: Started Simple Network Management Protocol (SNMP) Daemon..
[root@TMDSVM01 ~]#

Zabbixサーバ側の設定

ZabbixサーバのWEBインターフェースにログインします。

「http://[ZabbixサーバのIPアドレス]/zabbix/」にアクセスしてログインします。

ホストの追加

Zabbixの監視対象としてホストを追加します。

  1. [設定]から[ホスト]を選択します。
  2. [ホストの作成]をクリックします。
  3. [ホスト名]と[表示名]を入力します。
  4. グループの[選択]をクリックします。
  5. [Linux servers]にチェックを入れて[選択]をクリックします。
  6. インターフェース欄にすでに存在する項目の[削除]ボタンをクリックします。
    ※これはZabbixエージェントを使用しての監視なので、本件では削除します。
  7. インターフェース欄の[追加]から[SNMP]を選択します。
  8. 監視対象のIPアドレスを入力します。ポートは161のままで、SNMPバージョンもSNMPv2のままです。(前述のLinuxサーバ側の設定の際に、SNMPバージョンに”v2c“を設定しているので)
    その後、[テンプレート]タブに移動します。
  9. [新規テンプレートをリンク]に”linux”と打ち込むと候補が表示されるので、「Template OS Linux SNMP」を選びます。
  10. [マクロ]タブに移動します。
  11. [{$SNMP_COMMUNITI}]の値に、Linuxサーバ側のSNMPで設定したコミュニティ名(ここでは”homeCom”)を入力します。
    その後、[追加]ボタンをクリックします。
  12. 「ホストを追加しました」と表示されれば完了です。

監視間隔の変更

「Template OS Linux SNMP」というテンプレートを使用して監視対象のホストを追加しましたが、監視間隔がほとんど1時間となっています。(1時間に1回対象ホストをチェックする)

これでは間隔が長すぎるので、1分間隔に変更します。

  1. [設定]から[ホスト]をクリックします。
  2. 追加したホスト(ここでは”TMDSVM01″)の[ディスカバリ]をクリックします。
    ※「Template OS Linux SNMP」には5つの監視定義が含まれているので”ディスカバリ 5“と表示されています。
  3. 監視定義が5つありますが、例として一番上の[Block devices descovery]をクリックします。
  4. [監視間隔]が「1h」(1時間間隔)となっているので、ここでは「1m」(1分間隔)に変更します。
    その後、[更新]ボタンをクリックします。
  5. 「ディスカバリのルールを更新しました」と表示されれば完了です。
  6. 必要に応じてそのほかの監視定義の監視間隔も1時間間隔から変更します。
    「Template OS Linux SNMP」のテンプレートで言えば、下記の監視定義の監視間隔が「1h」(1時間間隔)になっています。
    ・SNMP: Block devices discovery
    ・EtherLike-MIB Discovery
    ・Mounted filesystem discovery
    ・Network interfaces discovery

グラフで表示を確認

実際に1分間隔でデータを取得しているか確認します。

グラフを表示して確認します。

  1. Zabbixコンソールで[監視データ]から[ホスト]をクリックします。
  2. 追加したホスト(ここでは”TMDSVM01″)をクリックして、プルダウンから[グラフ]をクリックします。
  3. グラフが表示されて、1分間隔でデータが取得できていることが確認できます。

以上です。

お読みいただきありがとうございました。

参考サイト

【システム監視】ZabbixでLinuxサーバの死活監視・リソース監視 | じょんからドットネット

Zabbixにホストを追加する

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!

コメント

コメントする

CAPTCHA