Hinemosでシステムを安定運用!監視機能のご紹介
投稿日: / 更新日:
■はじめに
こんにちは。
今回、この記事ではHinemosの機能の根幹である監視機能についてご紹介いたします!
1.監視機能について
●監視機能とは
監視機能では、システムやアプリケーションが出力するログやプロセス等を監視します。
実現できる機能としては以下の3つが挙げられます。
①管理対象ノードの状態の収集:管理対象ノードの状態を定期的に収集することができます。設定した条件と通知設定に基づいて収集結果を通知します。
②監視履歴パースペクティブによる統合監視:イベント・ステータスをマージして表示するビューや、スコープを用いたイベント・ステータスの絞り込みを用いることで効率的な運用監視を実現します。
➂ジョブ機能との連携:収集結果に連動し、ユーザが定義したジョブを起動・実行することが可能です。
●監視種別ごとの監視項目一覧
Hinemosの監視項目は監視種別ごとに分類することができます。
監視種別 | 監視項目 |
数値 |
PING監視、リソース監視、プロセス監視、ログ件数監視、HTTP監視(数値)、SQL監視(数値)、JMX監視、サービス・ポート監視、SNMP監視 カスタム監視(数値)、カスタムトラップ監視(数値)、相関係数監視 |
文字列 |
システムログ監視、ログファイル監視、HTTP監視(文字列)、SQL監視(文字列)、Windowsイベント監視、カスタム監視(文字列)、カスタムトラップ監視(文字列) |
バイナリ |
パケットキャプチャ監視、バイナリファイル監視 |
真偽値 | Windowsサービス監視、Hinemosエージェント監視、収集値統合監視 |
トラップ | SNMPTRAP監視 |
シナリオ | HTTP監視(シナリオ) |
2.監視の種類
ここからは、各監視についてそれぞれ見ていきましょう。
●数値監視
監視の対象は数値となります。
監視対象から取得した数値に対し閾値判定を行い、情報、警告、危険の重要度を判定して通知します。
・PING監視:死活監視に最も使われる手法の一つです。ネットワークを介して管理対象ノードに要求を送信し、応答の有無や応答時間によって監視を行います。管理対象の死活状態(動いているか否か)やマネージャと管理対象の間のネットワークがつながっているかなどが分かります。
PING監視につきましては、詳しくはこちらの記事にも載っております!
【監視機能】Hinemosでネットワーク疎通の監視をしてみよう!
・リソース監視:管理対象ノードのリソース情報を監視します。システムの障害を未然に防ぎ、安定して稼働させるにはリソース監視は欠かせません。取得できるのはCPU情報・ディスク情報・ファイルシステム情報・メモリ情報・ネットワーク情報です。
リソース監視につきましては、詳しくはこちらの記事にも載っております!
リソース監視をやってみた!
・プロセス監視:ノード上で起動しているプロセスごとに、起動しているプロセス数を監視します。管理対象の機器にかかる負荷を把握することができます。
・ログ件数監視:文字列監視やトラップ監視で収集された収集データ(文字列)から、特定の条件に一致したデータの件数を監視します。
ログ件数監視につきましては、詳しくはこちらの記事にも載っております!
ログ件数監視機能の紹介
・HTTP監視(数値):HTTPを用いてWebサーバの状態を監視します。HTTP監視(数値)では、HTTPリクエストの応答時間に対する閾値監視を行います。
HTTP監視につきましては、詳しくはこちらの記事にも載っております!
オンプレミス環境でHTTP監視を実行する方法
・SQL監視(数値):DBサーバに対してSQL文を実行し、結果を監視します。実行結果として返された数値に対して閾値監視をします。
SQL監視(数値)につきましては、詳しくはこちらの記事にも載っております!
MySQLを監視する
・JMX監視:JMXを用いて、Javaアプリケーションの内部状態を監視します。監視できるのはクラス情報、ガーベジコレクタ情報、メモリ情報、スレッド情報、JVMプロセス情報、Hinemos状態情報です。
・サービス・ポート監視:管理対象ノードのネットワーク・サービスのレスポンスタイムを監視します。管理対象ノードでサービスが正しく稼働しているかどうかが分かります。
サービス・ポート監視につきましては、詳しくはこちらの記事にも載っております!
【Hinemos】サービス・ポート監視のご紹介
・SNMP監視:SNMPポーリングによって取得した値に対し、監視を行います。
SNMP監視につきましては、詳しくはこちらの記事にも載っております!
【Hinemos】SNMP監視のご紹介
・カスタム監視(数値):ユーザが定義したコマンドを実行し、その結果を監視します。
・カスタムトラップ監視(数値):json形式で送信されるリクエストをHinemosマネージャで受信し、監視します。
カスタムトラップ監視につきましては、詳しくはこちらの記事にも載っております!
カスタムトラップ監視を利用する
・相関係数監視:2つの数値監視の収集値を元に相関係数を算出し、その相関係数を監視します。相関のある2つのデータの関係性の崩れを感知し、将来的な異常をいち早く検知することができます。
相関係数監視につきましては、詳しくはこちらの記事にも載っております!
【Hinemos 監視機能】相関係数の定義と相関係数監視
・将来予測監視・変化量監視
また、数値監視では実測値を用いた監視だけでなく、予測値を用いた将来予測監視、変化量を用いた変化量監視も可能です。
・将来予測監視:数値監視の過去の収集値をもとに監視対象の数値の傾向を測り、指定された時点の予測値を求めます。求められた予測値について閾値判定を行い、情報、警告、危険の重要度を判定して通知します。
・変化量監視:数値監視の過去の収集地と比較することにより異常値を検出します。過去の収集値をもとに閾値判定を行い、情報、警告、危険の重要度を判定して通知します。
将来予測監視・変化量監視につきましては、詳しくはこちらの記事にも載っております!
将来予測値や変化量の監視について
●文字列監視
監視の対象は文字列となります。
監視対象から取得した文字列に対しパターンマッチ文字列を定義したフィルタ一覧でフィルタリングを行い、その結果を通知します。
・システムログ監視:管理対象ノードのシステムログに出力されたログに対してフィルタ処理を行い、フィルタリング・マッチングを行います。指定した条件とマッチした場合に通知を行います。
システムログ監視につきましては、詳しくはこちらの記事にも載っております!
rsyslogを用いたシステムログ監視のご紹介
・ログファイル監視:アプリケーションがログファイルに対して出力するログの監視を行います。こちらも指定の条件とマッチした場合に通知を行います。
ログファイル監視につきましては、詳しくはこちらの記事にも載っております!
【Hinemos 監視】ログファイル監視でJavaのStackTraceを監視する
・HTTP監視(文字列):HTTPを用いてWebサーバの状態を監視します。HTTP監視(文字列)では取得したページ内の文字列マッチングを行います。
・SQL監視(文字列):DBサーバに対してSQL文を実行し、結果を監視します。実行結果として返された文字列に対して文字列マッチングを行います。
・Windowsイベント監視:監視対象のWindowsイベントログに対し、フィルタ処理を行い、出力されたログが指定の条件とマッチした場合に通知を行います。
Windowsイベント監視につきましては、詳しくはこちらの記事にも載っております!
【Hinemos】Windowsイベントログを監視して、タスクスケジューラのスケジュールを無効にする
・カスタム監視(文字列):ユーザが定義したコマンドを実行して、その結果を監視します。
・カスタムトラップ監視(文字列):json形式で送信されるリクエストをHinemosマネージャで受信し、監視します。jsonに含まれる特定の文字列に対するパターンマッチ処理を行います。
●バイナリ監視
監視の対象はバイナリ値となります。
監視対象から取得したバイナリ値に対して、定義した検索文字列を含むかどうか判定し、その結果を通知します。
・パケットキャプチャ監視:管理対象ノードのネットワークカードが送受信したパケットを取得し、パケットに指定の検索文字列が含まれているかを監視します。
パケットキャプチャ監視につきましては、詳しくはこちらの記事にも載っております!
パケットキャプチャ監視について
・バイナリファイル監視:管理対象ノードのバイナリファイルの内容を監視します。
●真偽値監視
監視対象の状態がOKかNGかを判定します。
・Windowsサービス監視:指定したWindowsサービスが監視対象のWindowsServer上で起動しているかどうかを監視します。
Windowsサービス監視につきましては、詳しくはこちらの記事にも載っております!
Windowsサービス監視の使い方
・Hinemosエージェント監視:管理対象ノードで起動しているHinemosエージェントの状態を監視します。
・収集値統合監視:数値監視や文字列監視の監視結果をもとに、ある事象が関連性をもって発生したかどうかを監視します。
収集値統合監視につきましては、詳しくはこちらの記事にも載っております!
収集値統合監視について
●トラップ監視
監視対象にどのMIBのOIDを監視するか指定し、マッチするOIDがあれば定義した重要度にて通知します。
・SNMPTRAP監視:管理対象ノードや未登録ノードからSNMPTRAPを受信することにより監視します。
SNMPTRAP監視につきましては、詳しくはこちらの記事にも載っております!
HinemosでSNMPTRAPv1とv2cを受信し、検知してみる
●シナリオ監視
複数のURLに順番にアクセスすることにより、監視対象に設定されるアクセスが行われた際に正しく応答を返せるかを監視します。
・HTTP監視(シナリオ):指定したシナリオを元としたHTTPリクエストの結果に対する判定を行います。
HTTP監視(シナリオ)監視につきましては、詳しくはこちらの記事にも載っております!
HTTP監視(シナリオ)をやってみた
■おわりに
この記事では、Hinemosで利用可能な監視についてまとめてみました!
これらの監視を活用し、システムの安定稼働につなげましょう!