LoginSignup
9
12

More than 5 years have passed since last update.

MacOSXでSNMPを使う設定をする

Last updated at Posted at 2016-05-14

予備知識

ネットワーク管理(Network Management)

ネットワークシステムの状態を監視し、障害の防止や早期発見を行うこと。
稼働状況を一カ所に集めて、集中管理したら便利でしょう。
今回はネットワーク管理の中でも性能管理の話です。

ネットワーク管理 - Wikipedia

SNMP(Simple Network Management Protocol)

IPネットワーク上で、ネットワーク管理システムを構築するためのプロトコル。

SNMPマネージャ:監視する側(snmpwalkなど)
SNMPエージェント:監視される側(snmpdなど)
SNMPコミュニティ:SNMPマネージャとSNMPエージェントとの間で、同じコミュニティ名にすることで情報を共有することができる。

Simple Network Management Protocol - Wikipedia

NET-SNMP

さまざまなUNIXプラットフォームで稼動するSNMP パッケージ。
LinuxでもMacOSでも使える。
snmpdやsnmpwalkはNET-SNMPのツールである。

Net-SNMP - Wikipedia, the free encyclopedia

launchd

良く知らない。というか、初めて知った。
launchd - Wikipedia

やりたいこと

  • リモートで状態監視って便利だよね
  • LinuxサーバーからMacの状態監視をしたい
  • バグやシステムの不具合に悩まされたくないので、監視には枯れた実績のあるシステムがいい
  • 監視には多くの稼働実績のあるSNMPを使う

前提条件

  • Linuxサーバー側の設定は割愛
  • LinuxサーバーがSNMPマネージャ、MacがSNMPエージェントという構成になる
  • 監視のネットワーク環境は小規模なLANを想定(セキュリティ的に少し緩い)
  • SNMPのバージョンはSNMPv2c を使用する
  • SNMPで行うのは監視のみ、イベント通知の設定は行わない
  • SNMPのコミュニティ名は、慣例に従い「public」としているが、コミュニティ名は本来、秘匿すべき情報である
  • Macでsnmpd(SNMPエージェント)を動かすにはlaunchdを使う
  • MacOSのバージョンは OS X El Capitan 10.11.4

設定

※NET-SNMPはすでインストールされていると仮定する。

起動ファイルを作成

sudo vi /Library/LaunchDaemons/org.net-snmp.snmpd.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
 <key>Disabled</key>
 <true/>
 <key>Label</key>
 <string>org.net-snmp.snmpd</string>
 <key>OnDemand</key>
 <false/>
 <key>Program</key>
 <string>/usr/sbin/snmpd</string>
 <key>ProgramArguments</key>
 <array>
 <string>snmpd</string>
 <string>-f</string>
 </array>
 <key>ServiceIPC</key>
 <false/>
</dict>
</plist>

snmpd の設定

sudo vi /etc/snmp/snmpd.conf

LANからのアクセスを許可する

(中略)
com2sec local     192.168.1.0/24       public
(以下省略)

snmpdの起動と確認

snmpdの起動

sudo launchctl load -w /Library/LaunchDaemons/org.net-snmp.snmpd.plist

snmpdの停止

sudo launchctl unload -w /Library/LaunchDaemons/org.net-snmp.snmpd.plist

設定を変更したときは、launchctrl unload を実行してから再度 launchctrl load する必要がある。(これを知らなかったのでいろいろ悩んだ)

snmpdの起動を確認

ps aux |grep snmp

SNMPの接続テスト

ローカルからSNMPの接続を確認(Mac上で実行する)

snmpwalk -v 2c -c public localhost

外部からSNMPの接続を確認(Linuxサーバーからネットワーク越しに実行する)

snmpwalk -v 2c -c public MacのIPアドレス

SNMPエージェントの設定はここまで。
あとは外部のSNMPマネージャから呼び出して使う。

おまけ

よし、次はSNMPマネージャの設定だ!と意気込んでいたら、
↓ここに、やろうとしていたことが全部書いてありましたとさ。

muninでMIB値監視 - Qiita

じゃんじゃん。

9
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
12