「予防」と「原因特定」

「予防」と「原因特定」

前項で、「サービスの監視」を実施していれば、サービスの継続性は監視できていると定義した。それでは、なぜ「サービスの監視」だけでなく、「インフラの監視」が必要なのだろうか。

「インフラの監視」は「、予防」と「原因特定」のために存在する。「サービスの監視」でエラーを検知するということは、エンドユーザーへのサービス提供が不可能な状態を意味するのだ。こうなると、機会損失は計り知れず、サービス継続のためには「障害の前兆を検知する」予防が必要となってくる。

「予防」と「原因特定」の具体例として、図3を示す。

図3 サービス継続可能な障害
図3 サービス継続可能な障害

図3では、web1とweb2は冗長化されており、通常は、web1とweb2の2台にアクセスが割り振られる。web1とweb2は、ともにアクティブであり、片側がダウンした場合、1台での運用となる。また、http://abc.comのコンテンツを表示するためには、WebサーバーからDBサーバーへ、格納されたデータを取得しなければならない。

「予防」

図3のような、webサーバーが冗長化された構成のシステムにおいて、web1サーバーがダウンしたことを検知することは、「予防」となる。web1とweb2のどちらかかが稼働していれば、http://abc.comへのアクセスは可能なため、直接的な影響は発生しない。

しかし、web1、web2の両系で稼働していたシステムで、web1がダウンした場合、http://abc.comは、web2のみでサービスを提供する片系の稼働になる。図4は、web1がダウンしたため1台での運用となり、http://abc.comを提供するサービスは継続可能となっている。そうなるとweb2サーバーは、web1サーバーの負荷も担わねばならず、web2の負荷状況に、サービス継続性が左右されてしまうことになる。

図4 サービス継続不可な障害
図4 サービス継続不可な障害

このような、「現状ではサービスの継続はできているが、安定したサービスの継続が難しい」という状況は、「サービスの監視」のみでは検知できないため、「インフラの監視」が必要となるのだ。

「原因特定」

一方、冗長化していないDBサーバーであるdb1がダウン(図4の下部)した場合には、WebサーバーとDBサーバーの連携が崩れることになり、データの同期に問題が生じ、http://abc.comにアクセスしてもエラーとなる。その結果、「サービスの監視」においてエラーが発生したという事実はつかめる。しかし、検知時点では、http://abc.comへのアクセスが不可であるということ以外の情報は判明しない、とも言える。

これでは、復旧作業にとりかかる前に、原因は外部の回線にあるのか、それとも内部の回線なのか、Webサーバーなのか、あるいはDBサーバーなのか、内部プロセスなのか、ハードウェア自体なのか、などなど、すべて検証して「原因特定」に努めなければならない。サービスの継続ができていない状態から、障害原因ポイント、復旧作業の特定のためにも、適切な監視ポイントを設けた「インフラの監視」は必要となる。

監視ポイントの特定

ここでは、監視ポイントの特定について説明する。適切な監視ポイントは、次の手順で特定していく。

  1. 何のサービスをどう監視するのかを特定する。
  2. サービスを提供するために必要な要素は何かを特定する。
  3. 必要な要素はどう絡み合うのかを特定する。

何のサービスをどう監視するのか

まず、「このシステムは、最低限、何を提供しなければならないのか」を特定させなければならない。例として、前項までに説明した、Webページを表示させるシステムを、図5に示す。

図5 サービスを提供するための必要要素とは?
図5 サービスを提供するための必要要素とは?

ここで、システムの役割を定義する。このシステムは、「Webページを表示させることが役割であるサービス」と定義する。ここでは、単純なWebシステムとしているが、発注システムであれば、発注を行うまでを監視すべきであり、FAX受信システムであれば、FAXを実際に送付して監視すべきである。

このケースでは「Webページを表示させることが役割」と定義したため、「サービスが役割をまっとうしていることを監視する」とは、Webページが表示されていることを確認し続けることとなる。

この記事のキーワード :

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30