システム障害が発生した際、原因の調査に何時間もかかってしまい、ビジネスに損失を与えてしまった経験はありませんか?

昨今の複雑に絡み合ったIT環境では、システムの異常に気付いてから対処する従来の「監視」だけでは、迅速な復旧が難しくなっています。そこで注目を集めているのが、常にシステム全体の状況を把握し、トラブルの原因究明を支援する「オブザーバビリティ」です。

この記事では、オブザーバビリティの基本的な概念や導入メリット、ツールを導入する際の注意点について、初心者にも分かりやすく解説します。


オブザーバビリティとは?

具体的には、以下のような様々な情報をシステムから取得します。

・メモリの使用量
・バックグラウンド処理の待ち時間
・ユーザー側の行動状況

オブザーバビリティでは、取得したシステムの動作やパフォーマンスの情報を関連付けることで、障害の根本原因を特定することができます。

監視(モニタリング)との違い

よく似た概念として「監視(モニタリング)」が挙げられますが、それぞれの目的と機能には明確な違いがあります。

・監視(モニタリング)
システムの状態やパフォーマンスを継続して計測し、異常を検知することを目的とします。メモリの使用量など、事前に設定した閾値を超えた場合にアラートを発します。問題の発生原因を究明することはできないため、アラートを契機に人が調査を行うリアクティブ(事後対応的)な対応といえます。

・オブザーバビリティ
システム内部の状態を包括的に把握し、異常が発生した場合にそれらの情報を用いて問題の原因を解明することを目的とします。常にシステムの情報を集めて異常に備える、プロアクティブ(事前対策的)な対応です。

監視で検知した異常について、オブザーバビリティの仕組みを用いて原因を解明していくという関係にあるため、監視はオブザーバビリティを実現するための手段の1つと言えます。

オブザーバビリティのメリット

オブザーバビリティの導入には、大きく分けて2つのメリットがあります。

①システムの安全性・信頼性の向上

システム内部の情報を常に把握し、異常があった際に素早く原因を判断できるため、システム障害の影響を抑えることができます。そのほかにも、以下の点で安全性・信頼性が高まります。

未知の問題への対処:監視ツールでは、あらかじめ閾値が定義された異常状態のみを検知します。一方、オブザーバビリティは想定していない問題も通常の傾向との違いから発見し、関連性を分析できます。

障害の予防:計測した数値の変動を元にシステム障害の予兆を検知することで、障害を未然に防ぎます。

セキュリティの向上:システムを継続的に監視する中で、攻撃の跡や不審な動きを検知します。セキュリティログを分析することで攻撃手法なども特定でき、セキュリティ対策に役立ちます。

②開発・運用の効率化

障害発生時に問題の修正が容易になるため、運用現場の負担が削減されます。また、システムのパフォーマンスや課題を把握することで、システム設計の最適化や改善のための施策を打つことができます。

オブザーバビリティが求められている背景

昨今のITサービスは巨大化・高度化しており、事業におけるニーズの変化も激しくなっています。これに柔軟に対応するため、現代のシステムはサービス面、インフラ面の双方で複雑化しています。

サービス面の複雑化:機能の追加などを柔軟に行えるよう、小さく独立したサービスを組み合わせることで1つの巨大なシステムを作る「マイクロサービスアーキテクチャ」という開発手法が台頭しています。

インフラ面での複雑化:ニーズに合わせて、自社サーバ(オンプレミス)や複数のクラウド環境を組み合わせる「ハイブリッドクラウド化」「マルチクラウド化」が進んでいます。

このように、無数のサービスが複数のインフラを跨いで動く複雑な環境では、異常が起きた際の原因究明が困難です。問題への対応が遅延すると、サービスが停止することによる経済的損失やブランドの毀損に繋がってしまいます。
そのため、システム全体を可視化し、問題の原因究明に寄与するオブザーバビリティが注目されています。

株式会社ITRの調査(2023年)によると、国内のAPM/オブザーバビリティ市場規模は急速に拡大しており、2023年から5年間で2倍以上に成長すると見込まれています。

APM/オブザーバビリティ市場規模推移および予測(提供形態別)

オブザーバビリティの構成要素

オブザーバビリティでは、「メトリクス」「ログ」「トレース」の3つのデータを収集し、相関させて分析します。これらを総称して「テレメトリーデータ」と呼びます。

メトリクス
CPUの使用率や応答速度など、システムの状態を示す定量的な指標です。閾値を超える動きを監視することで、異常を検知します。

トレース
1つのリクエストが複数のサービスを横断して処理される際の経路を指します。処理の経路を追跡することで、問題が起きた箇所を特定できます。

ログ
実行履歴など、システム内で発生した出来事を時系列で記録したデータです。詳細な履歴を読み解くことで、なぜその問題が起きたのか、根本原因を調査します。

ツール導入時の注意点

オブザーバビリティを実現するためには、システムから得られるデータを継続的に収集し、関連付け、分析するツールが必要です。
オブザーバビリティツールでは、収集したデータを元にAIが問題の原因や解決に向けた手順を提案します。近年はAI機能の発達により、異常予測のさらなる精度向上や、問題解決の自動化などが期待されています。

ツールの導入には課題も存在します。New Relic株式会社のアンケート調査(2023年)によると、フルスタックオブザーバビリティ(ITシステム全体でのオブザーバビリティの実現)を阻む課題の上位は「価格が高すぎる(1位)」「予算不足(2位)」でした。
多くのツールは従量課金制を採用しているため、自社で扱うデータ量が増えるとコストが急速に膨れ上がってしまいます。

一方で、ツールを導入しない場合に起こりうる課題として最も多く挙げられたのは、「オペレーションの労力が増えることによる運用コストの増加(1位)」「ダウンタイムの増加による収益損失(2位)」でした。

つまり、「コストが高いから導入しない」という選択にはリスクがあり、「コストが最適化されるツールを選ぶこと」が重要です。

ツールごとに料金体系や得意な領域などの特徴は異なるため、導入を検討する際は、自社に最適な製品を見極めることが大切ですね。