次の方法で共有


Azure Managed Grafanaの信頼性

Azure Managed Grafana は、ダッシュボードと視覚化を構築するためのホストされた Grafana ワークスペースを提供します。 Microsoft は、コンピューティング、ネットワーク、ストレージ、サービスの更新プログラムなど、基になるインフラストラクチャをすべて管理します。

Azureを使用する場合、信頼性は共有責任です。 Microsoft では、回復性と回復性をサポートするさまざまな機能を提供しています。 使用するすべてのサービスでこれらの機能がどのように機能するかを理解し、ビジネス目標とアップタイムの目標を達成するために必要な機能を選択する必要があります。

この記事では、一時的な障害、可用性ゾーンの停止、リージョンの停止など、さまざまな潜在的な障害や問題に対するAzure Managed Grafana回復性を確保する方法について説明します。 また、他の種類の問題をバックアップして復旧する方法についても説明し、Azure Managed Grafanaサービス レベル アグリーメント (SLA) に関するいくつかの重要な情報を強調します。

運用環境のデプロイに関する推奨事項

Azure Managed Grafanaを使用して運用デプロイの信頼性を高めるために、次のアクションを実行することをお勧めします。

  • ワークスペースを作成するときにゾーンの冗長性を有効にして、可用性ゾーンの障害に対する回復性を提供します。
  • Store ダッシュボードとその他の Grafana リソースをコードとして(Grafana API または CLI からエクスポートし、GitHubなどのソース管理リポジトリに格納するなど)。 CI/CD パイプラインを使用して、ダッシュボードを Azure Managed Grafana にデプロイします。 この方法では、復旧シナリオがサポートされます。 また、必要に応じて、異なるAzure リージョン内のインスタンスを含む複数の Grafana インスタンスへのデプロイも可能になります。

信頼性アーキテクチャの概要

このセクションでは、信頼性の観点から最も関連性の高いサービスのしくみの重要な側面について説明します。 このセクションでは、デプロイして使用するリソースと機能の一部を含む論理アーキテクチャについて説明します。 また、物理アーキテクチャについても説明します。このアーキテクチャでは、サービスの内部での動作について詳しく説明します。

論理アーキテクチャ

デプロイするプライマリ Azure リソースは、workspaceです。 ワークスペースをデプロイしたら、ワークスペースの Grafana エンドポイントを使用して、データ ソース、ダッシュボード、視覚化、およびその他の Grafana リソースを構成して操作します。

物理アーキテクチャ

バックグラウンドでワークスペースを作成すると、Azure プラットフォームによって次のコンポーネントがプロビジョニングされます。

  • Grafana サーバー: Grafana アプリケーションを実行する専用仮想マシン。 既定では、高可用性と冗長性のために 2 つのサーバーがプロビジョニングされます。 これらのサーバーは、Microsoft によって完全に管理されています。 サブスクリプションにそれらの情報が表示されない、アクセスできない、パッチの適用、スケーリング、またはメンテナンスを行う責任はありません。
  • ロード バランサー: 受信ブラウザー要求を Grafana サーバーに分散するネットワーク ロード バランサー。 ロード バランサーはサーバーの正常性を監視し、異常なサーバーからトラフィックを自動的にルーティングします。
  • Backend データベース: ワークスペースの構成とその他の永続的なデータを格納するAzure Database for PostgreSQL データベース。 このデータベースは、ワークスペース内のすべての Grafana サーバー間で共有されます。

ロード バランサーは、使用可能な Grafana サーバーを追跡します。 デュアル サーバーセットアップでは、1 つのサーバーが異常になった場合、ロード バランサーはすべての要求を残りのサーバーに送信します。 そのサーバーは、共有データベースに保存されている情報に基づいて、他のサーバーによって以前に提供されたブラウザー セッションを取得します。 それまでの間、Azure Managed Grafana サービスは、異常なサーバーを修復したり、新しいサーバーを起動したりするために機能します。

一時的な障害に対する回復性

一時的な障害は、コンポーネントにおける短い断続的な障害です。 これらはクラウドのような分散環境で頻繁に発生し、運用の通常の範囲であり、 一時的な障害は、短時間の経過後に自分自身を修正します。 アプリケーションで一時的な障害を処理できることは重要です。通常は、影響を受ける要求を再試行します。

クラウドでホストされているすべてのアプリケーションは、クラウドでホストされている API、データベース、およびその他のコンポーネントと通信する際に、Azure一時的な障害処理ガイダンスに従う必要があります。 詳細については、「一時的な障害を処理するための推奨事項」を参照してください。

Grafana API を使用して Grafana ワークスペースと対話するクライアント アプリケーションを構築できます。 これらのアプリケーションが、失敗した要求に対するAzureの再試行ガイダンスに従っていることを確認します。

可用性ゾーンの障害に対する回復性

Availability zones は、Azure リージョン内のデータセンターの物理的に分離されたグループです。 1 つのゾーンで障害が発生した際には、サービスを残りのゾーンのいずれかにフェールオーバーできます。

Azure Managed Grafana ワークスペースは、サポートされているAzure リージョンでゾーン冗長性をサポートします。 ゾーンの冗長性が有効になっている場合、ワークスペースの Grafana サーバーは複数の可用性ゾーンに分散されます。 Microsoft は、ワークスペースで使用するゾーンを選択します。 ネットワーク ロード バランサー、データベース、共有ゲートウェイなどの他のリソースも、複数の可用性ゾーンを使用するように構成されます。

ゾーン冗長を有効にしない場合は、 非ゾーン または リージョンです。つまり、サーバーとその他のコンポーネントは、リージョン内または同じゾーン内の任意の可用性ゾーンに配置される可能性があります。 リージョン内の可用性ゾーンに問題がある場合、ワークスペースでダウンタイムが発生する可能性があります。

Requirements

リージョンのサポート: ゾーン冗長のサポートは、次のリージョンで利用できます。

南北アメリカ ヨーロッパ アジア太平洋
米国東部 北ヨーロッパ オーストラリア東部
米国中南部 東アジア
米国西部 3

費用

ゾーンの冗長性を有効にすると、追加コストがかかります。 詳細については、「Azure Managed Grafana 価格」を参照してください。

可用性ゾーンのサポートを設定する

  • 可用性ゾーンが有効になっている新しいワークスペースを作成する: Azure ポータル、CLI、または ARM/Bicep テンプレートを使用してワークスペースの作成時にゾーン冗長性を有効にします。

    詳細については、「Azure Managed Grafana でゾーン冗長性を有効化する」を参照してください。

  • 既存のワークスペースでゾーン冗長を構成します。 既存のワークスペースでゾーン冗長を有効または無効にすることはできません。 代わりに、目的のゾーン冗長構成で新しいワークスペースを作成し、ダッシュボードと構成を移行してから、既存のワークスペースを削除する必要があります。

すべてのゾーンが正常な場合の動作

このセクションでは、ワークスペースがゾーン冗長に構成されていて、すべての可用性ゾーンが動作している場合に想定される内容について説明します。

  • ゾーン間のトラフィック ルーティング: ゾーン冗長ロード バランサーは、受信要求を Grafana サーバーに自動的に分散します。 両方のサーバーでトラフィックを処理できます。

  • ゾーン間のデータ レプリケーション: ワークスペースのデータに対する変更は、複数の可用性ゾーン間で同期的にレプリケートされます。 データ レプリケーションは、Azure Database for PostgreSQLによって実行されます。 詳細については、「reliability in Azure Database for PostgreSQL」を参照してください。 Azure Managed Grafanaでは、データベース プラットフォームが提供する以外の追加のカスタム レプリケーション ロジックは実装されません。

ゾーン障害時の動作

このセクションでは、ワークスペースがゾーン冗長に構成されていて、可用性ゾーンが使用できなくなった場合に想定される内容について説明します。

  • Detection and response:Azure プラットフォームは可用性ゾーンの障害を検出して応答します。 ゾーンのフェールオーバーを開始する必要はありません。
  • 通知: ゾーンがダウンしても、Microsoft から自動的に通知されることはありません。 ただし、Azure Resource Health を使用して個々のリソースの正常性を監視したり、Resource Healthアラートを設定して問題を通知することができます。 また、Azure Service Health を使用して、ゾーンエラーを含むサービスの全体的な正常性を把握し、Service Health アラートを設定して問題を通知することもできます。
  • 予想されるデータ損失: 可用性ゾーンの停止中にデータ損失が発生することは想定されません。

  • 予想されるダウンタイム: ワークスペースでは、トラフィックが正常なサーバーに再ルーティングされる間、ダウンタイムが少なく、通常は数秒に制限される場合があります。 ダウンタイムの影響を最小限に抑えるために、クライアント アプリケーションが 一時的な障害 を適切に処理するようにします。

  • トラフィックの再ルーティング: 受信トラフィックは、正常なゾーン内のサーバーに自動的にルーティングされます。 サービスは、ゾーンの停止中に容量を減らして実行されます。 障害が発生しても、代替サーバーは正常なゾーンにプロビジョニングされません。

ゾーンの回復

Microsoft は、影響を受けるゾーンが再び正常になったときのサービス容量の復元など、ゾーンの回復を自動的に管理します。

ゾーンエラーのテスト

Azure プラットフォームは、ゾーン冗長ワークスペースのトラフィック ルーティング、フェールオーバー、フェールバックを管理します。 この機能はフル マネージドであるため、可用性ゾーンの障害プロセスを開始または検証する必要はありません。

リージョン全体の障害に対する回復性

Azure Managed Grafanaは単一リージョン サービスです。 リージョンが使用できない場合は、ワークスペースも使用できません。

回復性のためのカスタム マルチリージョン ソリューション

リージョンの障害に対する回復性を実現するには、複数の Grafana ワークスペースを異なるリージョンにデプロイします。 この種類のソリューションでは、次の責任を負います。

  • ダッシュボードのレプリケーションとリージョン間の構成。 たとえば、CI/CD とソース管理を使用して、複数のワークスペースに一貫性のある構成を適用できます。
  • アプリケーションまたはクライアント レベルでのトラフィック ルーティングとフェールオーバーの実装。

バックアップと復元

Azure Managed Grafanaでは、ダッシュボードやその他のデータ プレーン エンティティの組み込みのバックアップまたは復元機能は提供されません。 誤った削除や破損から保護するには:

  • Grafana API または CLI を使用して、ダッシュボードやその他の Grafana 構成をエクスポートします。
  • エクスポートされたダッシュボードをソース管理リポジトリ (GitHub など) に格納します。
  • 自動化または CI/CD パイプラインを使用して、ダッシュボードやその他の Grafana 構成を再デプロイします。

ほとんどのソリューションでは、バックアップのみに依存しないでください。 代わりに、このガイドで説明されている他の機能を使用して、回復性の要件をサポートします。 ただし、バックアップでは、他の方法では行わないリスクから保護されます。 詳細については、「冗長性、レプリケーション、バックアップとは」を参照してください。

サービス メンテナンスに対する回復性

Microsoft は定期的にサービス更新プログラムを適用し、その他のメンテナンスを実行します。 Azure プラットフォームは、これらのアクティビティを自動的に処理し、メンテナンスがシームレスで透過的であることを保証します。 メンテナンス操作中に、短時間の中断が発生する場合があります。 通常、これらの中断は数秒続く。 一 時的な障害 を処理するようにクライアント アプリケーションが構成されていることを確認して、短時間の中断に対する回復性を確保します。

サービス水準合意書

Azure サービスのサービス レベル アグリーメント (SLA) では、各サービスの予想される可用性と、その可用性の期待を達成するためにソリューションが満たす必要がある条件について説明します。 詳細については、オンラインサービスのサービスレベルアグリーメント (SLA) を参照してください。