Azure Proactive Resiliency Library v2
Tools Glossary GitHub GitHub Issues Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Design

The presented Microsoft Azure Well-Architected Framework recommendations in this guidance include Reliability Stage “2 - Design (Workload Design)” and associated resources and their settings.

In this Stage, the architecture and design decisions are made to meet the requirements defined earlier. Best practices for resilient and scalable systems are implemented, often including redundancy, failover strategies, and load balancing. In this phase failure mode and point analysis are coordinated in order to identify and mitigate possible failures, and single points of failures.

Summary

RecommendationImpactCategoryPG Verified
アプリケーションを複数のゾーンにデプロイすることを検討してくださいHighHigh AvailabilityVerified
アプリケーションを複数のリージョンにデプロイすることを検討してくださいHighDisaster RecoveryVerified
すべての障害点と障害モードが理解され、運用可能であることを確認するHighHigh AvailabilityVerified
IaaS の代わりに PaaS Azure サービスを使用するMediumScalabilityVerified
スケールアウトするようにアプリケーションを設計するHighScalabilityVerified
Microsoft Cloud 導入フレームワークに従ってワークロードのランディング ゾーンを作成するLowGovernanceVerified
ビジネス要件を満たすのに役立つ BCDR 戦略を設計するHighDisaster RecoveryVerified
ID管理によるセキュリティ保証の提供MediumSecurityVerified
セキュリティリスクに対処することで、漏洩によるダウンタイムとデータ損失を最小限に抑えます。HighSecurityVerified

Details


アプリケーションを複数のゾーンにデプロイすることを検討してください

Impact:  High Category:  High Availability PG Verified:  Verified

Description:

リージョン内の可用性ゾーンを使用するようにアプリケーション アーキテクチャを設計します。可用性ゾーンを使用すると、データセンターレベルのフォールトトレランスを提供することで、リージョン内のアプリケーションの可用性を最適化できます。ただし、ゾーンを効果的に使用するには、アプリケーション アーキテクチャがゾーン間で依存関係を共有してはなりません。

アプリケーションのパフォーマンス上の理由から、コンポーネントの近接性が必要かどうかを検討してください。アプリケーションのすべてまたは一部が遅延の影響を非常に受けやすい場合、コンポーネントを同じ場所に配置する必要がある場合があり、これによりマルチリージョンおよびマルチゾーン戦略の適用が制限される可能性があります。

Potential Benefits:

Enhanced app availability and fault tolerance
Learn More:
Use Availability Zones


アプリケーションを複数のリージョンにデプロイすることを検討してください

Impact:  High Category:  Disaster Recovery PG Verified:  Verified

Description:

アプリケーションが単一のリージョンにデプロイされている場合、そのリージョンが使用できなくなると、アプリケーションも使用できなくなります。これは、アプリケーションの SLA 条件では受け入れられない可能性があります。

その場合は、アプリケーションとそのサービスを複数のリージョンにデプロイすることを検討してください。マルチリージョン展開では、アクティブ/アクティブ構成またはアクティブ/パッシブ構成を使用できます。

アクティブ/アクティブ構成では、リクエストが複数のアクティブなリージョンに分散されます。アクティブ/パッシブ構成では、セカンダリ リージョンにウォーム インスタンスが保持されますが、プライマリ リージョンに障害が発生しない限り、セカンダリ リージョンにトラフィックは送信されません。

Potential Benefits:

Enhances app availability and SLA compliance
Learn More:
Design reliable Azure applications
Cross-region replication in Azure Business continuity and disaster recovery


すべての障害点と障害モードが理解され、運用可能であることを確認する

Impact:  High Category:  High Availability PG Verified:  Verified

Description:

すべての障害点と障害モードが理解され、運用可能であることを確認します。

障害モード分析 (FMA) は、システム内の潜在的な障害点を特定することにより、システムに回復力を構築するプロセスです。 FMA は、最初からシステムに障害回復機能を組み込むことができるように、アーキテクチャおよび設計フェーズの一部である必要があります。

すべての障害点と障害モードを特定します。障害点は、障害が発生する可能性のあるアプリケーション アーキテクチャ内の要素を記述します。一方、障害モードは、障害点が障害を起こすさまざまな方法をキャプチャします。アプリケーションがエンドツーエンドの障害に対して確実に回復できるようにするには、すべての障害点と障害モードを理解し、運用できることが重要です。

Potential Benefits:

Enhanced system resiliency
Learn More:
Failure mode analysis for Azure applications


IaaS の代わりに PaaS Azure サービスを使用する

Impact:  Medium Category:  Scalability PG Verified:  Verified

Description:

PaaS は、アプリを開発および実行するためのフレームワークを提供します。 IaaS と同様に、PaaS プロバイダーはプラットフォームのサーバー、ネットワーク、ストレージ、その他のコンピューティング リソースをホストし、維持します。ただし、PaaS には、Web アプリケーションのライフサイクルをサポートするツール、サービス、システムも含まれています。

開発者はこのプラットフォームを使用して、バックアップ、セキュリティ ソリューション、アップグレード、その他の管理タスクを管理することなくアプリを構築できます。

Potential Benefits:

Saves time, enhances security, simplifies app lifecycle
Learn More:
Use platform as a service (PaaS) options


スケールアウトするようにアプリケーションを設計する

Impact:  High Category:  Scalability PG Verified:  Verified

Description:

Azure は柔軟なスケーラビリティを提供するため、スケールアウトするように設計する必要があります。ただし、アプリケーションはスケール ユニット アプローチを活用してサービスとサブスクリプションの制限を乗り越え、個々のコンポーネントとアプリケーション全体が水平方向に拡張できるようにする必要があります。コスト削減にはスケールインを忘れないでください。

たとえば、App Service のスケールインとスケールアウトはルールによって行われます。多くの場合、お客様はスケール アウト ルールを作成し、スケール イン ルールをまったく作成しないため、App Service のコストが高くなります。

Potential Benefits:

Enhances scalability and cost efficiency
Learn More:
Design to scale out


Microsoft Cloud 導入フレームワークに従ってワークロードのランディング ゾーンを作成する

Impact:  Low Category:  Governance PG Verified:  Verified

Description:

ワークロードの観点から見ると、ランディング ゾーンは、アプリケーションがデプロイされる準備されたプラットフォームを指します。ランディング ゾーンの実装には、コンピューティング、データ ソース、アクセス制御、およびネットワーキング コンポーネントがすでにプロビジョニングされている場合があります。必要な配管が所定の位置に準備されていること。ワークロードをそれに接続する必要があります。全体的なセキュリティを考慮すると、ランディング ゾーンはワークロードの脅威軽減レイヤーを追加する一元化されたセキュリティ機能を提供します。

実装はさまざまですが、セキュリティ体制を強化する一般的な戦略をいくつか紹介します。
- セグメンテーションによる分離。 Azure の登録から、ワークロードのリソースを含むサブスクリプションまで、いくつかのレイヤーで資産を分離できます。
- 組織ポリシーを一貫して導入し、Azure Policy を通じてサービスとその構成の作成と削除を強制します。
- ゼロトラストの原則に沿った構成。たとえば、実装にはオンプレミス データ センターへのネットワーク接続が含まれる場合があります。

Potential Benefits:

Enhances security and speeds deployment
Learn More:
Azure landing zone integration


ビジネス要件を満たすのに役立つ BCDR 戦略を設計する

Impact:  High Category:  Disaster Recovery PG Verified:  Verified

Description:

災害復旧は、壊滅的な損失の後にアプリケーションの機能を復元するプロセスです。クラウド環境では、障害が発生することを事前に認識しています。障害を完全に防止しようとするのではなく、単一のコンポーネントに障害が発生した場合の影響を最小限に抑えることが目標です。

テストは、これらの影響を最小限に抑える 1 つの方法です。可能な場合はアプリケーションのテストを自動化する必要がありますが、失敗した場合に備えておく必要もあります。障害が発生した場合、バックアップとリカバリの戦略を立てることが重要になります。災害時の機能低下に対する許容度はビジネス上の決定であり、アプリケーションごとに異なります。

一部のアプリケーションが一時的に利用できなくなったり、機能が低下したり処理が遅延したりして部分的に利用可能になったりすることは許容される場合があります。他のアプリケーションでは、機能の低下は受け入れられません。

キーポイント:

- 主要な障害シナリオを使用して、災害復旧計画を定期的に作成し、テストします。
- ほとんどのアプリケーションを機能を制限して実行できるように災害復旧戦略を設計します。
- ビジネス要件とアプリケーションの状況に合わせたバックアップ戦略を設計します。
- フェイルオーバーとフェイルバックのステップとプロセスを自動化します。
- フェイルオーバーとフェイルバックのアプローチが少なくとも 1 回は正常にテストおよび検証されます。

Potential Benefits:

Minimizes disaster impact, ensures operational continuity
Learn More:
Backup and disaster recovery for Azure applications


ID管理によるセキュリティ保証の提供

Impact:  Medium Category:  Security PG Verified:  Verified

Description:

ID 管理を通じてセキュリティを保証します。つまり、セキュリティ プリンシパルを認証および認可するプロセスです。 ID 管理サービスを使用して、ユーザー、パートナー様、お客様、アプリケーション、サービス、その他のエンティティを認証し、権限を付与します。 ID 管理は通常、ワークロード アーキテクチャの一部としてワークロード チームによって制御されない集中機能です。

- 各機能の明確な責任範囲と職務の分離を定義します。必知事項と最小権限のセキュリティ原則に基づいてアクセスを制限します。
- Azure RBAC を通じて、特定のスコープでユーザー、グループ、アプリケーションにアクセス許可を割り当てます。可能な場合は、組み込みの役割を使用してください。
- 管理ロックによるリソース、リソース グループ、またはサブスクリプションの削除または変更を防止します。
- マネージド ID を使用して Azure のリソースにアクセスします。

Potential Benefits:

Enhanced access control and security
Learn More:
Azure identity and access management considerations


セキュリティリスクに対処することで、漏洩によるダウンタイムとデータ損失を最小限に抑えます。

Impact:  High Category:  Security PG Verified:  Verified

Description:

セキュリティは、あらゆるアーキテクチャにおいて最も重要な側面の 1 つです。これにより、貴重なデータやシステムの意図的な攻撃や悪用に対して、機密性、完全性、可用性が保証されます。
複雑なシステムのセキュリティは、ビジネス コンテキスト、社会的コンテキスト、および技術的コンテキストの理解に依存します。システムを設計する際には、次の領域をカバーしてください。

- ID プロバイダー (AAD/ADFS/AD/その他) が高可用性であり、アプリケーションの可用性と回復ターゲットと一致していることを確認します。
- すべての外部アプリケーション エンドポイントはセキュリティで保護されています。
- 仮想ネットワーク サービス エンドポイントまたはプライベート リンクを使用して保護された Azure PaaS サービスへの通信。
- キーとシークレットは地理的冗長ストレージにバックアップされ、フェイルオーバーの場合でも引き続き使用できます。
- キーのローテーションのプロセスが自動化され、テストされていることを確認します。
- 緊急アクセス ブレークグラス アカウントは、アイデンティティ プロバイダーの障害シナリオから回復できるようにテストされ、保護されています。

Potential Benefits:

Minimizes downtime and data loss
Learn More:
Security design principles