負荷分散について
負荷分散という用語は、受信ネットワーク ワークロードをバックエンド コンピューティング リソースまたはサーバーのグループに均等に分散することを指します。 負荷分散は、リソースの使用を最適化し、スループットを最大化し、応答時間を最小化し、1 つのリソースの過負荷を回避することを目的としています。 負荷分散では、冗長コンピューティング リソース間でワークロードを共有することで、可用性を向上させることもできます。
このビデオでは、負荷分散ソリューションを選択する方法について説明します。
Azure の負荷分散オプション
Azure には、ワークロードを複数のコンピューティング リソースに分散するために使用できるさまざまな負荷分散サービスが用意されていますが、主なサービスは次のとおりです。
- Azure Load Balancer。 すべての UDP プロトコルと TCP プロトコルに対する、高パフォーマンスで超低遅延のレイヤー 4 負荷分散サービス (受信と送信)。 ロード バランサーは、ソリューションの高可用性を保証しながら、1 秒あたり数百万の要求を処理できます。 Azure Load Balancer はゾーン冗長であり、可用性ゾーン間の高可用性を確保します。
- Traffic Manager。 高可用性と応答性を提供しながら、グローバルな Azure リージョン間でサービスに最適にトラフィックを分散できるようにする DNS ベースのトラフィック ロード バランサー。 Traffic Manager は DNS ベースの負荷分散サービスであるため、負荷分散はドメイン レベルでのみ行われます。 そのため、Front Door ほど迅速にフェールオーバーすることはできません。
- Azure Application Gateway。 サービスとしてのアプリケーション配信コントローラー (ADC) を提供し、さまざまなレイヤー 7 負荷分散機能を提供します。 これを使用して、CPU を集中的に使用する SSL 終了をゲートウェイにオフロードし、Web ファームの生産性を最適化できます。
- Azure Front Door。 Web アプリケーションのグローバル負荷分散とサイト アクセラレーション サービスを提供するアプリケーション配信ネットワーク。 アプリケーションにレイヤー 7 の機能を提供します。 Front Door には、SSL オフロード、パスベースのルーティング、高速フェールオーバー、キャッシュが含まれます。
負荷分散サービスの分類
負荷分散サービスは、グローバルかリージョンか、また HTTP(S) か非 HTTP(S) かという 2 つの方法で分類できます。
グローバルかリージョンか
グローバル 負荷分散サービスは、リージョンのバックエンド、クラウド、またはハイブリッド オンプレミス サービス間でトラフィックを分散します。 これらのサービスは、エンドユーザーのトラフィックを、最も近い使用可能なバックエンドにルーティングします。 また、サービスの信頼性やパフォーマンスの変化にも対応します。 異なるリージョン/地理的地域にまたがってホストされているアプリケーションのスタンプ、エンドポイント、またはスケール ユニット間で負荷を分散するシステムと考えることができます。
これに対し、 リージョン 負荷分散サービスは、仮想ネットワーク内のトラフィックを、リージョン内の仮想マシン (VM) またはゾーン冗長およびゾーン冗長サービス エンドポイントに分散します。 仮想ネットワークにあるリージョン内の VM、コンテナー、またはクラスター間で負荷を分散するシステムと考えることができます。
HTTP(S) か非 HTTP(S) か
HTTP(S) 負荷分散サービスは、HTTP(S) トラフィックのみを受け入れるレイヤー 7 ロード バランサーです。 Web アプリケーションまたはその他の HTTP(S) エンドポイントを対象としています。 SSL オフロード、Web アプリケーション ファイアウォール、パスベースの負荷分散、セッション アフィニティなどの機能が含まれます。
これに対し、 HTTP(S) 以外の 負荷分散サービスは HTTP(S) 以外のトラフィックを処理でき、Web 以外のワークロードに推奨されます。
重要
このモジュールでは、非 HTTP(S) ソリューションに焦点を当てています。
この表では、これらの分類に基づいて各 Azure 負荷分散サービスをまとめています。
| サービス | グローバル/リージョン | 推奨されるトラフィック |
|---|---|---|
| Azure Front Door | グローバル | HTTP(S) |
| Traffic Manager | グローバル | 非 HTTP(S) |
| Application Gateway | リージョン | HTTP(S) |
| Azure Load Balancer | リージョン | 非 HTTP(S) |
Azure の負荷分散オプションの選択
負荷分散オプションを決定する主な要因を次に示します。
- トラフィックの種類 - Web アプリケーション用ですか? 公開されているアプリケーションか、非公開のアプリケーションか?
- スコープ - 仮想ネットワーク内の仮想マシンとコンテナーを負荷分散するか、リージョン間で負荷分散するか、またはその両方を負荷分散する必要がありますか?
- 可用性 - サービスのサービス レベル アグリーメント (SLA) は何ですか?
- コスト - 実際のサービス自体のコストに加えて、運用コストを考慮して、そのサービスに基づいて構築されたソリューションを管理および維持します。 負荷分散の価格を参照してください。
- 機能と制限事項 - 各サービスはどのような機能と利点を提供し、その制限事項は何ですか? ロード バランサーの制限を参照してください。
この フローチャート は、アプリケーションに最適な負荷分散ソリューションを選択するのに役立ちます。
ヒント
このフローチャートと推奨される推奨事項は、開始点としてのみ使用してください。 完成したソリューションには、2 つ以上の負荷分散ソリューションを組み込むことができます。
Azure portal を使用した負荷分散ソリューションの選択
Azure portal の [Azure 負荷分散 ] ページを使用すると、負荷分散ソリューションのガイドに役立ちます。 [負荷分散 - 選択に関するヘルプ] を検索して選択します。 ウィザードでは、負荷分散ソリューションを選択するための対話型の方法が提供されます。