こんにちは。CTOの馬場です。
ハートビーツからお届けする技術情報の初回シリーズの、Nagiosについての第3回です。
今回は、Nagiosの監視プラグインについてご紹介します。
独自に作るのも簡単にできるんですが、まずはaptでインストールできるものを一通りご紹介します。これだけでもかなりの量があるので、さっと試す分には十分だと思います。
すべて、`/usr/lib/nagios/plugins/`に配置されます。
いずれのコマンドも、たいがい`-h`オプションをつけてコマンドラインで実行するとUsageが表示されるので、困ったらやってみましょう。
*nagios-plugins-basic*
- `
check_apt` – apt(apt-getのapt)でエラーがないか、更新すべきファイルが残っていないか確認します。チェックに少し時間がかかるので、あまりに頻繁にチェックすると問題になるかもしれません - `
check_by_ssh` – あるホストにsshでログインし、引数で指定したコマンドを実行して結果を確認します。パスワードは指定できないので、パスフレーズなしの公開鍵認証でのログインを想定しているようです - `
check_clamd` – あるホストのClamd(アンチウィルスのClamAVのデーモン)と通信可能か確認します。 - `
check_cluster` – 複数のホストorサービスをまとめてclusterとして定義し、そのclusterの状態が正常かどうかをNagiosサーバで確認します。ホスト・サービスの指定にはon-demand macro(on-demand service macro, on-demand host macro)を使うため、コマンドラインでの実行は難しいかもしれません - `
check_dhcp` – DHCPサーバの動作を確認します。応答すべきDHCPサーバのIPアドレスをチェックしたりできます - `
check_disk` – 自ホストのディスクの空き容量を確認します。容量指定・%指定ができます - `
check_dummy` – 引数で指定されたステータスを返します - `
check_file_age` – 自ホストのファイルが指定秒数以内に更新されていることを確認します。閾値として、指定サイズ以上であるということも合わせて確認できます - `
check_ftp` – あるホストにftp接続ができることを確認します - `
check_http` – あるホストにHTTP(HTTPS)接続ができることを確認します。文字列検知、認証、ユーザエージェント指定などに対応しています - `
check_icmp` – あるホストにICMPパケットを送り、応答を確認します - `
check_ide_smart` – 自ホストのディスクのSMART値を確認します - `
check_imap` – あるホストにIMAP(IMAPS)接続ができることを確認します - `
check_ircd` – あるホストにIRC接続ができることを確認します。同時接続数も同時に確認できます - `
check_jabber` – あるホストにJABBER(over SSL)接続ができることを確認します - `
check_load` – 自ホストのロードアベレージを確認します。1分平均、5分平均、15分平均を確認できます - `
check_log` – 自ホストのあるファイルに対してパターンマッチで出力を確認します。ファイルを2つ指定し、2つのファイルに対してパターンマッチを適用した結果が異なるかどうかを確認します - `
check_mailq` – 自ホストのメールキュー滞留数を確認します。sendmail、qmail、postfix、eximに対応しています - `
check_mrtg` – 自ホストのMRTGログファイルを確認します。MRTGで取得した値・データの最終更新時間を確認できます。値の平均値・最大値の確認もできます - `
check_mrtgtraf` – 自ホストのMRTGログファイルを確認します。MRTGで取得した値・データの最終更新時間を確認できます。値の平均値・最大値の確認もできます。2値が同時に確認できるのが特徴です - `
check_nagios` – 自ホストのnagiosログファイルを確認します。ログファイルが指定した時間以内に更新されていることを確認します - `
check_nntp` – あるホストにNNTP接続できることを確認します - `
check_nntps` – あるホストにNNTPS接続できることを確認します - `
check_nt` – あるホスト(Windows)のNSClientからデータを取得し、値が閾値を超過していないことを確認します - `
check_ntp- deprecatedとのこと。check_ntp_peerかcheck_ntp_tim`を使いましょう - `
check_ntp_peer` – あるホストのNTPサーバの動作を確認します。時刻ずれの大きさも確認できます - `
check_ntp_time` – あるホストの、NTPサーバとの時間のずれを確認します。時刻ずれの大きさも確認できます - `
check_nwstat` – あるNovellサーバのMRTGEXT NLMと通信し、様々な値を確認します - `
check_overcr` – あるホストのOver-CR collector daemonと通信し、様々な値を確認します - `
check_ping` – あるホストにPINGを実行し、応答時間・パケットロスを確認します - `
check_pop` – あるホストにPOP(POP3S)通信ができることを確認します - `
check_procs` – 自ホストのプロセスの状態を確認します。プロセス数、プロセスの状態(state)、PID,VSZ,RSS,PCPU,USER,引数,コマンドなどを条件として加えることができます - `
check_real` – あるホストにRTSP接続できることを確認します(動画再生のREALの意) - `
check_sensors-lm_sensors`を使い、自ホストのハードウェアステータスを確認します - `
check_simap` – あるホストにSIMAP(SIMAPS)接続ができることを確認します。SIMAP接続が何なのかは、いまいちよくわかりません。IMAPとIMAPSのことでしょうか… - `
check_smtp` – あるホストにSMTP(SMTP with TLS)接続できることを確認します - `
check_spop` – 3あるホストにSPOP(SPOPS)接続ができることを確認します。SPOP接続が何なのかは、いまいちよくわかりません。POP3とPOP3Sのことでしょうか… - `
check_ssh` – あるホストにSSH接続ができることを確認します - `
check_ssmtp` – あるホストにSSMTP(SSMTPS)接続できることを確認します。SSMTP接続が何なのかは、いまいちよくわかりません。SMTPSのことでしょうか… - `
check_swap` – 自ホストのSWAP空き容量が所定以上であることを確認します - `
check_tcp` – あるホストにTCP(SSL)接続ができることを確認します - `
check_time` – あるホストの時刻がずれていないことを確認します - `
check_udp` – あるホストにUDP(SSL)接続ができることを確認します - `
check_ups` – あるホストのUPSの状態を確認します。温度、ステータスを確認できます。www.networkupstools.orgのNetwork UPS Toolsが必要です - `
check_users` – 自ホストのログインユーザ数を確認します
*nagios-plugins-extra*
- `
check_fping` – fpingを使ってあるホストの死活を確認します。使うためにはfpingコマンドにsuidフラグを立てる必要があります - `
check_game` – qstatを使ってあるホストのゲームサーバの状態を確認します
*nagios-plugins-standard*
- `
check_bgpstate` – あるホストのBGPセッションを確認します - `
check_breeze` – あるホストのBreezecom wirelessの電波の強さを確認します - `
check_dig` – あるホストのDNSサービス稼働を、digを使って確認します - `
check_disk_smb` – あるホストのSMB共有ディスクの、ディスク使用量を確認します - `
check_dns` – あるホストに対してDNSクエリを発行し、結果として得られたIPアドレスが想定通りであるかを確認します - `
check_flexlm` – 自ホストのライセンスファイルを見て、Flexlmのライセンスを確認します - `
check_hpjd` – HPのプリンタ(JetDirect cardのついたもの)のステータスを確認します - `
check_ifoperstatus` – あるホストの、あるNICのoperational statusを確認します - `
check_ifstatus` – あるホストの、各NICのoperational statusを確認します - `
check_ldap` – あるホストのLDAP(SSL,TLS対応)応答が時間内にあることを確認します - `
check_ldaps- 同上。This detection is deprecated, please use 'check_ldap' with the '--starttls' or '--ssl' flags to define the behaviour explicitly instead.` とのこと。 - `
check_linux_raid` – 自ホスト(linux)のraid(おそらくsoftware raid)のステータスを確認します - `
check_mysql` – あるホストのmysqlの状態を確認します。スレーブとして正常に機能しているか確認もできます - `
check_mysql_query` – あるホストのmysqlにクエリを発行し、結果を確認します - `
check_oracle` – あるホストのOracleの状態を確認します - `
check_pgsql` – あるホストのPostgreSQLの状態を確認します - `
check_radius` – あるホストのRADIUSと通信できるか確認します - `
check_rpc` – あるホストのRPCが利用できるか確認します - `
check_snmp` – SNMPを利用して、あるホストの状態を確認します。OIDを指定して値を取得し、結果をもとに判定ができます - `
check_wave` – あるホストの信号の強さを確認できるようです。いまいちよくわかりません