Application Load Balancer のリスナールール - Elastic Load Balancing

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Application Load Balancer のリスナールール

リスナーに対して定義したルールは、ロードバランサーが 1 つ以上のターゲットグループ内のターゲットにリクエストをルーティングする方法を決定します。

各ルールは優先度、1 つ以上のアクション、および 1 つ以上の条件で構成されています。詳細については、「リスナールール」を参照してください。

要件

  • 各ルールには次のアクションのうち、厳密に 1 つを含む必要があります。forwardredirectfixed-response。またはそれは最後に実行されるアクションである必要があります。

  • 各ルールには、以下の条件の 0 個または 1 つを含めることができます。host-headerhttp-request-methodpath-patternsource-ipおよび 0 個以上の以下の条件 http-headerquery-stringを含めることができます。

  • 条件ごとに最大 3 つの比較文字列、ルールごとに最大 5 つの比較文字列を指定できます。

  • forward アクションはリクエストをそのターゲットグループにルーティングします。forward アクションを追加する前に、ターゲットグループを作成し、それにターゲットを追加します。詳細については、「Application Load Balancer のターゲットグループを作成する」を参照してください。

ルールの追加

リスナーを作成するときはデフォルトのルールを定義し、デフォルト以外の追加のルールはいつでも定義できます。

コンソールを使用してルールを追加するには
  1. で Amazon EC2コンソールを開きますhttps://console.aws.amazon.com/ec2/

  2. ナビゲーションペインで、[ロードバランサー] を選択します。

  3. ロードバランサーを選択すると、詳細が表示されます。

  4. [リスナーとルール] タブで、次のいずれかを行います。

    1. [プロトコル:ポート] 列のテキストを選択して、リスナーの詳細ページを開きます。

      [ルール] タブで、[ルールを追加する] を選択します。

    2. ルールを追加するリスナーを選択します。

      [ルールを管理][ルールを追加する] の順に選択します。

  5. [名前とタグ] でルール名を指定できますが、これは必須ではありません。

    新しいタグを追加するには、[さらにタグを追加] を選択します。

  6. [Next (次へ)] を選択します。

  7. [条件を追加] を選択します。

  8. 以下から条件を 1 つ以上追加します。

    • [ホストヘッダー] — ホストヘッダーを定義します。例: *.example.com[確認] を選択し、内容を保存します。

      最大 128 文字 大文字と小文字は区別されません。使用できる文字は a~z、A~Z、0~9、特殊文字 (-_.)、ワイルドカード (* および ?) です。

    • [パス] — パスを定義します。例: /item/* [確認] を選択し、内容を保存します。

      最大 128 文字 大文字と小文字の区別があります。使用できる文字は a~z、A~Z、0~9、特殊文字 (_-.$/~"'@:+;&)、ワイルドカード (* および ?) です。

    • HTTP request method – HTTPリクエストメソッドを定義します。[確認] を選択し、内容を保存します。

      最大 40 文字 大文字と小文字の区別があります。使用できる文字は A~Z および特殊文字 (-_) です。ワイルドカードがサポートされていません。

    • 送信元 IP – 送信元 IP アドレスを CIDR形式で定義します。[確認] を選択し、内容を保存します。

      IPv4 と の両方IPv6CIDRsが許可されます。ワイルドカードがサポートされていません。

    • headerHTTP – ヘッダーの名前を入力し、1 つ以上の比較文字列を追加します。[確認] を選択し、内容を保存します。

      • HTTP ヘッダー名 – ルールは、このヘッダーを含むリクエストを評価して、一致する値を確認します。

        最大 40 文字 大文字と小文字は区別されません。使用できる文字は a~z、A~Z、0~9、特殊文字 (*?-!#$%&'+.^_`|~) です。ワイルドカードがサポートされていません。

      • HTTP ヘッダー値 – HTTPヘッダー値と比較する文字列を入力します。

        最大 128 文字 大文字と小文字は区別されません。使用できる文字は a~z、A~Z、0~9、スペース、特殊文字 (!"#$%&'()+,./:;⩽=>@[]^_`{|}~-)、ワイルドカード (* および ?) です。

    • [クエリ文字列] – キーと値のペアまたはクエリ文字列の値に基づいて、リクエストをルーティングします。[確認] を選択し、内容を保存します。

      最大 128 文字 大文字と小文字は区別されません。使用できる文字は a~z、A~Z、0~9、特殊文字 (_-.$/~"'@:+&()!,;=)、ワイルドカード (* および ?) です。

  9. [Next (次へ)] を選択します。

  10. ルールに以下のアクションのいずれかを定義します。

    • [ターゲットグループへ転送] — トラフィックを転送するターゲットグループを 1 つ以上選択します。ターゲットグループを追加するには、[ターゲットグループの追加] を選択します。複数のターゲットグループを使用している場合は、ターゲットグループごとに重みを選択し、それに関連付けられている割合を確認します。1 つ以上のターゲットグループに対して維持設定を有効にしている場合は、ルールのグループレベルの維持設定を有効にする必要があります。

    • リダイレクト先 URL — クライアントリクエストURLがリダイレクトされる を指定します。これは、パートタブに各URIパートを個別に入力するか、フルURLタブに完全なアドレスを入力することで実行できます。ステータスコードでは、必要に応じてリダイレクトを一時 (HTTP 302) または永続 (HTTP 301) として設定できます。

    • [固定レスポンスを返す] — ドロップされたクライアントリクエストに対して返される [レスポンスコード] を指定します。[コンテンツタイプ] と [レスポンス本文] の指定もできますが、これは必須ではありません。

  11. [Next (次へ)] を選択します。

  12. 1~50000 の値を入力して、ルールの Priority を指定します。

  13. [Next (次へ)] を選択します。

  14. 新しいルールの詳細と現在構成されている設定を確認します。選択した内容でよければ、[作成] を選択します。

を使用してルールを追加するには AWS CLI

ルールを作成するには、create-rule コマンドを使用します。ルールに関する情報を確認するには、describe-rules コマンドを使用します。

ルールの編集

ルールのアクションおよび条件はいつでも編集できます。ルールの更新はすぐには反映されないため、ルールの更新後しばらくの間、リクエストは以前のルール設定を使用してルーティングされます。すべての未処理のリクエストが完了します。

コンソールを使用してルールを編集するには
  1. で Amazon EC2コンソールを開きますhttps://console.aws.amazon.com/ec2/

  2. ナビゲーションペインで、[ロードバランサー] を選択します。

  3. ロードバランサーを選択します。

  4. [リスナーとルール] タブで、次のいずれかを行います。

    1. [プロトコル:ポート] 列のテキストを選択して、リスナーの詳細ページを開きます。

      1. [ルール] タブの [リスナールール] セクションで、編集するルールの [Name タグ] 列にあるテキストを選択します。

        [アクション][ルールの編集] の順に選択します。

      2. [ルール] タブの [リスナールール] セクションで、編集するルールを選択します。

        [アクション][ルールの編集] の順に選択します。

  5. 必要に応じて名前とタグを変更します。新しいタグを追加するには、[さらにタグを追加] を選択します。

  6. [Next] (次へ) を選択します。

  7. 必要に応じて条件を変更します。既存の条件を追加、編集、または削除できます。

  8. [Next] (次へ) を選択します。

  9. 必要に応じてアクションを変更します。

  10. [Next] (次へ) を選択します。

  11. 必要に応じてルールの優先度を変更します。1~50000 の値を入力できます。

  12. [Next] (次へ) を選択します。

  13. ルールに設定されたすべての詳細と更新された設定を確認します。選択内容に問題がなければ、変更を保存 を選択します。

を使用してルールを編集するには AWS CLI

modify-rule コマンドを使用します。

ルールの優先度の更新

ルールは優先順位の低~高順によって評価されます。デフォルトのルールが最後に評価されます。デフォルト以外のルールは、優先順位をいつでも変更できます。デフォルトルールの優先順位は変更できません。

コンソールを使用してルールの優先度を更新するには
  1. で Amazon EC2コンソールを開きますhttps://console.aws.amazon.com/ec2/

  2. ナビゲーションペインで、[ロードバランサー] を選択します。

  3. ロードバランサーを選択します。

  4. [リスナーとルール] タブで、次のいずれかを行います。

    1. [プロトコル:ポート] または [ルール] 列のテキストを選択して、リスナーの詳細ページを開きます。

      1. [アクション][ルールに優先順位を再設定] の順に選択します。

      2. [ルール] タブの [リスナールール] セクションで、[アクション][ルールに優先順位を再設定] の順に選択します。

    2. リスナーを選択します。

      1. [ルールを管理][ルールに優先順位を再設定] の順に選択します。

  5. [リスナールール] セクションの [優先度] 列には、現在のルールの優先度が表示されます。ルールの優先度を更新するには、1~50000 の値を入力します。

  6. 変更内容に問題がなければ、[変更内容の保存] を選択します。

を使用してルールの優先順位を更新するには AWS CLI

set-rule-priorities コマンドを使用します。

ルールの削除

リスナーのデフォルト以外のルールはいつでも削除できます。リスナーのデフォルトのルールは削除できません。リスナーを削除すると、そのルールはすべて削除されます。

コンソールを使用してルールを削除するには
  1. で Amazon EC2コンソールを開きますhttps://console.aws.amazon.com/ec2/

  2. ナビゲーションペインで、[ロードバランサー] を選択します。

  3. ロードバランサーを選択します。

  4. [リスナーとルール] タブで、次のいずれかを行います。

    1. [プロトコル:ポート] または [ルール] 列のテキストを選択して、リスナーの詳細ページを開きます。

      1. 削除するルールを選択します。

      2. [アクション][ルールを削除] の順に選択します。

      3. テキストフィールドに confirm と入力し、[削除] を選択します。

    2. [Name タグ] 列のテキストを選択し、ルールの詳細ページを開きます。

      1. [アクション][ルールを削除] の順に選択します。

      2. テキストフィールドに confirm と入力し、[削除] を選択します。

を使用してルールを削除するには AWS CLI

delete-rule コマンドを使用します。