Azure CLI を使用して、アプリケーション ゲートウェイを作成するときに Web トラフィック リダイレクトを構成できます。 このチュートリアルでは、アプリケーション ゲートウェイに到着した Web トラフィックを外部サイトにリダイレクトするリスナーとルールを構成します。
この記事では、次の方法について説明します。
- ネットワークのセットアップ
- リスナーとリダイレクトルールを作成する
- アプリケーション ゲートウェイの作成
Azure アカウントをお持ちでない場合は、開始する前に無料アカウントを作成してください。
[前提条件]
Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の概要」を参照してください。
CLI 参照コマンドをローカルで実行する場合は、Azure CLI を インストール します。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。
ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、「 Azure CLI を使用した Azure への認証」を参照してください。
メッセージが表示されたら、最初に使用するときに Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、「Azure CLI で拡張機能を使用および管理する」を参照してください。
az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。
- このチュートリアルには、Azure CLI のバージョン 2.0.4 以降が必要です。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。
リソース グループを作成する
リソース グループとは、Azure リソースのデプロイと管理に使用する論理コンテナーです。 az group create を使用してリソース グループを作成します。
次の例では、myResourceGroupAG という名前のリソース グループを eastus に作成します。
az group create --name myResourceGroupAG --___location eastus
ネットワーク リソースを作成する
az network vnet create を使用して、myVNet という名前の仮想ネットワークと myAGSubnet という名前のサブネットを作成します。 az network public-ip create を使用して myAGPublicIPAddress という名前のパブリック IP アドレスを作成します。 こうしたリソースは、アプリケーション ゲートウェイとその関連リソースにネットワーク接続を提供するために使用されます。
az network vnet create \
--name myVNet \
--resource-group myResourceGroupAG \
--___location eastus \
--address-prefix 10.0.0.0/16 \
--subnet-name myAGSubnet \
--subnet-prefix 10.0.1.0/24
az network public-ip create \
--resource-group myResourceGroupAG \
--name myAGPublicIPAddress
アプリケーション ゲートウェイの作成
az network application-gateway create を使用して、myAppGateway という名前のアプリケーション ゲートウェイを作成することができます。 Azure CLI を使用してアプリケーション ゲートウェイを作成するときは、容量、SKU、HTTP 設定などの構成情報を指定します。 アプリケーション ゲートウェイは、前に作成した myAGSubnet と myPublicIPAddress に割り当てられます。
az network application-gateway create \
--name myAppGateway \
--___location eastus \
--resource-group myResourceGroupAG \
--vnet-name myVNet \
--subnet myAGsubnet \
--capacity 2 \
--sku Standard_v2 \
--http-settings-cookie-based-affinity Disabled \
--frontend-port 8080 \
--http-settings-port 80 \
--http-settings-protocol Http \
--public-ip-address myAGPublicIPAddress \
--priority 10
アプリケーション ゲートウェイの作成には数分かかる場合があります。 アプリケーション ゲートウェイを作成すると、新たに次の機能が確認できます。
- appGatewayBackendPool - アプリケーション ゲートウェイには、少なくとも 1 つのバックエンド アドレス プールが必要です。
- appGatewayBackendHttpSettings - 通信に使用するポート 80 と HTTP プロトコルを指定します。
- appGatewayHttpListener - appGatewayBackendPool に関連付けられている既定のリスナー。
- appGatewayFrontendIP -myAGPublicIPAddress を appGatewayHttpListener に割り当てます。
- rule1 - appGatewayHttpListener に関連付けられている既定のルーティング規則。
リダイレクト構成の追加
az network application-gateway redirect-config create を使用して、www.contoso.org から www.contoso.com のリスナーにトラフィックをアプリケーション ゲートウェイに送信するリダイレクト構成を追加します。
az network application-gateway redirect-config create \
--name myredirect \
--gateway-name myAppGateway \
--resource-group myResourceGroupAG \
--type Temporary \
--target-url "https://bing.com"
リスナーとルーティング規則を追加する
アプリケーション ゲートウェイがトラフィックを適切にルーティングできるようにするには、リスナーが必要です。 az network application-gateway frontend-port create で作成されたフロントエンド ポートを使用して、az network application-gateway http-listener create を使用してリスナーを作成します。 リスナーが受信トラフィックを送信する場所を把握するには、ルールが必要です。 az network application-gateway rule create を使用して redirectRule という名前の基本的な規則を作成します。
az network application-gateway frontend-port create \
--port 80 \
--gateway-name myAppGateway \
--resource-group myResourceGroupAG \
--name redirectPort
az network application-gateway http-listener create \
--name redirectListener \
--frontend-ip appGatewayFrontendIP \
--frontend-port redirectPort \
--resource-group myResourceGroupAG \
--gateway-name myAppGateway
az network application-gateway rule create \
--gateway-name myAppGateway \
--name redirectRule \
--resource-group myResourceGroupAG \
--http-listener redirectListener \
--rule-type Basic \
--redirect-config myredirect \
--priority 11
アプリケーション ゲートウェイをテストする
アプリケーション ゲートウェイのパブリック IP アドレスを取得するには、az network public-ip show を使用できます。 そのパブリック IP アドレスをコピーし、ブラウザーのアドレス バーに貼り付けます。
ブラウザーに bing.com が表示されるのが見えるはずです。