snmpエージェントによって構築されたMIB(Management Information Base)にアクセスしてみる。
MIBにはマシン情報(cpu負荷、ネットワーク負荷、HDD空き容量ら)が含まれていてsnmpマネージャでアクセス、読み取れる。
この機構を使ってcactiのようなマシン情報(cpu負荷、ネットワーク負荷、HDD空き容量ら)の一元監視が可能となる

まずはMIBにアクセスできるようにsnmpエージェント(snmpdデーモン)を起動させます。

net-snmpのインストールと設定

[root@c ~]# yum install net-snmp

そして設定ファイル /etc/snmp/snmpd.confを調整する

[root@c ~]# diff -u /etc/snmp/snmpd.conf.orig /etc/snmp/snmpd.conf
--- /etc/snmp/snmpd.conf.orig   2016-05-12 22:14:18.000000000 +0900
+++ /etc/snmp/snmpd.conf        2017-04-04 18:06:25.643600430 +0900
@@ -52,14 +52,13 @@
 
 # Make at least  snmpwalk -v 1 localhost -c public system fast again.
 #       name           incl/excl     subtree         mask(optional)
-view    systemview    included   .1.3.6.1.2.1.1
-view    systemview    included   .1.3.6.1.2.1.25.1.1
+view    all    included   .1
 
 ####
 # Finally, grant the group read-only access to the systemview view.
 
 #       group          context sec.model sec.level prefix read   write  notif
-access  notConfigGroup ""      any       noauth    exact  systemview none none
+access  notConfigGroup ""      any       noauth    exact  all none none
 
 # -----------------------------------------------------------------------------
 
[root@c ~]#

既定では提供するMIBの範囲を制限しているが、ここでは全部公開してます 「view all included .1」の部分
そして、このsnmpにアクセスする際のパスワード(コミュニティ名)は既定の「public」のままです。
これでsnmpのデーモン「snmpd」を起動させます

[root@c ~]# systemctl enable snmpd
[root@c ~]# systemctl start snmpd

確認

ローカルマシンでも、リモートマシンからでもsnmpマネージャアプリ(snmpクライアント)をインストールして

[root@c ~]# yum install net-snmp-utils

たとえば

[root@c ~]# snmpwalk -v2c -c public localhost 1.3.6.1.2.1 | less

とすれば情報が見られます。
*リモート接続の場合は、相手側のsnmpエージェントのfwで161(tcp/udp)を空けて置く

snmpdのログ管理

snmpを起動すると

[root@c ~]# ps x|grep snmpd | grep -v grep
 5234 ?        Ss     0:03 /usr/sbin/snmpd -LS0-6d -f
[root@c ~]#

として起動する

-LS0-6dとは、snmpで発生したログの採取対象を定義している。
数字の0-6は、
0:LOG_EMERG システムが落ちるような状況
1:LOG_ALERT 緊急に対処すべきエラー
2:LOG_CRIT 致命的なエラー
3:LOG_ERR 一般的なエラー
4:LOG_WARNING 警告
5:LOG_NOTICE 通知
6:LOG_INFO 情報
7:LOG_DEBUG デバック情報
とあらわす。dは、7のLOG_DEBUG(デバック情報)でもある。

っで、通常このままなら、デフォでsyslogに情報が回る。syslogで特定の入口、ファシリティ(facility)を
定義すれば、そのsyslogにだけログを回すこともできる。
local5をsnmpのファシリティに使うなら

*.info;mail.none;authpriv.none;cron.none;local5.none /var/log/messages
local5.* /var/log/snmp.log
(local5の内容はmessagesには記載せず、snmp.logのみ記載する)

と定義して、

/usr/sbin/snmpd -LS0-6d -Ls 5 -Lf /dev/null -p /var/run/snmpd.pid

-Ls 5を追加します

最新の60件
2024-06-17 2024-06-16 2024-06-14 2024-06-12 2024-06-11 2024-06-10 2024-06-08 2024-06-07 2024-06-02 2024-06-01 2024-05-30 2024-05-16 2024-04-26 2024-04-18 2024-04-15 2024-04-11 2024-04-06 2024-04-05 2024-03-30 2024-03-29 2024-03-19 2024-03-17 2024-03-15 2024-03-06 2024-03-05 2024-03-03 2024-02-23 2024-02-22 2024-02-21 2024-02-20 2024-02-19 2024-02-18 2024-02-13 2024-02-12 2024-02-09 2024-02-04 2024-02-03 2024-01-31 2024-01-30 2024-01-29 2024-01-28 2024-01-22 2024-01-16

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-04-04 (火) 18:38:41