すべてのプロダクト
Search
ドキュメントセンター

Server Load Balancer:HTTPリスナーの追加

最終更新日:Sep 20, 2024

内部ネットワーク通信、ステージング環境、または開発環境用のHTTPサービスを開発し、HTTPサービスが暗号化を必要としない場合は、HTTPリスナーをClassic Load Balancer (CLB) インスタンスに追加してHTTPリクエストを転送できます。

前提条件

CLBインスタンスが作成されました。 詳細については、「CLBインスタンスの作成と管理」をご参照ください。

ステップ1: リスナーを作成する

  1. CLBコンソールにログインします。

  2. CLB インスタンスがデプロイされているリージョンを選択します。

  3. 次のいずれかの方法を使用して、リスナー構成ウィザードを開きます。

    • [インスタンス] ページで、管理するCLBインスタンスを見つけ、[操作] 列の [リスナーの設定] をクリックします。

    • [インスタンス] ページで、管理するCLBインスタンスのIDをクリックします。 [リスナー] タブで、[リスナーの追加] をクリックします。

  4. 次のパラメーターを設定し、次へをクリックします。

    パラメーター

    説明

    リスナープロトコル

    リスナープロトコルを選択します。

    この例では、HTTPが選択されています。

    バックエンドプロトコル

    この例では、HTTPリスナーが作成されます。 バックエンドプロトコルHTTPに設定されます。

    リスナーポート

    バックエンドサーバーへのリクエストの受信と転送に使用するリスナーポートを指定します。 有効な値: -1 から 65535

    デフォルトでは、HTTPはポート80を使用します。

    リスナー名

    リスナーの名前を指定します。

    タグ

    タグキータグ値を選択または入力します。

    詳細設定

    [変更] をクリックして詳細設定を設定します。

    スケジューリングアルゴリズム

    スケジューリングアルゴリズムを選択します。

    • 重み付きラウンドロビン (WRR): 重みの大きいバックエンドサーバーは、重みの小さいバックエンドサーバーよりも多くのリクエストを受け取ります。

    • ラウンドロビン (RR): リクエストはバックエンドサーバーに順番に配信されます。

    リダイレクト

    HTTPリスナーからHTTPSリスナーにトラフィックをリダイレクトするかどうかを指定します。 トラフィックのリダイレクトを有効にするには、HTTPSリスナーも選択する必要があります。

    説明

    トラフィックのリダイレクトを有効にする前に、HTTPSリスナーが作成されていることを確認してください。 詳細については、「HTTPからHTTPSへのリクエストのリダイレクト」をご参照ください。

    セッション永続性

    セッション維持を有効にするかどうかを指定します。

    セッション維持機能を有効にすると、CLBインスタンスは同じクライアントからのリクエストを同じバックエンドサーバーに配信します。 CLBは、Cookieに基づくHTTPセッションの永続性を有効にします。

    クッキーオプション:

    • cookieの挿入: このオプションを選択した場合、cookieのタイムアウト期間のみを指定する必要があります。

      CLBは、クライアントに送信される最初のHTTPまたはHTTPS応答にcookie (SERVERID) を挿入します。 クライアントからの次のリクエストにはcookieが含まれており、リスナーはリクエストを記録されたバックエンドサーバーに転送します。

      永続的タイムアウト: [cookieの挿入] を選択した場合、セッションの永続化のタイムアウト期間を指定します。

    • cookieの書き換え: このオプションを選択した場合、HTTPまたはHTTPS応答に挿入するcookieを指定する必要があります。 この場合、バックエンドサーバーのcookieのタイムアウト期間と有効期間を指定する必要があります。

      cookieを指定すると、CLBは元のcookieを指定されたcookieで上書きします。 次回CLBが指定されたcookieを含むクライアント要求を受信すると、リスナーはその要求を記録されたバックエンドサーバーに配信します。

      Cookie名: cookieの書き換えを選択した場合、cookieの名前を指定する必要があります。

    アクセス制御

    アクセス制御を有効にするかどうかを指定します。

    アクセス制御を有効にした後、アクセス制御方法を選択します。 次に、リスナーのホワイトリストまたはブラックリストとしてアクセス制御リスト (ACL) を選択します。

    • ホワイトリスト: 特定のIPアドレスからのアクセスを許可します。 ネットワークACLで指定されたIPアドレスまたはCIDRブロックからのリクエストのみが転送されます。 ホワイトリストは、特定のIPアドレスからのアクセスのみを許可するシナリオに適用されます。 ホワイトリストが適切に構成されていないと、サービスに悪影響を及ぼす可能性があります。 ホワイトリストが設定されると、ホワイトリストに追加されたIPアドレスからのリクエストのみがリスナーによって転送されます。

      ホワイトリストが設定されているが、IPアドレスがホワイトリストに追加されていない場合、リスナーはすべてのリクエストを転送します。

    • ブラックリスト: 特定のIPアドレスからのアクセスを拒否します。 ネットワークACLで指定されたIPアドレスまたはCIDRブロックからの要求は拒否されます。 ブラックリストは、特定のIPアドレスからのアクセスを拒否するシナリオに適用されます。

      ブラックリストが設定されているが、IPアドレスがブラックリストに追加されていない場合、リスナーはすべてのリクエストを転送します。

    説明

    IPv6インスタンスは、IPv6 ACLにのみ関連付けることができます。 IPv4インスタンスは、IPv4 ACLにのみ関連付けることができます。 詳細については、「ACLの作成」をご参照ください。

    ピーク帯域幅制限の有効化

    リスナーの最大帯域幅を設定するかどうかを指定します。

    帯域幅課金CLBインスタンスを使用する場合、各リスナーの最大帯域幅を設定して、リスナーによって転送されるネットワークトラフィックの量を制限できます。 CLBインスタンスに追加されたすべてのリスナーの最大帯域幅の合計は、CLBインスタンスの最大帯域幅を超えることはできません。 デフォルトでは、この機能は無効になっており、すべてのリスナーがCLBインスタンスの帯域幅を共有します。

    重要
    • たとえば、インターネット接続CLBインスタンスの最大帯域幅は5 Mbit/sで、2つのリスナーを設定したとします。 5 Mbit/sの帯域幅をリスナーAに割り当て、リスナーBには帯域幅を割り当てません。この場合、リスナーBにはアクセスできません。 帯域幅を割り当てるときは注意してください。

    • 内部接続CLBインスタンスに3つのリスナーが設定されており、リスナーAとリスナーBに割り当てられている合計帯域幅が5,120 Mbit/sの場合、リスナーCにアクセスできません。 帯域幅を割り当てるときは注意してください。

    • データ転送課金CLBインスタンスを使用する場合、リスナーの帯域幅はデフォルトで無制限です。

    アイドル接続タイムアウト期間

    アイドル接続のタイムアウト時間を指定します。

    指定されたタイムアウト期間内にリクエストが受信されない場合、CLBは接続を閉じます。 要求が受信されると、CLBは新しい接続を確立する。

    接続要求タイムアウト

    リクエストのタイムアウト時間を指定します。

    指定されたタイムアウト期間内にバックエンドサーバーから応答が受信されない場合、CLBはHTTP 504のステータスコードをクライアントに返します。

    GZIP圧縮

    GZIP圧縮を有効にすると、特定のタイプのファイルが圧縮されます。 GZIP圧縮を無効にすると、ファイルは圧縮されません。

    GZIPは、text/xmltext/plaintext/cssapplication/javascriptapplication/x-javascriptapplication/rss + xmlapplication/atom + xmlapplication/xmlのファイルタイプをサポートしています。

    カスタムHTTPヘッダー

    追加するHTTPヘッダーを選択します。 有効な値:

    • X-Forwarded-For: Retrieve Client IP: クライアントIPアドレスを取得します。

      説明

      デフォルトでは、CLBのレイヤー7リスナーはX-Forwarded-Forヘッダーを使用してクライアントIPアドレスを保持します。 ヘッダーを無効にすることはできません。

    • SLB-ID: SLB IDの取得: CLBインスタンスのIDを取得します。

    • SLB-IP: SLB IPを取得: CLBインスタンスのIPアドレスを取得します。

    • X-Forwarded-Proto: Retrieve Listener Protocol: リスナープロトコルを取得します。

    クライアントIPアドレスの保存

    この機能はクライアントIPアドレスを取得し、デフォルトで有効になります。

    リスナーの自動有効化

    作成後すぐにリスナーを有効にするかどうかを指定します。 デフォルトでは、リスナーは作成後に有効になります。

ステップ2: バックエンドサーバーの追加

リスナーの作成後、クライアント要求を処理するバックエンドサーバーを追加する必要があります。 CLBインスタンスに設定されているデフォルトのサーバーグループを使用できます。 vServerグループを作成することもできます。 詳細については、「バックエンドサーバーの概要」をご参照ください。

この例では、バックエンドサーバーがデフォルトのサーバーグループに追加されます。

  1. バックエンドサーバーステップデフォルトのサーバーグループ選択し、さらに追加をクリックします。

  2. サーバーパネルで、追加するバックエンドサーバーを選択し、次へをクリックします。

  3. [重み] 列で、バックエンドサーバーの重みを設定します。

    説明
    • 重みの高いECS (Elastic Compute Service) インスタンスは、より多くのリクエストを受け取ります。 デフォルトの重みは100です。 [リセット] をクリックすると、[重み] をデフォルト値に設定できます。

    • バックエンドサーバーの重みが0に設定されている場合、リクエストはバックエンドサーバーに配信されません。

  4. [追加] をクリックします。 [既定のサーバーグループ] タブで、リクエストを受信するためにバックエンドサーバーで開くポートを指定します。 [次へ] をクリックします。

    同じCLBインスタンスに追加されたバックエンドサーバーに同じポートを指定できます。

ステップ3: ヘルスチェックの設定

CLBはヘルスチェックを実行し、バックエンドECSインスタンスの可用性を確認します。 ヘルスチェック機能は、サービス全体の可用性を向上させ、バックエンドサーバーの障害の影響を軽減します。

  1. オプションです。 ヘルスチェックステップ変更をクリックしてヘルスチェックの設定を変更します。

    詳細については、「CLBヘルスチェックの設定と管理」をご参照ください。

  2. 次へをクリックします。

ステップ4: 設定を送信する

  1. 確認ステップで、リスナーの設定を確認します。 [変更] をクリックして、設定を変更できます。

  2. 設定を確認し、送信をクリックします。

  3. [設定の成功] メッセージで、OKをクリックします。

    リスナーを設定した後、[リスナー] タブでリスナーを表示できます。