リソースの冗長性により高可用性システムを構築する

Last reviewed 2024-12-30 UTC

Well-Architected Framework の信頼性の柱におけるこの原則では、リソースの冗長性を計画、構築、管理するうえで役に立つ推奨事項が示されています。これにより、障害を回避できます。Google Cloud

この原則は、信頼性のスコープ設定 重点分野 に関連しています。

原則の概要

必要な信頼性のレベルを決定したら、単一障害点を回避するようにシステムを設計する必要があります。システムのすべての重要なコンポーネントは、複数の マシン、ゾーン、および リージョンに複製する必要があります。 たとえば、重要なデータベースを 1 つのリージョンにのみ配置することはできません。また、メタデータ サーバーを 1 つのゾーンまたはリージョンにのみデプロイすることはできません。これらの例では、唯一のゾーンまたはリージョンで停止が発生すると、システムがグローバルに停止します。

推奨事項

冗長システムを構築するには、次のサブセクションの推奨事項を検討してください。

障害発生ドメインを特定してサービスを複製する

個々の VM からリージョンまで、システムの 障害発生ドメインをマッピングし、障害発生ドメイン全体で冗長性を確保するように設計します。

高可用性を実現するには、サービスとアプリケーションを複数のゾーンとリージョンに分散して複製します。ゾーンまたはリージョンの停止が発生した場合でも、サービスとアプリケーションを引き続き利用できるように、自動フェイルオーバー用にシステムを構成します。

マルチゾーン アーキテクチャとマルチリージョン アーキテクチャの例については、 のワークロードに適した信頼性の高いインフラストラクチャを設計する Google Cloudをご覧ください。

問題を迅速に検出して対処する

障害発生ドメインのステータスを継続的に追跡して、問題を迅速に検出して対処します。

Service Health ダッシュボードを使用すると、すべてのリージョンの サービスの現在のステータスをモニタリングできます。 Google Cloud Google Cloud また、 Personalized Service Health を使用して、プロジェクトに関連するインシデントを参照することもできます。 ロードバランサを使用してリソースの健全性を検出し、正常なバックエンドにトラフィックを自動的に転送できます。詳細については、 ヘルスチェックの概要をご覧ください。

フェイルオーバー シナリオをテストする

避難訓練と同様に、障害を定期的にシミュレートして、レプリケーションとフェイルオーバーの戦略の有効性を検証します。

詳細については、 リージョン MIG のゾーンの停止をシミュレーションする および GKE リージョン クラスタでゾーン障害をシミュレートするをご覧ください。