チュートリアル: Azure portal を使用してバックエンド プールに複数の可用性セットを備えたロード バランサーを作成する

高可用性デプロイでは、多くの場合、その過程で仮想マシンが複数の可用性セットへとグループ化されます。

ロード バランサーでは、バックエンド プール内の仮想マシンが含まれる複数の可用性セットがサポートされます。

このチュートリアルでは、次の作業を行う方法について説明します。

  • アウトバウンド接続用の NAT ゲートウェイを作成する
  • 仮想ネットワークとネットワーク セキュリティ グループを作成する
  • Standard SKU の Azure ロード バランサーを作成する
  • 4 つの仮想マシンと 2 つの可用性セットを作成する
  • 可用性セット内の仮想マシンをロード バランサーのバックエンド プールに追加する
  • ロード バランサーをテストする

前提条件

NAT ゲートウェイの作成

このセクションでは、仮想ネットワーク内のリソースの送信インターネット アクセス用の NAT ゲートウェイを作成します。 アウトバウンド規則の他のオプションについては、アウトバウンド接続のネットワーク アドレス変換 (SNAT) に関するページを確認してください。

  1. Azure portal にサインインします。

  2. ポータルの上部にある検索ボックスに、「NAT ゲートウェイ」と入力します。 検索結果から [NAT ゲートウェイ] を選択します。

  3. [+ 作成] を選択します。

  4. [ネットワーク アドレス変換 (NAT) ゲートウェイを作成します][基本] タブで、次の情報を入力または選択します。

    設定
    プロジェクトの詳細
    サブスクリプション サブスクリプションを選択します。
    Resource group [新規作成] を選択します。
    [名前] に「load-balancer-rg」と入力します。

    を選択します。
    インスタンスの詳細
    NAT ゲートウェイ名 lb-nat-gateway」と入力します。
    リージョン [米国東部] を選択します。
    可用性ゾーン [なし] を選択します。
    アイドル タイムアウト (分) 15」と入力します。

    Screenshot of Create network address translation gateway window in the Azure portal.

  5. [送信 IP] タブを選択するか、ページの下部にある [次へ: 送信 IP] ボタンを選択します。

  6. [パブリック IP アドレス] の下の [新しいパブリック IP アドレスを作成する] を選択します。

  7. [パブリック IP アドレスの追加][名前] に「nat-gw-public-ip」と入力します。

  8. [OK] を選択します。

  9. ページ下部にある青色の [確認と作成] ボタンを選択するか、 [確認と作成] タブを選択します。

  10. [作成] を選択します。

仮想ネットワークの作成

以下の手順ではリソース サブネットを持つ仮想ネットワークが作成されます。

  1. ポータルで、[仮想ネットワーク] を検索して選択します。

  2. [仮想ネットワーク] ページで、[+ 作成] を選択します。

  3. [仮想ネットワークの作成][基本] タブで、次の情報を入力するか選択します。

    設定
    プロジェクトの詳細
    サブスクリプション サブスクリプションを選択します。
    Resource group [新規作成] を選択します。
    [名前] に「load-balancer-rg」と入力します。

    を選択します。
    インスタンスの詳細
    名前 lb-vnet」と入力します。
    リージョン [米国東部] を選択します。

    Screenshot of Basics tab of Create virtual network in the Azure portal.

  4. [IP アドレス] タブ、またはページ下部の [次へ: セキュリティ] および [次へ: IP アドレス] ボタンを選択します。

  5. [サブネット] のアドレス空間ボックスで、既定のサブネットを選択します。

  6. [サブネットの編集] で次の情報を入力または選択します。

    設定
    サブネットの詳細
    サブネット テンプレート 既定値の [既定] のままにします。
    名前 backend-subnet」と入力します。
    開始アドレス 既定値の 10.0.0.0 のままにします。
    サブネットのサイズ 既定値の /24(256 アドレス) のままにします。
    Security
    NAT Gateway [lb-nat-gateway] を選択します。

    Screenshot of default subnet rename and configuration.

  7. [保存] を選択します。

  8. 画面の下部にある [確認と作成] を選択し、検証に合格したら [作成] を選択します。

ネットワーク セキュリティ グループの作成

このセクションでは、ロード バランサーのバックエンド プール内の仮想マシン用にネットワーク セキュリティ グループ (NSG) を作成します。 NSG では、ポート 80 での受信トラフィックが許可されます。

  1. ポータルの上部にある検索ボックスに、「ネットワーク セキュリティ グループ」と入力します。

  2. 検索結果から [ネットワーク セキュリティ グループ] を選択します。

  3. [作成] または [ネットワーク セキュリティ グループの作成] ボタンを選択します。

  4. [基本] タブで、この情報を入力または選択します。

    設定
    プロジェクトの詳細
    サブスクリプション サブスクリプションを選択します。
    リソース グループ [lb-resource-group] を選択します。
    インスタンスの詳細
    名前 lb-NSG」と入力します。
    リージョン [(米国) 米国東部] を選択します。
  5. [確認と作成] タブを選択するか、ページの下部にある青色の [確認と作成] ボタンを選択します。

  6. [作成] を選択します。

  7. デプロイが完了したら、[リソースに移動] を選択します。

  8. lb-NSG ページの [設定] セクションで [受信セキュリティ規則] を選びます。

  9. [+ 追加] を選択します。

  10. [受信セキュリティ規則の追加] ウィンドウで、次の情報を入力または選択します。

    設定
    source [任意] をクリックします。
    Source port ranges *」と入力します。
    宛先 [任意] をクリックします。
    サービス [HTTP] を選択します。
    アクション [許可] を選択します。
    優先度 100」と入力します。
    名前 lb-NSG-HTTP-rule」と入力します。
  11. [追加] を選択します。

ロード バランサーの作成

このセクションでは、仮想マシンのロード バランサーを作成します。

  1. ポータルの上部にある検索ボックスに、「ロード バランサー」と入力します。 検索結果で [ロード バランサー] を選択します。

  2. [ロード バランサー] ページで、[作成] または [ロード バランサーの作成] ボタンを選択します。

  3. [ロード バランサーの作成] ページの [基本] タブで、次の情報を入力または選択します。

    設定
    プロジェクトの詳細
    サブスクリプション サブスクリプションを選択します。
    リソース グループ [lb-resource-group] を選択します。
    インスタンスの詳細
    名前 load-balancer」と入力します
    リージョン [(米国) 米国東部] を選択します。
    SKU 既定値 [標準] のままにします。
    Type [パブリック] を選択します。
    レベル [地域] は既定値のままにします。
  4. [フロントエンド IP 構成] タブを選択するか、ページの下部にある [次へ: フロントエンド IP 構成] ボタンを選択します。

  5. [フロントエンド IP 構成] で、[+ フロントエンド IP 構成の追加] を選択します。

  6. [名前] に「lb-frontend-IP」と入力します。

  7. [IP バージョン] には [IPv4] または [IPv6] を選択します。

    Note

    IPv6 は現在、ルーティングの優先順位およびリージョン間の負荷分散 (グローバル階層) ではサポートされていません。

  8. [IP の種類] として [IP アドレス] を選択します。

    Note

    IP プレフィックスの詳細については、Azure パブリック IP アドレス プレフィックスに関するページを参照してください。

  9. [パブリック IP アドレス][新規作成] を選択します。

  10. [パブリック IP アドレスの追加] で、[名前] に「lb-public-IP」と入力します。

  11. [可用性ゾーン] で、 [ゾーン冗長] を選択します。

    Note

    Availability Zones があるリージョンでは、ゾーンなし (既定のオプション)、特定のゾーン、またはゾーン冗長を選択できます。 この選択は、特定のドメイン障害要件によって異なる場合があります。 Availability Zones がないリージョンでは、このフィールドは表示されません。
    可用性ゾーンの詳細については、可用性ゾーンの概要に関するページを参照してください。

  12. [OK] を選択します。

  13. [追加] を選択します。

  14. ページの下部にある [次へ: バックエンド プール >] ボタンを選択します。

  15. [バックエンド プール] タブで、 [+ バックエンド プールの追加] を選択します。

  16. [バックエンド プールの追加][名前] に「lb-backend-pool」と入力します。

  17. [仮想ネットワーク]lb-VNet を選びます。

  18. [バックエンド プールの構成][IP アドレス] を選択して、[保存] を選択します。

  19. [受信の規則] タブを選択するか、ページの下部にある [次へ: 受信の規則] ボタンを選択します。

  20. [受信規則] タブの [負荷分散規則] で、 [+ 負荷分散規則の追加] を選択します。

  21. [負荷分散規則の追加] で、次の情報を入力または選択します。

    設定
    名前 lb-HTTP-rule」と入力します
    IP バージョン 要件に応じて、 [IPv4] または [IPv6] を選択します。
    フロントエンド IP アドレス lb-frontend-IP を選びます。
    バックエンド プール [lb-backend-pool] を選択します。
    プロトコル [TCP] を選択します。
    Port 80」と入力します。
    バックエンド ポート 80」と入力します。
    正常性プローブ [新規作成] を選択します。
    [名前] に「lb-health-probe」と入力します。
    [プロトコル] で、[HTTP] を選択します。
    残りの部分は既定値のままにし、[保存] を選択します。
    セッション永続化 [なし] を選択します。
    アイドル タイムアウト (分) 15」と入力します。
    TCP リセットを有効にします チェックボックスをオンにします。
    フローティング IP を有効にする チェックボックスをオンにします。
    アウトバウンド送信元ネットワーク アドレス変換 (SNAT) 既定値の [(推奨) アウトバウンド規則を使用して、バックエンド プールのメンバーがインターネットにアクセスできるようにします。] のままにします。
  22. [保存] を選択します。

  23. ページ下部にある青色の [確認と作成] ボタンを選択します。

  24. [作成] を選択します

    Note

    この例では、送信インターネット アクセスを提供する NAT ゲートウェイを作成しました。 構成の [アウトバウンド規則] タブは省略可能であり、NAT ゲートウェイでは不要なため、バイパスされます。 Azure NAT ゲートウェイの詳細については、「Virtual Network NAT とは」を参照してください。Azure でのアウトバウンド接続の詳細については、アウトバウンド接続の送信元ネットワーク アドレス変換 (SNAT) に関するページを参照してください。

仮想マシンを作成する

このセクションでは、それぞれ 2 つの仮想マシンを含む 2 つの可用性グループを作成します。 これらのマシンは、作成時にロード バランサーのバックエンド プールに追加されます。

1 つ目の VM セットを作成する

  1. ポータルの左上のセクションにある [+ リソースの作成] を選択します。

  2. [New](新規) で、 [Compute](コンピューティング)>[仮想マシン] を選択します。

  3. [仮想マシンの作成][基本] タブで、次の情報を入力または選択します。

    設定
    プロジェクトの詳細
    サブスクリプション サブスクリプションを選択します。
    Resource group [lb-resource-group] を選択します。
    インスタンスの詳細
    仮想マシン名 lb-VM1」と入力します。
    リージョン [(米国) 米国東部] を選択します。
    可用性のオプション [可用性セット] を選択します。
    可用性セット [新規作成] を選択します。
    [名前] に「lb-availability-set1」と入力します。

    を選択します。
    セキュリティの種類 [トラステッド起動の仮想マシン] を選択します。
    Image [Windows Server 2022 Datacenter - x64 Gen2] を選択します。
    Azure Spot インスタンス 既定値のオフのままにします。
    サイズ 仮想マシンのサイズを選択します。
    管理者アカウント
    ユーザー名 ユーザー名を入力します。
    Password パスワードを入力します。
  4. [ネットワーク] タブを選択するか、 [次へ: ディスク] を選択し、ページ下部の [次へ: ネットワーク] ボタンを選択します。

  5. [ネットワーク] タブで、次の情報を入力または選択します。

    設定
    ネットワーク インターフェイス
    仮想ネットワーク lb-VNet を選びます。
    Subnet [backend-subnet] を選択します。
    パブリック IP [なし] を選択します。
    NIC ネットワーク セキュリティ グループ [Advanced] \(詳細設定) を選択します。
    ネットワーク セキュリティ グループを構成する 残りの設定が完了するまで、この設定をスキップします。 バックエンド プールを選択した後に完了します。
    負荷分散
    負荷分散のオプション [Azure Load Balancer] を選択します。
    ロード バランサーを選択する [load-balancer] を選択します。
    バックエンド プールを選択する lb-backend-pool を選びます。
    ネットワーク セキュリティ グループを構成する [新規作成] を選択します。
    [ネットワーク セキュリティ グループの作成] で、[名前] に「lb-NSG」と入力します。

    で、[+ 受信規則の追加] を選択します。

    で、[HTTP] を選択します。

    に「100」と入力します。
    [名前] に「lb-NSG-rule」と入力します
    [追加] を選びます
    [OK] を選びます
  6. [Review + create](確認と作成) タブを選択するか、ページの下部にある青色の [Review + create](確認と作成) ボタンを選択します。

  7. [作成] を選択します

  8. 手順 1 から 7 を繰り返して、セットの 2 つ目の仮想マシンを作成します。 VM の設定は、次の情報に置き換えます。

    設定
    名前 lb-VM2」と入力します。
    可用性セット lb-availability-set1 を選びます。
    Virtual Network lb-VNet を選びます。
    Subnet [backend-subnet] を選択します。
    パブリック IP [なし] を選択します。
    NIC ネットワーク セキュリティ グループ [Advanced] \(詳細設定) を選択します。
    ネットワーク セキュリティ グループを構成する 残りの設定が完了するまで、この設定をスキップします。 バックエンド プールを選択した後に完了します。
    負荷分散のオプション [Azure Load Balancer] を選択します。
    ロード バランサーを選択する [load-balancer] を選択します。
    バックエンド プールを選択する lb-backend-pool を選びます。
    ネットワーク セキュリティ グループを構成する lb-NSG を選びます。

2 つ目の VM セットを作成する

  1. ポータルの左上のセクションにある [+ リソースの作成] を選択します。

  2. [New](新規) で、 [Compute](コンピューティング)>[仮想マシン] を選択します。

  3. [仮想マシンの作成][基本] タブで、次の情報を入力または選択します。

    設定
    プロジェクトの詳細
    サブスクリプション サブスクリプションを選択します。
    Resource group [lb-resource-group] を選択します。
    インスタンスの詳細
    仮想マシン名 lb-VM3」と入力します。
    リージョン [(米国) 米国東部] を選択します。
    可用性のオプション [可用性セット] を選択します。
    可用性セット [新規作成] を選択します。
    [名前] に「lb-availability-set2」と入力します。

    を選択します。
    セキュリティの種類 [トラステッド起動の仮想マシン] を選択します。
    Image [Windows Server 2022 Datacenter - x64 Gen2] を選択します。
    Azure Spot インスタンス 既定値のオフのままにします。
    サイズ 仮想マシンのサイズを選択します。
    管理者アカウント
    ユーザー名 ユーザー名を入力します。
    Password パスワードを入力します。
  4. [ネットワーク] タブを選択するか、 [次へ: ディスク] を選択し、ページ下部の [次へ: ネットワーク] ボタンを選択します。

  5. [ネットワーク] タブで、次の情報を入力または選択します。

    設定
    ネットワーク インターフェイス
    仮想ネットワーク lb-VNet を選びます。
    Subnet [backend-subnet] を選択します。
    パブリック IP [なし] を選択します。
    NIC ネットワーク セキュリティ グループ [Advanced] \(詳細設定) を選択します。
    ネットワーク セキュリティ グループを構成する 残りの設定が完了するまで、この設定をスキップします。 バックエンド プールを選択した後に完了します。
    負荷分散
    負荷分散のオプション [Azure Load Balancer] を選択します。
    ロード バランサーを選択する [load-balancer] を選択します。
    バックエンド プールを選択する lb-backend-pool を選びます。
    ネットワーク セキュリティ グループを構成する lb-NSG を選びます。
  6. [Review + create](確認と作成) タブを選択するか、ページの下部にある青色の [Review + create](確認と作成) ボタンを選択します。

  7. [作成] を選択します

  8. 手順 1 から 7 を繰り返して、セットの 2 つ目の仮想マシンを作成します。 VM の設定は、次の情報に置き換えます。

    設定
    名前 lb-VM4」と入力します。
    可用性セット lb-availability-set2 を選びます。
    Virtual Network lb-VM3 を選びます。
    NIC ネットワーク セキュリティ グループ [Advanced] \(詳細設定) を選択します。
    ネットワーク セキュリティ グループを構成する 残りの設定が完了するまで、この設定をスキップします。 バックエンド プールを選択した後に完了します。
    負荷分散のオプション [Azure Load Balancer] を選択します。
    ロード バランサーを選択する [load-balancer] を選択します。
    バックエンド プールを選択する lb-backend-pool を選びます。
    ネットワーク セキュリティ グループを構成する lb-NSG を選びます。

IIS のインストール

このセクションでは、先ほど作成した Azure Bastion ホストを使って仮想マシンに接続し、IIS をインストールします。

  1. ポータルの上部にある検索ボックスに、「仮想マシン」と入力します。

  2. 検索結果から [仮想マシン] を選択します。

  3. lb-VM1 を選びます。

  4. 左側のメニューの [ペイロード] で、[コマンドの実行] > RunPowerShellScript を選びます。

  5. [PowerShell スクリプト] ウィンドウで、次のコマンド追加して以下を実行します。

    • IIS サーバーをインストールする
    • 既定の iisstart.htm ファイルを削除する
    • VM の名前が表示された新しい iisstart.htm ファイルを追加する。
     # Install IIS server role
     Install-WindowsFeature -name Web-Server -IncludeManagementTools
    
     # Remove default htm file
     Remove-Item  C:\inetpub\wwwroot\iisstart.htm
    
     # Add a new htm file that displays server name
     Add-Content -Path "C:\inetpub\wwwroot\iisstart.htm" -Value $("Hello World from " + $env:computername)
    
  6. [実行] を選択し、コマンドが完了するまで待ちます。

    Screenshot of Run Command Script window with PowerShell code and output.

  7. lb-VM2lb-VM3lb-VM4 について、手順 1 から 8 を繰り返します。

ロード バランサーをテストする

このセクションでは、ロード バランサーのパブリック IP アドレスを検出します。 その IP アドレスを使って、ロード バランサーの動作をテストします。

  1. ポータルの上部にある検索ボックスに、「パブリック IP」と入力します。

  2. 検索結果から [パブリック IP アドレス] を選択します。

  3. lb-Public-IP を選びます。

  4. lb-Public-IP[概要] ページの [IP アドレス] に表示されるパブリック IP アドレスをメモします。

    Find the public IP address of the load balancer.

  5. Web ブラウザーを開いて、アドレス バーにパブリック IP アドレスを入力します。

    Test load balancer with web browser.

  6. ブラウザーの [更新] を選択すると、バックエンド プール内の他の仮想マシンに負荷分散されたトラフィックが表示されます。

リソースをクリーンアップする

このアプリケーションを引き続き使用する予定がなければ、次の手順に従ってロード バランサーと関連リソースを削除します。

  1. ポータル上部の [検索] ボックスに「リソース グループ」と入力します。
  2. 検索結果から [リソース グループ] を選択します。
  3. lb-resource-group を選びます。
  4. lb-resource-group の [概要] ページで、[リソース グループの削除] を選びます。
  5. [選択した仮想マシンと仮想マシン スケール セットに対して強制削除を適用する] を選びます。
  6. [リソース グループ名を入力して削除を確認する] に「lb-resource-group」と入力します。
  7. [削除] を選択します。

次の手順

このチュートリアルでは、次の作業を行いました。

  • 仮想ネットワークとネットワーク セキュリティ グループを作成しました。
  • Azure Standard ロード バランサーを作成しました。
  • それぞれ 2 つの仮想マシンを含む可用性セットを 2 つ作成しました。
  • IIS をインストールし、ロード バランサーをテストしました。

次の記事に進んで、リージョン間 Azure ロード バランサーの作成方法を学習してください。