システムの運用業務に欠かせない「システム監視」に関する常識が、近年激変している。監視する対象が従来の物理マシンから仮想マシン、クラウド、コンテナへと変わったことに加えて、その上で稼働するアプリケーションもマイクロ・サービス・アーキテクチャーへと一変したためだ。クラウド時代におけるシステム監視のあるべき姿を追う。
「オブザーバビリティー(可観測性)」「APM(アプリケーション・パフォーマンス・モニタリング)」「計装(インスツルメンテーション)」「メトリクス」「分散トレース」「SLI/SLO」「AIOps」「OpenTelemetory」――。こうした最新の「システム監視用語」を、いくつご存じだろうか。
日本のあるSaaS(ソフトウエア・アズ・ア・サービス)会社の経営者は「これらの単語の半分も意味が分からない」と返答したが、多くの読者にとっても同じ感想なのではなかろうか。用語自体が一変してしまうほど、システム監視の常識がここにきて変わっているのだ。
それぞれの単語の意味は追々解説するとして、システム監視の常識がどう変化しているのかをまずは説明しよう。
従来 | 現在 | |
---|---|---|
監視対象 | オンプレミスの物理マシン | パブリッククラウドの仮想マシンやコンテナ |
監視対象の数 | 固定 | 自動的に増減 |
アプリケーションの構成 | Web/アプリケーション/データベースの3階層 | マイクロ・サービス・アーキテクチャー |
システム障害の影響範囲 | 社内 | 社内&社外 |
システム監視ツールの提供形態 | パッケージ | SaaS |
監視対象はオンプレミスからクラウドへ
まず監視する対象が大きく変化した。10年前であれば監視する対象はオンプレミスで運用する物理マシンであり、コンピューターにインストールしたエージェントを使ったり、ハードウエア監視のためのプロトコルであるSNMP(Simple Network Management Protocol)を使ったりして稼働情報を収集していた。
しかしその後、監視する対象はパブリッククラウド上の仮想マシンやコンテナへと変わった。さらにKubernetesのようなコンテナ管理ツールを使う環境では、コンテナの台数はシステムの負荷に応じて自動的に増減する。ユーザーにとって物理マシンは「見えない存在」になった。
従来は、物理マシンに着目さえしていればITインフラストラクチャーの全容を監視できた。しかしパブリッククラウドやコンテナの普及によって、全く別の観点でITインフラストラクチャーを監視しなければならなくなった。
3階層からマイクロサービスへ
ITインフラストラクチャーの上で稼働するアプリケーションのアーキテクチャーも大きく変わった。Webサーバー、アプリケーションサーバー、データベース(DB)サーバーからなるシンプルな3階層アーキテクチャーではなく、複数のサービスが連携し合うマイクロ・サービス・アーキテクチャーが台頭した。
マイクロ・サービス・アーキテクチャーにおいては、アプリケーションに障害が発生した場合にどのマイクロサービスに原因があるのか特定するのが難しいだけでなく、あるマイクロサービスに発生したトラブルがどのアプリケーションに影響を与えるのか把握するのも困難だ。シンプルな3階層アーキテクチャーからマイクロ・サービス・アーキテクチャーへと変わることで、アプリケーション監視の難易度も高くなった。
システムが顧客体験を左右
システム障害がビジネスに与える影響も大きく変わった。情報システムのエンドユーザーが社内に限定されていた時代は、システム障害が発生しても困るのは社員だけだった。しかし顧客に対してスマートフォンアプリケーションなどを通じてデジタルサービスを提供するのが当たり前になった今日においては、システム障害は「顧客体験」を損なう原因となる。