AI総合研究所

SHARE

X(twiiter)にポストFacebookに投稿はてなブックマークに登録URLをコピー

Azure Application Gatewayとは?その仕組みや機能、料金体系を徹底解説

この記事のポイント

  • Azure Application Gatewayは、Webアプリケーションの負荷分散とセキュリティを強化する統合ソリューション
  • URLベースルーティング、WAF、SSLオフロードなど、高度な機能で安定したアプリケーション運用を実現
  • 自動スケーリングとゾーン冗長性で、高可用性とパフォーマンスを確保
  • Azure Monitor連携による詳細な監視と分析が可能
  • 従量課金制で、ニーズに合わせた柔軟なスケーリングとコスト最適化を実現

監修者プロフィール

坂本 将磨

Microsoft AIパートナー、LinkX Japan代表。東京工業大学大学院で技術経営修士取得、研究領域:自然言語処理、金融工学。NHK放送技術研究所でAI、ブロックチェーン研究に従事。学会発表、国際ジャーナル投稿、経営情報学会全国研究発表大会にて優秀賞受賞。シンガポールでのIT、Web3事業の創業と経営を経て、LinkX Japan株式会社を創業。

ウェブアプリケーションの運用にあたり、負荷の分散やセキュリティの強化は避けて通れない課題です。
そこで活用されるのがMicrosoft Azureの「Azure Application Gateway」です。

本記事では、Application Gatewayの特徴やメリット、料金体系を徹底解説し、安定したアプリケーションの提供を支援する機能の全体像を紐解いていきます。
URLパスやホスト名に基づいたルーティング、Web Application Firewall (WAF) による攻撃からの保護、SSLオフロードによるパフォーマンスの向上など、Webアプリケーションを効率良く運用するための要素を豊富に備えています。

Azureを使ったインフラ構築や運用の最適化を検討している方は必見の内容です。

Azure Application Gatewayとは?【仕組み・機能・メリット・料金体系を徹底解説】

Azure Application Gatewayは、Microsoft Azureが提供するアプリケーションレベルのロードバランサーです。Webアプリにアクセスが集中しても、トラフィックを複数のサーバーに振り分けて、安定した動作とセキュリティ強化を実現します。

通常のロードバランサーは、アプリケーション全体へのトラフィックを分配するだけですが、Application Gateway は Web サイト内の細かいルールに従って、特定のページや内容ごとにアクセスを分けることができます。例えば、URLパスやホスト名ごとに細かい制御が可能です。

AzureApplicationGatewayイメージ図
AzureApplicationGatewayイメージ図

Webアプリケーションの運用では、安定した稼働とセキュリティ対策が欠かせません。Webアプリケーションのトラフィックを細かく管理し、最適なサーバーに分配することで、安定した稼働とセキュリティの向上に役立つApplication Gatewayについて今回解説します。

Azure Application Gatewayの概要

まず最初に、Azure Application Gatewayの概要についてご紹介します。

ロードバランサーとは?

Azure Application Gateway は、Microsoft Azure が提供するロードバランサーサービスの1つです。では、そもそもロードバランサ―とは何でしょうか。

ロードバランサーとは、複数のサーバーにトラフィックを分散し、システムの負荷を効率よく管理して、安定した動作を保つための装置やサービスです。

ただ通常のロードバランサーは、ネットワークレベルでトラフィックを分散する仕組みになっていますが、以下の図のようにAzure Application Gatewayはレイヤ7のアプリケーション層で動作するという違いがあります。

AzureApplicationGatewayの動作イメージAzureApplicationGatewayの動作イメージ

Azure Application Gatewayの特徴

Azure Application Gatewayには、以下の特徴があります。

Azure Application Gatewayの機能Azure Application Gatewayの機能

細かな制御が可能
アプリケーション層で動作するため、リクエストの内容を理解し、URLパスやホスト名に基づいてルーティングが可能です。

高可用性とスケーラビリティ
リクエスト内容に基づいて各サーバーに適切なトラフィックを割り当てることができるため、特定のリソースに負荷が集中しにくく、安定性が向上します

追加機能
セキュリティを強化する以下のWeb Application Firewall (WAF) や、SSL暗号化を軽減するSSLオフロードなどが提供されています。

  • Web Application Firewall (WAF)
    アプリケーション層でのセキュリティを強化するための機能で、WebアプリケーションをSQLインジェクションやクロスサイトスクリプティングなどの攻撃から保護します。

  • SSLオフロード
    SSLオフロードは、サーバーにかかるSSL/TLS(暗号化)の負荷を軽減する機能です。通常、WebアプリケーションがHTTPSで通信する際、サーバーは通信データを暗号化・復号化する必要がありますが、これはサーバーにとって負荷のかかる作業です。SSLオフロードを使うと、この暗号化・復号化の処理をApplication Gateway側で行うため、サーバーの負担が軽減され、パフォーマンスが向上します。

WAFについてはこちらの記事もご覧ください。
➡️Azure WAFとは?主な機能や料金体系、設定方法をわかりやすく解説

Azure Application Gatewayの仕組み

では、Azure Application GatewayはどのようにWebアプリケーションへのトラフィックを管理しているのでしょうか。このセクションでは、Azure Application Gatewayの仕組みを、ロードバランサーとしての役割、そして重要な構成要素であるリスナー、ルール、バックエンドプールに焦点を当てて解説します。

ロードバランサーとしての役割

Azure Application Gateway はロードバランサーとしての役割を担います。つまり、クライアントからのリクエストを複数のサーバーに分散して処理することで、サーバーの負荷を軽減し、システムの安定性を高めます。

そのためあるサーバーが障害を起こしても、他のサーバーがその役割を補うため、Webアプリケーションが継続して動作することができます。

リスナー、ルール、バックエンドプール

Azure Application Gatewayには、リクエストの処理をするためのリスナー、ルール、バックエンドプールという3つの構成要素があります。以下、詳しくご説明します。

AzureApplicationGatewayロードバランサー機能イメージ
AzureApplicationGatewayロードバランサー機能イメージ

リスナー
クライアントからのリクエストを待ち受ける役割です。特定のポート番号やプロトコル(例: HTTP、HTTPS)を設定し、どのリクエストを受け付けるか決めます。SSL証明書も設定でき、セキュアな通信にも対応可能です。

ルール
リスナーで受信したリクエストを、どのサーバーに転送するかを決めるルールです。例えば、URLやホスト名、HTTPヘッダーの内容に基づいて振り分けるなど、さまざまな条件に合わせてリクエストを適切なサーバーへ送ります。

バックエンドプール
実際にリクエストを処理するサーバー群の集合で、リスナーとルールに基づいてここにリクエストが転送されます。例えば、Webアプリケーションの複数のサーバーがこのバックエンドプールに含まれ、負荷が均等に分散されるよう管理されます。


Azure Application Gatewayの主要機能

ここでは、Azure Application Gatewayの様々な機能についてご紹介します。

負荷分散

アクセスが集中してもバックエンドサーバーに負担がかかりすぎないように、ラウンドロビンや最小接続数といったアルゴリズムでトラフィックを分散します。

これにより、各サーバーがバランスよくリクエストを処理できるため、システム全体がスムーズに動きやすくなります。

SSLオフロード

SSLオフロード機能により、データの暗号化や復号化の処理をバックエンドサーバーではなくゲートウェイ側で行います。そのため、バックエンドサーバーの負担が軽くなり、処理が速くなります。

Web Application Firewall (WAF)

Azure Application GatewayにはWeb Application Firewall (WAF)機能があります。この機能により、SQLインジェクションやクロスサイトスクリプティングなどの攻撃からWebアプリケーションを保護することができます。

URLパスベースのルーティング

URLパスベースのルーティング機能とは、URLのパス(たとえば/imagesや/api)に応じて、リクエストを異なるバックエンドサーバーに振り分けることです。

たとえば、画像のリクエストは画像専用のサーバーに、データのリクエストはデータベースサーバーに振り分けるといった形での振り分けができるので、リクエスト内容に応じた最適な処理を行うことができます。

ホスト名ベースのルーティング

ホスト名ベースのルーティング機能は、リクエストされたホスト名(たとえば example1.com や example2.com)に応じて、異なるバックエンドサーバーに振り分ける機能です。

たとえば、example1.com はAサーバーに、example2.com はBサーバーに振り分けることができます。これにより、1つのゲートウェイで複数のドメインを管理でき、各ドメインごとに最適なバックエンドサーバーを割り当てることが可能です。

他のAzureサービスとの連携

Azure Application Gateway は、設定によりさまざまな Azure サービスと連携して使うことができます。たとえば、以下のサービスと組み合わせることで、より便利に Webアプリケーションを運用することができます。

Azure Kubernetes Service (AKS) との連携

Azure Kubernetes Service (AKS) は、Microsoft Azure が提供する、Kubernetes のフルマネージドサービスです。

Kubernetesとは、コンテナ化されたアプリケーションを自動でデプロイ、スケーリング、管理するためのオープンソースのプラットフォームで、AKSはこれを簡単に使えるようにしたクラウドサービスです。

Azure Application Gatewayを使うと、AKSクラスタ内のコンテナ化されたアプリケーションのトラフィックを管理することができます。

Azure Virtual Machines (VM) との連携

Azure Virtual Machines (VM) とは、Azureが提供するクラウド上の仮想マシンです。Azure Application Gatewayは、仮想マシン上で動作するアプリケーションのトラフィックを制御するのに役立ちます。

【関連記事】
➡️Azure Virtual Machines(VM)とは?料金体系やシリーズ毎の特徴を解説

Azure App Service との連携

Azure App Serviceとは、Azure上でWebアプリやAPIをサーバーやクラウド上に置き、ユーザーがインターネット経由でアクセスできるようにしたり(ホスト)・運用することができるサービスです。

Azure Application Gatewayと連携させることで、Azure App Service にホストされたWebアプリケーションのトラフィックを管理することができます。

Azure Application Gateway v1とv2の違い

Azure Application Gatewayには、v1とv2という2つのバージョンがあります。

V1は、基本的な負荷分散機能を提供し、固定のインスタンス数で動作します。パフォーマンスや柔軟なスケーリングが不要な環境向けです。(2026 年4月28日に廃止されます。)

V2は、パフォーマンスの向上に加え、v1にはない機能が充実しており、高可用性や効率的な負荷分散が必要な環境に適しています。

ここでは、V1と比べてV2はどのようにパフォーマンスや機能が強化されているのかについて解説します。

パフォーマンスの向上

V2は、V1より大幅にパフォーマンス高いバージョンです。データ処理が高速化され、負荷分散機能も最適化されているため、大量のトラフィックや接続数にもスムーズに対応できます。特に、動的なトラフィック変動が多いアプリケーションでは、V2の方が安定したパフォーマンスを提供するでしょう。

機能の追加

V2では、以下のさまざまな新機能が追加され、より柔軟で安全な運用が可能になっています。

WAF(Web Application Firewall)統合
V1では、WAFが別サービスとして提供されていましたが、v2ではWAF機能が直接統合されました。そのため別サービスとして管理する必要がなくなり、設定が容易になりました。

WAFについてはこちらをご覧ください。

自動スケーリング
トラフィックの変動に応じてインスタンス数を自動で調整できるようになりました。

静的VIP(固定IP)
静的なIPアドレスが提供されているので、再起動や構成変更後もIPが変わらずより安定した接続が可能です。

ゾーン冗長
複数の可用性ゾーンに対応するようになり、災害や障害発生時にも他のゾーンにフェールオーバーできるため、高い可用性を確保することができます。

【関連記事】
➡️Azureの可用性ゾーンとは?仕組みや可用性セットの違いをわかりやすく解説

デプロイメントモデルの違い

V1はクラシックデプロイメントモデルで、V2ではAzure Resource Manager (ARM)モデルで管理されています。以下にそれぞれのモデルの違いをご説明します。

クラシックデプロイメントモデル(V1で使用)
クラシックデプロイメントモデルは、Azureの初期からある管理方式で、リソースごとに個別に管理します。そのため、複数のリソースを一緒に管理したり、まとめて設定を適用したりするのが難しいという特徴があります。

また、クラシックモデルは他のAzureサービスとの統合が限られており、管理が複雑になりがちです。

Azure Resource Manager (ARM)モデル(V2で使用)
ARMモデルは、Azureのリソースをグループ単位で管理するための新しい管理方式です。ARMでは、複数のリソースを「リソースグループ」にまとめ、グループ全体に対してアクセス制御やセキュリティ設定を一括して適用できます。

V2で採用されたARMモデルは、リソースの管理が一元化されており、アクセス管理やセキュリティ設定を一貫して行うことができます。また、ARMテンプレートを用いることで、デプロイメントの自動化やリソースの再利用が容易になり、柔軟な管理も可能です。

Azure Application Gatewayの構築手順概要

このセクションでは、Azure Application Gatewayの構築手順の概要について解説します。

※ 前提準備
以下を用意する必要があります。

  • Azureアカウント、サブスクリプション、リソースグループ
  • Azure Virtual Network (VNet)(Bastion用のサブネットを含む)
  • パブリックIPアドレス
  • バックエンドプール
  1. Azureポータル画面の「リソースの作成」で「application gateway」で検索し、「Application Gateway」をクリックします。
    ApplicationGateway選択画面
    ApplicationGateway選択画面

  2. 「アプリケーションゲートウェイの作成画面」の基本設定を入力します。
    ApplicationGateway設定画面
    ApplicationGateway設定画面

  3. フロントエンドIPの構成方法を選択します。

フロントエンド画面フロントエンド画面


  1. バックエンドプールに、トラフィックを転送するサーバー群(例: 仮想マシンやApp Service)を追加します。
    バックエンドプール画面バックエンドプール画面


  2. ルールの設定で、リスナー、ルール、バックエンドプールを関連付けます。
    ルールの設定画面ルールの設定画面

必要に応じて、URLパスベースやホスト名ベースのルーティングルールを追加できます。

ルーティングルールの追加画面ルーティングルールの追加画面

  1. 作成の確認とデプロイ
    入力した情報を確認し、「確認および作成」をクリックして問題がなければ、「作成」をクリックします。

Application Gatewayのデプロイが開始され、作成が完了します。


Azure Application Gatewayの監視

Azure Application Gatewayを運用する上で、監視は非常に重要です。このセクションでは、Azure Monitor、診断ログなどを活用した監視方法について解説します。

Azure Monitor

Azure Monitorは、Azureのリソース(がどのように動いているかをリアルタイムで監視するサービスです。Azure Application Gatewayのデータを収集・分析することで、アプリケーションのパフォーマンスが低下している場合やエラーが増えている場合にすぐに確認して対処することができます。

Azure MonitorイメージAzure Monitorイメージ

Azure Monitorについてはこちらの記事もご覧ください。
➡️Azure Monitorとは?導入目的やメリット、料金体系を解説

診断ログ

診断ログは、Azure Application Gatewayがどのように動作しているかの詳細な記録です。Azure Application Gatewayの診断ログは、Azureポータルで確認できます。

例えば、特定のリクエストが失敗した場合やセキュリティの問題が発生した場合、その詳細な情報がログに残ります。このログを分析することで、問題の原因を特定したり、不審な動きを検出したりすることができます。


Azure Application Gatewayのベストプラクティス

ここでは、Azure Application Gatewayを効果的に活用するためのベストプラクティスを紹介します。

可用性ゾーンの利用

可用性ゾーンとは、Azureのデータセンターを地理的に分散させたエリアのことです。Application Gatewayを可用性ゾーンにまたがって展開することで、データセンターで障害が発生した場合でも、別のゾーンがバックアップとして動作し続け、システムの停止を防ぎます。

WAFの活用

WAFはWebアプリケーション向けのファイアウォール機能で、セキュリティを強化するための重要な機能です。WAFを有効化すると、SQLインジェクションやクロスサイトスクリプティングなどの攻撃からアプリケーションを保護できます。安全な運用を実現するため、WAFは積極的に活用するとよいでしょう。

適切なSKUの選択

Azure Application Gateway v2には、Basic、Standard、WAFなどのSKU(サービスプラン)があり、それぞれ機能や性能が異なります。アプリケーションのトラフィック量やセキュリティ要件に応じて最適なSKUを選ぶことで、無駄なコストを避け、必要な機能を確保できます。

なお以下が、3つのSKUの違いをまとめた表になります。

機能 Basic SKU Standard SKU WAF SKU
主な用途 小規模・基本的な負荷分散向け トラフィックの多いアプリ向け、スケーラビリティが必要なシステム向け 高度なセキュリティが必要なWebアプリ向け
負荷分散機能 基本的なレイヤー7負荷分散 高度なルーティング(URLベース、ホスト名ベース) 高度なルーティング(URLベース、ホスト名ベース)
自動スケーリング 非対応 V2で対応 V2で対応
可用性ゾーン 非対応 V2で対応 V2で対応
WAF(Web Application Firewall) 非対応 非対応 対応
セキュリティ機能 基本のみ 基本のみ WAFによる高度な保護
コスト 低コスト 中コスト 高コスト

例えば、セキュリティが重要な場合はWAF SKUを、基本的な負荷分散だけで良い場合はBasic SKUを選ぶなどニーズに応じた選択が可能です。


Azure Application Gatewayのユースケース

Azure Application Gatewayは、さまざまな場面でトラフィックを効果的に分散し、アプリケーションの可用性とパフォーマンスを向上させます。ここでは、代表的な活用場面を紹介します。

Webアプリケーションの負荷分散

Webアプリケーションのトラフィックを複数のWebサーバーに分散することで、アクセスが集中しても応答速度を維持し、システムが停止しにくくなります。そのため高可用性とスケーラビリティを確保でき、ユーザーは安定したサービスを利用できます。

APIの負荷分散

APIサーバーへのアクセスが増加しても、トラフィックを複数のAPIサーバーに分散することで、応答速度を維持し、可用性を向上させることができます。

また、API Gatewayと連携させることで、APIの管理やセキュリティ機能を強化することも可能です。

API Gatewayは、複数のAPIを集約し、外部クライアント(ユーザーや他のシステム)とAPIをつなぐ窓口となるシステムです。

マイクロサービスの負荷分散

マイクロサービスアーキテクチャとは、大規模なシステムやアプリケーションを、独立した小さなサービス(マイクロサービス)の集まりとして設計・開発する手法です。マイクロサービスアーキテクチャでは、各サービスは、特定の機能や業務ロジックを担当し、それぞれが独立して動作します。

Azure Application Gatewayを使って、各マイクロサービスへのトラフィックを均等に分散することで、システム全体が安定稼働しやすくなります。また、特定のサービスにアクセスが集中する場合でも、負荷分散によって過負荷を防ぎ、システムのパフォーマンスを維持できます。


Azure Application Gatewayの料金体系

ここでは、Azure Application Gatewayの利用料金についてご説明します。

Azure Application Gatewayの料金は、従量課金制ですが、V1とV2という2つのプランのどちらを選ぶかによって以下のように仕組みが異なっています。

1. V1 SKU

  • 基本料金: SKU、インスタンスのサイズ(Small, Medium, Large)と稼働時間に基づく固定料金です。
  • データ処理量に応じた変動料金: データ処理量(GB単位)で追加料金が発生します。ある程度のデータ量までは無料の範囲が設定されている場合もあります。

2. V2 SKU

  • 基本料金: インスタンスのサイズではなく、SKU(Standard, WAF)ごとの固定料金がかかります。
  • 容量ユニット料金(CU): 処理するトラフィックや接続数に応じた追加料金が発生します。容量ユニットはトラフィック量や接続数で計算され、負荷に応じて自動スケーリングも可能です。

AI駆動開発


まとめ

本記事では、Azure Application Gatewayの概要・仕組み・メリット・料金体系・ユースケースなど幅広くご紹介しました。

Azure Application Gatewayは、Azure上でWebアプリケーションのトラフィックを管理・分散するためのロードバランサーです。Webアプリケーションの高可用性、スケーラビリティ、セキュリティを向上させ、負荷分散、SSLオフロード、WAFなどの豊富な機能を提供しています。Azure Application Gatewayによって、Webアプリケーションが高いパフォーマンスと安全性を維持しながら運用され、予測しにくいトラフィック変動にも柔軟に対応できるようになるでしょう。

ぜひAzure Application Gatewayを活用して、Webアプリケーションの安定稼働とセキュリティ強化を実現してください。この記事が、Azure Application Gatewayの理解を深め、Webアプリケーションの運用改善に役立つことを願っています。

AI活用のノウハウ集「AI総合研究所」サービスご紹介資料

「AI総合研究所 サービス紹介資料」は、AI導入のノウハウがないというお客様にも使いやすい最先端のAI導入ノウハウを知れる資料です。

資料ダウンロード
監修者

坂本 将磨

Microsoft AIパートナー、LinkX Japan代表。東京工業大学大学院で技術経営修士取得、研究領域:自然言語処理、金融工学。NHK放送技術研究所でAI、ブロックチェーン研究に従事。学会発表、国際ジャーナル投稿、経営情報学会全国研究発表大会にて優秀賞受賞。シンガポールでのIT、Web3事業の創業と経営を経て、LinkX Japan株式会社を創業。

関連記事

AI導入の最初の窓口。

お悩み・課題に合わせて活用方法をご案内いたします。
お気軽にお問合せください。

AI総合研究所 Bottom banner

ご相談
お問い合わせは
こちら!