可観測性とは
可観測性とは、IT システムやアプリケーションの状態を理解し、それに対応する能力です。監視と同様に、可観測性には出力、ログ、パフォーマンス・メトリクスが必要です。しかし、監視のみの場合とは対照的に、可観測性を使用するとそれらのメトリクスをプロアクティブに適用してシステムやアプリケーションのトラブルシューティングや最適化を行うことができます。たとえば、システムイベントを観測している場合、問題の発生と同時に自動化ツールが対応するようにしてシステムの効率性と安定性の維持に役立てることができます。
可観測性のメリットとは
ソフトウェアシステムが複雑さを増すにつれて、増大し続ける出力とメトリクスのストリームへの対処という課題も複雑化しています。可観測性は、従来の監視システムを統合および拡張し、チームが問題の根本原因を特定できるようにします。可観測性により、ステークホルダーはアプリケーションやビジネスに関する質問への答えを得たり、予測を行ったりすることができます。
マイクロサービスの普及、分散アーキテクチャへの依存度の高まり、1 つの分野としてのプラットフォーム・エンジニアリングの台頭などといった他のコンピューティング・トレンドと合わせ、可観測性の注目度は高まっています。
先進的なソフトウェアシステムやクラウドコンピューティングでは、可観測性が信頼性、パフォーマンス、セキュリティを支えています。可観測性のメリットには以下のようなものがあります。
信頼性の向上
問題が拡大する前に検出し、解決することで、ダウンタイムを最小限に抑えてユーザーが利用できるシステムを維持できます。
トラブルシューティングの効率化
システムの動作に関する知見を得ることで、問題の根本原因を素早く特定し、効率的に解決できます。
最適化されたパフォーマンス
システム内の障害や十分に活用されていないリソースなど、最適化すべき領域を特定できます。これにより、より効率的なリソース配分とパフォーマンスの向上が可能になります。
データ駆動型の意思決定
システムパフォーマンスと動作に関する最新の情報を入手し、データ駆動型の意思決定と継続的な改善に役立てることができます。
可観測性の実装に、唯一の標準的な方法といったものはありません。使用されているツールやテクノロジーは多種多様であるため、可観測性戦略では、自社にとって適切な方法で複数のツールを連携させる必要があります。
Red Hat のリソース
可観測性の活用における課題とは
ニーズに合わせて可観測性戦略を立てても、組織の課題によってはそのメリットの実現が困難になる場合があります。そうした課題には次のようなものがあります。
複雑性
IT 環境が拡大を続け、含まれるコンポーネントが増えるにつれて、システム間のやり取りの量は飛躍的に増加します。このため、システムの一部分の変更が他の部分にどのように影響するかを予測することが難しくなり、信頼性を維持するというタスクも複雑になります。詳細情報が重要ですが、複雑な環境においては適切にラベル付けされたデータやメタデータの取得が困難なこともあります。
チームの分断
もう 1 つの大きな課題はチームの編成です。システムには、単独の直接所有者が存在しない場合があります。可観測性に関する知見を効果的なアクションへと変換するには、チーム間のコラボレーションが欠かせません。データへのアクセスは必須であり、またそれらのデータは、適切なチームが分析に使用するシステムへと送信される必要があります。
急速な変化
可観測性と効果的なシステム管理には、常に新しい方法が生まれ続けています。そうした新しい手法、ツール、テクノロジーについていくには、チームは継続的にトレーニングを行っていく必要があります。これには、時間、コスト、あるいはその両方がかかる場合があります。
テクノロジーとツールの無秩序な増加
プラットフォーム、ツール、ベンダーが変化していけば、振り落とされるアプリケーションやインフラストラクチャも当然出てきます。そこから効率性、スキル、セキュリティに関する課題が生じることがあります。標準化された可観測性ツールとプラクティスがない場合、コラボレーションは困難になります。
クラウドネイティブの可観測性とは
クラウドネイティブ・インフラストラクチャを導入する企業が増えるにつれ、そうした環境に対応するよう構築された可観測性ツールのニーズが高まっています。クラウドネイティブの可観測性とは、先進的なクラウドネイティブ・アプリケーション、つまりマイクロサービス・アーキテクチャを使用して構築され、コンテナやサーバーレス環境にデプロイされたクラウドネイティブ・アプリケーションを監視、分析、トラブルシューティングするための手法です。
クラウドネイティブの可観測性ツールは、すべてのそのようなクラウドネイティブ・テクノロジーからデータを収集および分析し、これらの環境におけるシステムパフォーマンスに関する知見を提供できるよう設計されています。
クラウドネイティブの可観測性の柱として、以下のものが挙げられます。
メトリクス:Kubernetes 環境とアプリケーションに関する定量的なデータの収集に重点を置いています。メトリクスには、中央処理装置 (CPU) やメモリの使用量、ネットワークトラフィック、リクエストのレイテンシーなどのデータがあります。Kubernetes には多くの組み込み型メトリクスが用意されていますが、より詳細なメトリクスを収集するために、追加のツールやライブラリを使用することが必要な場合もあります。
ログ:Kubernetes 環境とアプリケーションからのログデータの収集と分析に重点を置いています。ログは、アプリケーションの動作に関する価値ある知見を提供し、問題のトラブルシューティング、パフォーマンスの障害の特定、セキュリティ脅威の検出に使用することができます。
トレース:Kubernetes 環境とアプリケーション全体におけるリクエストやトランザクションの実行に関するデータを収集することに重点を置いています。トレースは、アプリケーションでリクエストやトランザクションがどのように処理されるかを理解し、パフォーマンスの問題を特定し、アプリケーションのパフォーマンスを最適化するのに役立ちます。
イベント:アプリケーションのデプロイ、スケーリングイベント、エラーなど、Kubernetes 環境内で発生する重要なイベントに関するデータを収集することに重点を置いています。イベントは、Kubernetes 環境の健全性を監視し、問題が発生したときに迅速に対応するのに役立ちます。
可観測性とイベント駆動型自動化
イベント駆動型自動化とは、IT 環境における状態の変化に、人手を介することなく適切なアクションで対処する機能です。
イベントとは、IT インフラストラクチャの管理や IT サービスの提供にとって重要な、検出可能な運用条件の変化のことを言います。可観測性ツールは、アプリケーション、ハードウェア、ソフトウェア、クラウドインスタンスなどのテクノロジーの状態の変化を示すイベントを特定するのに役立ちます。
可観測性システムが検出したイベントに対し、自動化ツールに適切なアクションを実行させて対処または修復することができます。自動化を使用すると可観測性データに基づいてアクションを実行できるので、既存のツールをさらに活用できます。たとえば、可観測性ツールを使用して容量とパフォーマンスのメトリクスをイベント駆動型自動化と組み合わせ、コンテナ、クラウド・インフラストラクチャ、仮想マシン、その他のテクノロジーを自動的にプロビジョニングさせることができます。
アプリケーション・ワークロードからのイベントでアクションをトリガーし、生産性を向上させることも可能です。たとえば、開発チームはコードがチェックインされたときに自動で強化およびコンプライアンスのチェックを実行できます。このような自動化シナリオは、応答をトリガーするアラートを選択し、実行するアクションを設計して柔軟に作成できます。
最初に自動化対象にできるのは情報技術サービス管理 (ITSM) のタスク (チケット強化や、サービスの再起動や証明書のローテーションをはじめとする修復作業など) ですが、イベント駆動型自動化は柔軟性があるため、IT 環境全体で数多くのタスクを処理できます。
Red Hat® Ansible® Automation Platform には Event-Driven Ansible が含まれています。Event-Driven Ansible は IT 運用 (AIOps) のための人工知能をサポートしており、Splunk、Dynatrace、IBM Instana、ITSM ソリューションなど、数多くのプラットフォームと統合できます。
可観測性を活用してシステムの問題を解決する方法
可観測性は、システムの信頼性と効率的な運用をサポートする方法として、プラットフォーム・エンジニアリング、SRE (サイト信頼性エンジニアリング)、DevOps に不可欠です。
いわゆる「デバッグジャーニー」では、可観測性データを使用してシステムの問題を特定、分析、解決することから始まります。このプロセスは、監視、アラート、またはユーザーから報告されたインシデントを使用して問題を検出するところから始まります。
検出したら、チームはその問題の重大度を判断して優先順位をつけます。このトリアージプロセスでは、ユーザー、システム、全体的なパフォーマンスへの影響を評価します。
優先順位の高いものから、可観測性データを使用してパターンや相関関係を調査し、特定します。潜在的な相関関係やパターンを特定した後、チームはデータを深く掘り下げて問題の根本原因を探ります。
根本原因を特定したら、修正を実装することが可能になります。修正は、コードの変更、ホットフィックス、インフラストラクチャの調整などの形で実装します。最後に、システムを監視して、解決策が機能していることを確認します。
プラットフォーム・エンジニアリング、DevOps、SRE のための可観測性は、高品質のデジタルサービスを顧客に提供する企業においてきわめて重要な役割を果たします。
Red Hat OpenShift® Observability は、システムのベースラインを判別するために必要な情報を提供し、そのベースラインからの逸脱を監視および警告します。これは平均検出時間 (MTTD) と平均復旧時間 (MTTR) の短縮に役立ちます。
可観測性が他の IT トレンドをサポートする方法
AIOps
可観測性は、AIOps をサポートする上で役立ちます。AIOps は AI 駆動型の知見と自動修復を組み合わせたアプローチです。可観測性プラットフォームが運用データを収集し、機械学習アルゴリズムがパターンや異常を特定します。これらの分析情報は、Ansible Automation Platform などの自動化ツールに渡して問題を解決させることができます。検出された問題を自動的に修復できるため、MTTR が短縮され、手作業による介入が減り、IT チームは優先度の高い作業に集中できるようになります。
プラットフォーム・エンジニアリング
プラットフォーム・エンジニアリングはソフトウェア開発の分野の 1 つであり、生産性、アプリケーションのサイクルタイム、および市場投入スピードの向上に重点を置いています。可観測性により、プラットフォームエンジニアはメトリクスを 1 つずつ個別に確認するのではなく、すべてのサービスにわたって包括的にデータをクエリし、調査することができます。このような可視性の向上により、複雑な問題をより効率的にトラブルシューティングでき、すべてのシステムコンポーネントをスムーズかつ安定して連携させることができるようになります。
ハイブリッドクラウドとマルチクラウド環境
ハイブリッドクラウドやマルチクラウドの戦略を採用する企業が増えており、種類の異なる多数のインフラストラクチャにアプリケーションをデプロイすることで、強化された柔軟性を活用できるようになっています。可観測性ツールにより、アプリケーションやサービスがどこにデプロイされているかに関係なく、インフラストラクチャ全体を把握することができます。
エッジデバイス
エッジデバイスや IoT (モノのインターネット) デバイス、その他のローカル・コンピューティング・デバイスが増加することで、これらの環境の監視および管理に関する新たな課題が発生します。エッジデバイスの可観測性を得る方法としては、データ収集のための軽量エージェントの作成、エッジに適したデータ形式やプロトコルの使用、分散型のデータ処理および分析技術の導入などがあり、それと併せて、効果的なセキュリティ制御とプライバシー制御を維持する必要があります。
DevOps
DevOps プロセスでは、クラウドネイティブ・アプリケーションの信頼性とパフォーマンスを確保するために可観測性が必要となります。これには、可観測性ツールを DevOps ツールチェーンに統合することや、アプリケーションのパフォーマンスと信頼性を継続的に改善するために可観測性データを活用することなどが含まれます。
オープンソースのツール
可観測性エコシステムの多くは、オープンテクノロジーを中心として構築されています。Grafana、Jaeger、Kafka、OpenTelemetry、Prometheus などはオープンソースの可観測性ツールであり、これらは広く採用されています。これらのツールには、コスト面でのメリットに加えて、柔軟性、カスタマイズ性、他のツールとの統合という利点もあります。
Red Hat OpenShift Observability でハイブリッドクラウド全体で可観測性を実現 (動画の再生時間:1:47)
Red Hat の可観測性を選ぶ理由
Red Hat のソリューション・ポートフォリオは、あらゆるプラットフォームに対するお客様の可観測性戦略をサポートします。
Red Hat OpenShift Observability は、可観測性のツールとテクノロジーを繋ぎ、統一された可観測性エクスペリエンスを実現することで、先進的なアーキテクチャの複雑性を解決します。このプラットフォームは、システムのさまざまなメトリクス、ログ、トレース、イベントをリアルタイムで可視化、監視、分析し、アプリケーションやエンドユーザーに影響が及ぶ前に問題を迅速に診断およびトラブルシューティングできるよう設計されています。
効果的な可観測性戦略の実装に役立つその他の Red Hat 製品には、以下のようなものがあります。
Red Hat OpenShift:テスト済みサービスの統合セットを備えたエンタープライズ・アプリケーション・プラットフォームであり、これによって、任意のインフラストラクチャでアプリケーションを市場投入できます。
Red Hat Ansible Automation Platform:可観測性データに応答し、IT 資産全体を 1 つのプラットフォームでオーケストレーションできる、信頼性の高い多用途のエンタープライズ自動化ソリューションです。
Red Hat Advanced Cluster Management for Kubernetes:マルチクラスタ管理の統一、ポリシーベースのガバナンス、アプリケーションライフサイクル管理を実現する各種機能と、クラスタの健全性とパフォーマンスをプロアクティブに監視する機能のコレクションです。
Red Hat Lightspeed:AI を活用したガイダンスを Red Hat プラットフォーム全体で利用できるようにするエンドツーエンドのシステム管理ツールです。これにより、ハイブリッドクラウド環境をより適切に管理できます。
Red Hat 公式ブログ
Red Hat のお客様、パートナー、およびコミュニティのエコシステムに関する最新の情報を入手しましょう。