ネットワークモニタリング、トラフィックの可視化を実現する製品開発に力をいれてまいりました。
そして、その活動の成果であるntop社の製品をリリース予定です。
本ブログ記事では、ntop製品の1つ高速ネットワークトラフィック分析ツールntopngの最新バージョン4で実装されたアクティブモニタの活用をご紹介したいと思います。
本ブログ記事は、ntop社のブログ「How Active Monitoring Works in ntopng」を意訳してご紹介しております。
ntopngの新バージョン4.0.xにサービスの可用性を定期的に監視できるアクティブモニタリング機能を導入しました。
さらに、現在4.1.x開発バージョンで改善を行っています。
アクティブモニタを有効にするには、上部のメニューバーから「システム」インターフェースを選択し、左側の「システム」メニューから「RTTモニター」を選択してください。
監視を追加すると測定値を含む表、図2が表示されます。
各監視プログラムのコードはモジュール方式で記述されているため、必要に応じて新しいluaスクリプトを追加するだけで利用可能な監視を追加できます。
監視ソースファイルからわかるように、監視を実行する新しいluaファイルを作成し、それを監視フォルダーに入れて実行するだけです。
現在、4種類の監視がサポートされています。
- ICMP ping(v6対応):スケジュールされたping(毎分など)を送信し、RTT(ラウンドトリップタイム)を測定します。
- 継続的なICMP ping(v6対応):上記のICMP pingと同じですが、継続的(3秒ごとにpingを送信)に確認を行うことで、ネットワークの到達可能性とサービスの可用性をより適切に評価します。
- Speedtest:speedtest.netサービスを使用して、使用可能な帯域幅(アップとダウン)およびレイテンシを評価します。
- HTTP/HTTPS:リモートWebサーバーに接続して、HTTP(S)の可用性を定期的に確認します。
監視の目的は、定期的なアクティビティを実行し、問題が発生したときにアラートを発報することです。
監視項目はそれぞれ閾値を持ちます。
管理者が閾値を設定し、監視で取得した測定値が閾値を満たさない場合、アラートが発報されます。
一度発報されたアラートは、測定値が閾値を下回るまでアラートは削除されません。
ICMPの閾値設定例を図6に記載しております。
RTTが90msを超過するとアラートが発報されます。
一方、継続的なICMP pingの閾値は、図7のように到達性割合の閾値を下回るとアラートを発報します。
継続的なICMP pingの監視目的はサービス可用性(発行されたping要求に対する成功したping応答の割合を測定)を継続的に監視することなので、この監視の場合は 到達割合を閾値に設定します。
これが現在の開発状況です。
私たちが最終的に開発しようとしているのは、柔軟なアラート発報を実装することです。 特定のアラートについて選択した受信者にアラートを発報します(例: 測定Xについて受信者A、測定Yについては受信者B、Cにアラートを発報する)。
そして、障害が発生していれば回復アクションを実行します。