Develop with pleasure!

福岡でCloudとかBlockchainとか。

サーバ監視ツール

アプリケーションが使用するサーバのリソース(CPUやメモリetc...)状況を調査する際にtopコマンドやpsコマンドを利用して確認するが、結局瞬間のリソース状況の把握しかできなかったり目視レベルでの確認になるのであまり便利じゃ無いなーって思ってたので監視ツールを導入してみた。

今回導入したのは、OpManagerというツール。
http://www.adventnet.co.jp/products/OpManager/index.html
無償版と有償版が存在するが、ほとんどの機能が使用できるので基本的に無償版で問題無さそう。アメリカの製品だが、日本語ドキュメントも充実してる。
http://www.adventnet.co.jp/products/OpManager/help.html

  • まず無料版をGetする。

http://www.adventnet.co.jp/products/OpManager/download2.html

  • 続いてインストール

基本的にはダウンロードしたexeを実行し進めるだけ。今回はお試しなのでローカルのWindowsXPにインストール。Windowsのサービス登録はしなかった。

  • 起動

インストールした、QpManagerを起動する。

なログイン画面が開ければ起動完了。

ちなみにOpManagerは監視するのにSNMPというのを使用している。SNMPって何だ?って調べると、Simple Network Management Protocolの略でネットワークを通してシステムを監視するためのプロトコルらしい。

なのでQpManagerにログインしても監視対象のサーバにsnmpdのプロセスが起動していないと監視できない。そのため、ちょっと横道にそれで監視対象のsnmpの設定を行う。

今回の監視対象のサーバはRedhat Enterprise Linux 4。デフォルトでsnmpはインストールされている。初期状態では、
/usr/sbin/snmptd
snmpがインストールされており、
/etc/snmp/snmpd.conf
に設定ファイルがある。この設定ファイルを書き変える。
まずは、コミュニティの設定。コミュニティというのは、snmpにおける監視対象のネットワークの範囲のことらしい。今回は、同じネットワーク内からアクセスできるように以下のような設定を行う。

##       sec.name  source          community
com2sec local     localhost       private
com2sec mynetwork 192.168.1.0/24      public

ちなみにこのコミュニティ名はSNMPでやりとりする際のパスワードにもなる。private/publicというのはデフォルトの設定なので運用環境にてきようするのであれば、ちゃんとしたパスワードを設定することをお勧める。
続いては、セキュリティグループの設定。こちらもデフォルトのまま。

##     group.name sec.model  sec.name
group MyRWGroup  any        local
group MyROGroup  any        mynetwork

そして、Viewの設定。ここでは公開する階層を定義する。これもデフォルトのまま。デフォルトでは全て公開されるので、こちらも運用時には要注意。

##           incl/excl subtree                          mask
view all    included  .1                               80

お次は、アクセス権限。こちらもデフォルトなのでコメントアウトを外しただけ。後は、保存して
/usr/sbin/snmpd
を実行してSNMPの設定は完了。

  • 監視する。

OpManagerにログイン後、「管理」->「装置のディスカバリ」を選択し遷移した画面で、開始IP、終了IPに監視したいサーバのIPを設定する。サーバのsnmpの設定がデフォルトなので、デフォルトで用意されているpublicという認証設定がそのまま適用できる。あとは画面の「ディスカバリ」ボタンを押す。成功すると、対象IPのLinuxマシンが画面上に現れているので、選択状態のまま「装置をインポート」を実行する。