オブザーバビリティとは?
「オブザーバビリティ(Observability:可観測性)」とは、文字どおり「観測(Observe)」が可能な状態を意味する言葉です。つまり、エンタープライズITにおけるオブザーバビリティとは、エンタープライズシステムを構成するIT機器やアプリケーション、サービスなどが観測可能な状態にあることを指しています。
オブザーバビリティにおいて観測の対象となるのは、システムの「振る舞い(挙動)」です。その観察を通じて「レスポンス遅延」「停止」「エラー」といった、“好ましくない何らかの挙動”をすみやかに検知し、障害の原因を特定することができれば、そのシステムはオブザーバビリティが確保されていることになります。
モニタリングの限界とオブザーバビリティの必要性
オブザーバビリティにおける障害検知と対処・対応のアプローチは「モニタリング(監視)」に似たところがあり、そのためオブザーバビリティについて語るとき、モニタリングとの違いをよく尋ねられます。
では、オブザーバビリティとモニタリングでは何が違うのでしょうか。
周知のとおりモニタリングは、エンタープライズシステムの可用性を高めるためのソリューションとして以前から存在するものです。そして、モニタリングを通じた障害検知と対処のアプローチは大きく2つあり、その1つは「メトリクス(Metrics)」を用いるものです。
ここで言うメトリクスとは、システムを構成するリソースの状況(CPU使用率、メモリ使用率、ディスク使用率など)やサービスの状況(レスポンスの遅延、トランザクション量、エラー発生率など)を表す数値データ(数値指標)です。それらを使ったモニタリングのソリューションは、システムを構成するサーバーや端末、ネットワーク機器、ソフトウェアなどの状況をモニタリングし、その数値があらかじめ設定した「しきい値」を超えた場合(あるいは下回った場合)にアラートを発し、IT運用管理者などに対処を促します。また近年では、たとえばCPU使用率が80%を超えた場合の対処方法を定めておき、それにしたがってシステムが自動的に措置を講じることも多いです。
モニタリングにおけるもう1つの障害検知・対応のアプローチは、システムの「ログ(Logs:システムで起きたイベントの履歴情報)」をベースにしたものです。こちらは、ログを常にモニタリングし、異常を検知した場合にアラートを出して、対応につなげるといったソリューションです。
これら2つのソリューションは、アラート発出のトリガーは異なるものの、前提となる条件は共通しています。それは「システムの好ましくない挙動を引き起こす要因が特定できている」ということです。この条件のもと、システムを構成する何らかのIT機器やアプリケーション、サービスの状態を監視して障害の発生を未然に防ぐというのがモニタリングの基本といえます。これを逆に言えば「障害が何によって引き起こされるかの予測、特定が困難なシステム」では、モニタリングが有効に機能しなくなるということです。
そして、今日のエンタープライズシステムは障害原因の予測、特定が非常に困難になりつつあり、従来型のモニタリングだけでシステムの可用性やサービスレベルを担保するのが難しくなってきています。結果として、エンタープライズシステムすべてにわたってオブザーバビリティを確保する必要性が高まっているのです。