次の方法で共有


ミッションクリティカルなワークロードのネットワーキングと接続性

ミッション クリティカルなアーキテクチャでのリソースのリージョン分散には、堅牢なネットワーク インフラストラクチャが必要です。

可用性の高いアプリケーションを提供するために、Azure サービスをまとめるグローバル分散設計をお勧めします。 グローバル ロード バランサーとリージョン スタンプを組み合わせることで、信頼性の高い接続を保証できます。

ミッション クリティカルなワークロードのデプロイ可能なユニットとして、リージョンデプロイ スタンプを設計します。 新しいデプロイ スタンプを効率的にデプロイする機能により、スケーラビリティが提供され、高可用性がサポートされます。 分離 された仮想ネットワーク設計でデプロイ スタンプを設計します。 クロススタンプ トラフィックはお勧めしません。 デプロイ スタンプ間の仮想ネットワーク ピアリングまたは VPN 接続は必要ありません。

このアーキテクチャは、リージョン スタンプを有効期間が短いものとして定義することを意図的に行っています。 インフラストラクチャのグローバル状態は、グローバル リソースに格納されます。

正常なスタンプにトラフィックをルーティングし、セキュリティ サービスを提供するには、グローバル ロード バランサーが必要です。 特定の機能が必要です。

  • トラフィックをルーティングする前にロード バランサーで配信元の正常性を確認できるように、正常性プローブを行う必要があります。

  • 重み付けトラフィック分散。

必要に応じて、エッジでキャッシュを実行できる必要があります。 また、Web アプリケーション ファイアウォール (WAF) を使用して、イングレスのセキュリティ保証を提供します。

ミッション クリティカルなアーキテクチャのネットワークの図。

このアーキテクチャの Visio ファイル をダウンロードします。

トラフィック イングレス

アーキテクチャで定義されているアプリケーションはインターネットに接続されており、いくつかの要件があります。

  • グローバルで、独立したリージョン スタンプ間でトラフィックを分散できるルーティング ソリューション。

  • 正常性チェックの待機時間が短く、異常なスタンプへのトラフィックの送信を停止する機能。

  • エッジでの悪意のある攻撃の防止。

  • エッジでキャッシュ機能を提供します。

ミッション クリティカルなワークロードのエントリ ポイントとして、すべてのトラフィックを Azure Front Door 経由でルーティングします。 Front Door は、登録済みのバックエンド/配信元に HTTP(S) トラフィックをルーティングするグローバル ロード バランサーです。 バックエンド/オリジンの各 URI にリクエストを発行するヘルスプローブを使用するように Front Door を構成します。 呼び出す URI は、専用のヘルスサービスである必要があります。 ヘルスサービスは、各デプロイスタンプの健康状態を告知します。 Front Door は応答を使用して、個々のデプロイ スタンプの正常性を判断し、アプリケーション要求にサービスを提供できる正常なスタンプにトラフィックをルーティングします。

Azure Front Door と Azure Monitor の統合により、トラフィック、セキュリティ、成功と失敗のメトリック、アラートのほぼリアルタイムの監視が提供されます。

Azure Front Door と統合された Azure Web Application Firewall は、ネットワークに入る前にエッジで攻撃を防ぐために使用されます。

重要なワークロードのネットワーク イングレスの図。

分離された仮想ネットワーク - API

ミッション クリティカルな API のトラフィック分離境界として Azure Virtual Networks を使用します。 ある仮想ネットワーク内のコンポーネントは、別の仮想ネットワーク内のコンポーネントと直接通信することはできません。

標準の外部 Azure Load Balancer は、アプリケーション プラットフォームに要求を分散します。 ロード バランサーに到達するトラフィックが Azure Front Door 経由でルーティングされたことが確認され、Azure WAF ですべてのトラフィックが検査されます。

運用とデプロイに使用されるビルド エージェントは、分離されたネットワークに到達できる必要があります。 分離されたネットワークを開き、エージェントが通信できるようにします。 または、仮想ネットワークにセルフホステッド エージェントをデプロイします。

ネットワーク スループットの監視、個々のコンポーネントのパフォーマンス、アプリケーションの正常性が必要です。

アプリケーション プラットフォームの通信の依存関係

次の通信要件を使用して、個々のスタンプのアプリケーション プラットフォームを設計します。

  • アプリケーション プラットフォームは、Microsoft PaaS サービスと安全に通信できる必要があります。

  • アプリケーション プラットフォームは、必要に応じて他のサービスと安全に通信できる必要があります。

Azure Key Vault を使用して、接続文字列や API キーなどのシークレットを格納し、インターネット経由で Azure PaaS サービスと安全に通信します。 この通信のためにインターネット経由でアプリケーション プラットフォームを公開するリスクが考えられます。 シークレットが侵害される可能性があり、パブリック エンドポイントのセキュリティと監視を強化することをお勧めします。

アプリケーション プラットフォームの通信依存関係の図。

ネットワークの拡張に関する考慮事項

このセクションでは、ネットワーク設計に対する代替アプローチの長所と短所について説明します。 次のセクションでは、ネットワークに関する別の考慮事項と Azure プライベート エンドポイントの使用に重点を置いて説明します。

サブネットとネットワーク セキュリティ グループ

仮想ネットワーク内のサブネットを使用して、設計内のトラフィックをセグメント化できます。 サブネットの分離により、さまざまな関数のリソースが分離されます。

ネットワーク セキュリティ グループは、各サブネットとの間で許可されるトラフィックを制御します。 ネットワーク セキュリティ グループ内で使用される規則では、IP、ポート、プロトコルに基づいてトラフィックが制限され、サブネットに出入りする不要なトラフィックがブロックされます。

プライベート エンドポイント - イングレス

Premium バージョンの Front Door では、Azure プライベート エンドポイントの使用がサポートされています。 プライベート エンドポイントは、仮想ネットワーク内のプライベート IP アドレスに Azure サービスを公開します。 接続は、トラフィックをパブリック エンドポイントにルーティングする必要なく、サービス間で安全かつプライベートに行われます。

Azure Front Door Premium と Azure プライベート エンドポイントでは、個々のスタンプで完全プライベート コンピューティング クラスターが有効になります。 トラフィックは、すべての Azure PaaS サービスに対して完全にロックダウンされます。

プライベート エンドポイントを使用すると、ミッション クリティカルなワークロードのセキュリティが向上します。 アプリケーション展開スタンプはパブリック エンドポイントを公開する必要はありません。プライベート エンドポイントを使用すると、DDoS 攻撃を含むネットワーク攻撃のリスクが軽減されます。 ただし、別の障害点が発生します。

セキュリティの強化は、信頼性の労力、コスト、複雑さの増加と比較して検討する必要があります。

デプロイ スタンプのプロビジョニングには、セルフホステッド ビルド エージェントを使用します。 これらのエージェントの管理には、メンテナンスのオーバーヘッドが伴います。

プライベート エンドポイントを使用したミッション クリティカルなワークロードのネットワーク イングレスの図。

プライベート エンドポイント - アプリケーション プラットフォーム

プライベート エンドポイントは、ミッション クリティカルなワークロードに推奨されるすべての Azure PaaS サービスでサポートされます。 アプリケーション プラットフォーム用に構成されたプライベート エンドポイントでは、すべての通信がスタンプの仮想ネットワークを経由します。

個々の Azure PaaS サービスのパブリック エンドポイントは、パブリック アクセスを禁止するように構成できます。 このプロセスにより、信頼性と可用性に影響を与えるダウンタイムと調整を引き起こす可能性があるパブリック攻撃からリソースが分離されます。

デプロイ スタンプ操作には、セルフホステッド ビルド エージェントを使用します。 これらのエージェントの管理には、メンテナンスのオーバーヘッドが伴います。

プライベート エンドポイントとのアプリケーション プラットフォーム通信の依存関係の図。

次の手順