近年、ITテクノロジーの進化は凄まじく、様々なWebサービスやアプリケーションが日々誕生し人々の働き方や生活を変えていっています。人々の生活はもはやITテクノロジーなしでは成り立たなくなっており、それらに障害が発生し正常に機能しなくなると、大きな混乱につながってしまいます。そうならないためにも、ネットワーク監視の重要性がますます高まっています。
今回は数多くある監視方法の中でも死活監視に注目し、その監視方法と監視するためのおすすめツールをご紹介します。
「死活監視方法」とは、サーバーが停止せずに正常に稼働しているかどうかを監視する方法を指します。サーバーに障害が発生する原因は様々なものがありますが、障害が発生したまま放置してしまうと大きな損害が発生することに繋がってしまうため、いち早く障害の発生に気づくためにも死活監視はとても重要です。
仕組みとしては、死活監視専用のシステムを用いてネットワークからサーバーへ定期的に通知を送り、正常に応答があるかどうかを確認します。応答がなかったとしても一時的なエラーという可能性もあるため、数回連続で応答がない場合に障害が発生していると判断されます。
サーバーの異常を監視するためには「死活監視」以外にも、以下のような複数の監視方法があります。
サーバーに障害が発生する要因は一つとは限らないため、どれか一つの監視方法だけをすればいいのではなく、複数の監視を常に行う必要があります。
「アプリケーション監視」は、サーバー内で動作しているアプリケーションを監視する方法です。応答にかかった時間や異常終了などのアプリケーションの稼働状況に関する監視が行われます。
「パフォーマンス監視」はリソース監視とも呼ばれ、サーバーのCPUやディスクメモリの使用率などを監視する方法です。リソースを正確に把握し管理しないと高負荷状態が引き起こされ、サーバーダウンにつながってしまいます。
「スクリプト監視」はジョブ監視とも呼ばれ、システム内のパッチ処理が正常に行われているかどうかを監視する方法です。パッチ処理に異常があった際に通知することで、いち早く正常な状態に修復し被害を最小限に食い止めることができます。
「トラフィック監視」とは、サーバー内のネットワークやインターフェース上で送受信されるデータの量を監視する方法です。Webサイトに対して短時間に大量のトラフィックを送るDos攻撃などの検知の際にも役立ちます。
死活監視を行うためには「Ping」を用いた方法と、「ポート」を用いた方法の2種類があります。それぞれ詳しく解説します。
「Ping」とは、ICMPと呼ばれる特定のプロトコルを使ったパケットを束ねるネットワークコマンドであり、応答が正常に行われているかどうかを確認する仕組みのことを指します。
一定の回数で応答が返ってこなければ、サーバーに異常が発生していると判断ができます。
死活監視はこのPingを用いて行う方法が主流です。
Ping監視に用いられる「ネットワークコマンド」とは、接続しているネットワークの状態確認や設定変更を行うために使用されるコマンドのことを指します。
特定のコマンドを実行することで、ネットワークを介して調査対象の外部デバイスと通信を行い、調査や捜査を行うことができます。
死活監視にはPingを用いた方法のほかに「ポート」を活用した監視方法もあります。ポート監視は、Webサーバーに行われる監視であり、ポートにアクセスすることでダウンしていないかどうかを確認することができます。Ping監視だけではアプリケーションやプログラムの稼働状況までもを確認することはできないため、このポート監視と合わせて監視することが多くあります。
実際にどういったPingコマンドを送信することで、どのような応答が返ってくるのかその応答例をケース別にご紹介します。
以下のようにPingコマンドを入力することで応答を確認することができます。
Pingコマンドを送信し、正常に応答があった場合は以下のように表示されます。
〇〇 に ping を送信しています 32 バイトのデータ:
〇〇 からの応答: バイト数 =32 時間 =1ms TTL=64
〇〇 からの応答: バイト数 =32 時間 =2ms TTL=64
〇〇 からの応答: バイト数 =32 時間 =4ms TTL=64
〇〇 からの応答: バイト数 =32 時間 =6ms TTL=64
〇〇 の ping 統計:
パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
最小 = 1ms、最大 = 5ms、平均 = 3ms
この例では、調査対象のアドレスに4回Pingを送信し、いずれも正常に応答があったことがわかります。
死活監視を行うためには定期的に上記のようなPingコマンドを送信し、応答が正常かどうかをチェックする必要があります。
監視しなくてはいけないシステムの規模が大きかったり、複数存在する場合は人力で全てを確認することは非常に大変です。
万が一障害が発生したことに気づかず放置された状態が続くと大きな損害につながってしまいます。そうならないためにも、自動で定期的に監視を行なってくれる以下のようなサービスやツールを活用することをおすすめします。
「One Cockpit」は、株式会社SMSデータテックで提供している統合運用管理ツールです。ダッシュボード機能やレポーティング機能に加え、エラー時の復旧処理を自動化するリカバリ実行機能等を有しています。
One Cockpitでは、ZabbixやHinemosなど様々な監視ツールと連携でき、システムの稼働状況を一つのダッシュボードから管理できます。ダッシュボード上では、様々な監視項目を一眼で確認することができるため分かりやすいのはもちろんですが、操作性にも優れているためどなたでも簡単に管理することが可能です。
「システムごとに異なる監視ツールの運用が大変」
「既知のエラーは自動で復旧させたい」
「サーバーの数が多くリソース情報のレポート作成が手間」
こういったお悩みを抱えている方はぜひOne Cockpitのご利用をご検討ください。
サーバーに何かしらの異常が発生しそれに気づかないまま放置された状態が続いてしまうと、大損害につながってしまいます。そうならないためにも、死活監視などの方法で定期的にサーバーを監視し、障害があった際はいち早く対応し被害を未然に防ぐようにしていきましょう。大規模で複数のシステムを監視する必要がある場合は、ご紹介したOne Cockpitなどの統合型監視ツールが特におすすめです。