CentOSでnet-snmp
※実経験の記憶を頼りに自宅の PC 環境(VMWareなど)で再現している内容もあるのでご注意下さい
2007-06-10
MRTG でリモートからサーバ監視するためには、監視対象のサーバで snmp のデーモンが動いている必要があります。そこで、今回は CentOS4.4 に net-snmp の導入をしてみます。
手順としては、net-snmp のモジュールを外部サーバから取得してきて、ビルドするだけです。
(rootで作業します) % cd /usr/local/src % wget http://jaist.dl.sourceforge.net/sourceforge/net-snmp/net-snmp-5.3.0.1.tar.gz % tar zxvf net-snmp-5.3.0.1.tar.gz % cd net-snmp-5.3.0.1 % ./configure --with-mib-modules="host ucd-snmp/diskio" (プロンプトが出現するが全てEnterでよい) % make % make install
環境によっては、下記の 2 つのモジュールを yum でインストールしておかないとダメな場合もあります。
% yum install beecrypt-devel % yum install elfutils-libelf-devel
これで、snmpd が起動できますが、その前に、snmp と snmptrap の設定をします。snmp の設定では、監視対象となるグループやネットワークセグメント、またハードディスクのパーティションに対して監視設定ができます。
まず、snmp の設定ファイルをサンプルを元に作成します。 ネットワークアドレスやコミュニティ名は環境に合わせて下さい。
% cp EXAMPLE.conf /usr/local/share/snmp/snmpd.conf % vi /usr/local/share/snmp/snmpd.conf #### # First, map the community name (COMMUNITY) into a security namecd /hom # (local and mynetwork, depending on where the request is coming # from): # sec.name source community com2sec local localhost communityname com2sec mynetwork 192.168.0.0/24 communityname # Check the / partition and make sure it contains at least 10 megs. disk /home 10% disk /var 10% disk / 10%
次に、snmpstap の設定です。net-snmp5.2 では、デフォルトで trap をどこからでも検知する設定なので不要ですが、net-snmp5.3 では設定が必要になります。今回は、net-snmp5.2 の設定と同じく、全部許可する設定をします。設定ファイルは新規の作成となります。
% vi /usr/local/share/snmp/snmptrapd.conf disableAuthorization yes
あとは、snmpd を起動して動作確認です。
% /usr/local/sbin/snmpd
snmpwalk を使うといろいろな確認テストができます。 その他、OS 起動時の自動設定などをしておけば楽になります。
# デーモンの起動スクリプト
% vi /etc/init.d/snmp
#!/bin/sh
case "$1" in
start)
/usr/local/sbin/snmpd -a -Lsd -p /var/run/snmpd.pid
/usr/local/sbin/snmptrapd -a -Lsd -p /var/run/snmptrapd.pid
;;
stop)
kill `cat /var/run/snmpd.pid`
kill `cat /var/run/snmptrapd.pid`
;;
*)
exit 1
esac
exit 0;
# 実行権限付与
% chmod 755 /etc/init.d/snmp
# 自動起動の設定
% chkconfig --add snmp
# 自動起動の確認
% chkconfig --list snmp
あとは、監視側の設定をするだけです。
関連記事
上記の記事に関連する記事(最新の10件)です。


