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

Container Service for Kubernetes:APIG Ingress でサポートされるアノテーション

最終更新日:Dec 12, 2025

APIG Ingress は、Nginx Ingress のコアおよび共通のアノテーションをサポートしており、Nginx Ingress から APIG Ingress ゲートウェイへのシームレスな移行を可能にします。APIG Ingress はまた、Nginx Ingress アノテーションではサポートされていないトラフィックガバナンス機能を提供するために、追加のアノテーションを導入しています。このトピックでは、APIG Ingress でサポートされているアノテーションについて説明します。

機能概要

標準の Kubernetes Ingress は、レイヤー 7 HTTP トラフィックに対して TLS 暗号化とシンプルなルーティング機能のみを提供します。Ingress Controller は通常、アノテーションを使用して、トラフィックガバナンスとセキュリティ保護機能で Ingress リソースを強化します。

Ingress アノテーションのサポート状況

Nginx Ingress アノテーション

Nginx Ingress ユーザーが APIG Ingress にシームレスに移行できるように、APIG Ingress は Nginx Ingress アノテーションを幅広くサポートしています。次の表にサポート状況を示します。

Nginx Ingress アノテーション

サポート合計数

注釈

サポートされるアノテーション

51

ユーザーシナリオの 90% をカバーします。

機能に影響しないアノテーション

15

構成は不要です。

一時的にサポートされていないアノテーション

48

サポートは進行中です。これらは少数のシナリオで使用されます。

サポートされていないアノテーション

5

主に Nginx ネイティブのコードスニペットが含まれます。

説明

Higress と Nginx の実装は異なるため、いくつかの動作上の違いが生じます。

  1. Nginx Ingress アノテーション構成における NGINX 変数 とコードスニペットには互換性がありません。

  2. Nginx Ingress は nginx.ingress.kubernetes.io/proxy-body-size アノテーションを使用して、クライアントリクエストボディのサイズ制限を構成します。リクエストボディが指定されたサイズを超えると、Nginx はエラーを返します。Higress クラウドネイティブゲートウェイはチャンクストリーミングを使用するため、事前にリクエストボディサイズを設定する必要はありません。大きなファイルの転送の場合は、ゲートウェイインスタンスのパラメーター設定で `DownstreamConnectionBufferLimits` パラメーターを調整できます。

APIG Ingress アノテーション

APIG Ingress は、Nginx Ingress アノテーションでは提供されないガバナンス機能を提供するために、追加のアノテーションを導入しています。次の表にサポート状況を示します。

APIG Ingress アノテーション

サポート合計数

注釈

拡張アノテーション

40

Nginx を超えるトラフィックガバナンスとセキュリティ保護機能を強化します。

スコープの説明

  • Ingress: Ingress スコープのアノテーションは、現在の Ingress で定義されているルーティングルールにのみ適用されます。

  • ドメイン名: ドメイン名スコープのアノテーションは、現在の Ingress で指定されたホストに適用されます。このスコープは、同じホストを使用する他の Ingress に影響します。

  • Service: サービススコープのアノテーションは、現在の Ingress で指定されたサービスに適用されます。このスコープは、同じサービスを使用する他の Ingress に影響します。

アノテーションのプレフィックス

APIG Ingress は、すべての Nginx Ingress アノテーションをサポートしています。たとえば、nginx.ingress.kubernetes.io/xxxhigress.ingress.kubernetes.io/xxx と同じように機能します。プリファレンスに応じて nginx または higress プレフィックスのいずれかを使用できます。ただし、APIG Ingress 専用のアノテーションには `nginx` プレフィックスを使用できません。

アノテーションのサポート概要

以下のセクションでは、トラフィックガバナンスとセキュリティ保護のためのアノテーションについて説明します。

トラフィックガバナンス

段階的リリース

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/canary

Ingress

互換

段階的リリースを有効または無効にします。

nginx.ingress.kubernetes.io/canary-by-header

Ingress

互換

Request Header Key に基づいてトラフィックを分割します。

nginx.ingress.kubernetes.io/canary-by-header-value

Ingress

互換

Request Header Value に基づいてトラフィックを分割します。値は完全に一致する必要があります。

nginx.ingress.kubernetes.io/canary-by-header-pattern

Ingress

互換

Request Header Value に基づいてトラフィックを分割します。値は正規表現に一致する必要があります。

higress.ingress.kubernetes.io/canary-by-query

Ingress

Higress 拡張

URL クエリパラメーター に基づいてトラフィックを分割します。

higress.ingress.kubernetes.io/canary-by-query-value

Ingress

Higress 拡張

URL クエリパラメーター に基づいてトラフィックを分割します。値は完全に一致します。

higress.ingress.kubernetes.io/canary-by-query-pattern

Ingress

Higress 拡張

URL クエリパラメーター に基づいてトラフィックを分割します。値は正規表現に一致します。

nginx.ingress.kubernetes.io/canary-by-cookie

Ingress

互換

Request Cookie Key に基づいてトラフィックを分割します。

higress.ingress.kubernetes.io/canary-by-cookie-value

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.30 が必要

Request Cookie Value に基づいてトラフィックを分割します。値は完全に一致する必要があります。

nginx.ingress.kubernetes.io/canary-weight

Ingress

互換

重みに基づいてトラフィックを分割します。

nginx.ingress.kubernetes.io/canary-weight-total

Ingress

互換

重みの合計。

複数サービス

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/destination

Ingress

Higress 拡張

ルートの重みベースのサービス配信を構成します。

構成構文は次のとおりです: {weight}% {serviceName}.{serviceNamespace}.svc.cluster.local:{port}

説明
  • このアノテーションを構成すると、Ingress 内のすべてのルーティングルールのバックエンドサービスが、このアノテーションで指定されたサービスに変更されます。

  • このアノテーションの構文が正しくない場合、アノテーションは無視されます。Ingress 内のすべてのルーティングルールのバックエンドサービスは変更されません。

構文例:

annotations:
  # トラフィックの 60% は foo サービスに、40% は bar サービスに送信されます。
  higress.ingress.kubernetes.io/destination: |
    60% foo.default.svc.cluster.local:8080
    40% bar.default.svc.cluster.local:9090

サービスサブセット

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/service-subset

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

これは、1 つの Service が複数のデプロイメントを管理するシナリオに適用されます。Ingress によって定義されたルートが、そのサービスの Pod のサブセットにトラフィックを転送することを指定します。

  • `subset-labels` アノテーションが構成されていない場合、このアノテーションの値は次の意味を持ちます:

    • 値が `""` または `base` の場合、リクエストは `opensergo.io/canary: ""` ラベルを持つか、`opensergo.io/canary` プレフィックスを持つラベルキーがない Pod コレクションに転送されます。これには、空のラベルを持つ Pod またはラベルのない Pod が含まれます。

    • 値が他の何かに設定されている場合、リクエストは `opensergo.io/canary-{value}: "{value}"` ラベルを持つ Pod コレクションに転送されます。たとえば、値が `gray` の場合、リクエストは `opensergo.io/canary-gray: gray` ラベルを持つ Pod コレクションに転送されます。

  • `subset-labels` アノテーションが構成されている場合、リクエストは `subset-labels` アノテーションで定義されたキーと値のペアを持つ Pod コレクションにのみ転送されます。

説明

サービスに指定されたラベルを持つ Pod がない場合、トラフィックはディザスタリカバリのためにそのサービスのすべての Pod に自動的にルーティングされます。

higress.ingress.kubernetes.io/subset-labels

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

オプション。このアノテーションは service-subset と連携して、どのラベル付き Pod が同じサブセットに属するかを明示的に構成します。

フォールバック (ディザスタリカバリ)

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/default-backend

Ingress

互換

ディザスタリカバリサービス。Ingress で定義されたサービスに使用可能なノードがない場合、リクエストはこのディザスタリカバリサービスに自動的に転送されます。

nginx.ingress.kubernetes.io/custom-http-errors

Ingress

互換

このアノテーションは default-backend と連携して機能します。バックエンドサービスが指定された HTTP 応答コードを返すと、元のリクエストはディザスタリカバリサービスに転送されます。

重要

リクエストがディザスタリカバリサービスに転送されると、リクエストパスは `/` に再書き込みされます。この動作は ingress-nginx と一致します。

正規表現の一致

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/use-regex

Ingress

互換

Ingress で定義されたパスが正規表現の一致を使用することを示します。正規表現は RE2 構文 を使用します。

再書き込み

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/rewrite-target

Ingress

互換

Ingress で定義された元のパスを指定されたターゲットに再書き込みします。グループキャプチャ がサポートされています。

nginx.ingress.kubernetes.io/upstream-vhost

Ingress

互換

Ingress で定義されたルートに一致するリクエストがバックエンドサービスに転送されると、Host ヘッダーが指定された値に変更されます。

リダイレクト

説明

Nginx と Nginx Ingress の機能セットは同一ではありません。Nginx はより広範な機能を備えています。Nginx Ingress の公式ドキュメントでは、リダイレクトに NGINX 変数 を使用することのサポートについては言及されていません。Nginx Ingress の一部のバージョンでは NGINX 変数の構成がサポートされている場合がありますが、公式に文書化されていないため、それらを使用すると互換性のリスクが生じる可能性があります。Nginx Ingress で NGINX 変数を使用することは避けてください。

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/ssl-redirect

Ingress

互換

HTTP を HTTPS にリダイレクトします。

nginx.ingress.kubernetes.io/force-ssl-redirect

Ingress

互換

HTTP を HTTPS にリダイレクトします。

nginx.ingress.kubernetes.io/permanent-redirect

Ingress

互換

恒久的なリダイレクト。

nginx.ingress.kubernetes.io/permanent-redirect-code

Ingress

互換

恒久的なリダイレクトの状態コード。

nginx.ingress.kubernetes.io/temporal-redirect

Ingress

互換

一時的なリダイレクト。

nginx.ingress.kubernetes.io/app-root

Ingress

互換

アプリケーションのルートパスを変更します。`/` へのリクエストは新しいパスにリダイレクトされます。

クロスドメイン

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/enable-cors

Ingress

互換

クロスドメインアクセスを有効または無効にします。

nginx.ingress.kubernetes.io/cors-allow-origin

Ingress

互換

許可されたサードパーティサイト。

nginx.ingress.kubernetes.io/cors-allow-methods

Ingress

互換

許可されたリクエストメソッド (GET、POST、PUT など)。

nginx.ingress.kubernetes.io/cors-allow-headers

Ingress

互換

許可されたリクエストヘッダー。

nginx.ingress.kubernetes.io/cors-expose-headers

Ingress

互換

ブラウザに公開する許可された応答ヘッダー。

nginx.ingress.kubernetes.io/cors-allow-credentials

Ingress

互換

認証情報を許可するかどうかを指定します。

nginx.ingress.kubernetes.io/cors-max-age

Ingress

互換

プリフライト結果の最大キャッシュ期間。

ヘッダーコントロール

説明

標準ルートで定義されたヘッダー制御のアノテーションは、グレースケールルートには適用されません。つまり、標準ルートとグレースケールルートで定義されたヘッダー制御のアノテーションは相互に排他的であり、独立して有効になります。この機能を使用して、標準ルートとグレースケールルートへのリクエストに対して異なるヘッダー操作ポリシーを設定できます。

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/request-header-control-add

Ingress

Higress 拡張

リクエストがバックエンドサービスに転送されるときに、指定されたヘッダーを追加します。ヘッダーがすでに存在する場合、新しい値が元の値に追加されます。構文は次のとおりです。

  • 単一ヘッダー: Key Value。

  • 複数ヘッダー: YAML 特殊文字 | を使用して、各キーと値のペアを別々の行に配置します。

higress.ingress.kubernetes.io/request-header-control-update

Ingress

Higress 拡張

リクエストがバックエンドサービスに転送されるときに、指定されたヘッダーを更新します。ヘッダーがすでに存在する場合、新しい値が元の値を上書きします。構文は次のとおりです。

  • 単一ヘッダー: Key Value。

  • 複数ヘッダー: YAML 特殊文字 | を使用して、各キーと値のペアを別々の行に配置します。

higress.ingress.kubernetes.io/request-header-control-remove

Ingress

Higress 拡張

リクエストがバックエンドサービスに転送されるときに、指定されたヘッダーを削除します。構文は次のとおりです。

  • 単一ヘッダー: Key。

  • 複数ヘッダー: コンマを使用してヘッダーを区切ります。

higress.ingress.kubernetes.io/response-header-control-add

Ingress

Higress 拡張

バックエンドサービスからの応答に指定されたヘッダーを追加してから、クライアントに転送します。ヘッダーがすでに存在する場合、新しい値が元の値に追加されます。構文は次のとおりです。

  • 単一ヘッダー: キー 値

  • 複数ヘッダー: YAML 特殊文字 | を使用して、各キーと値のペアを別々の行に配置します。

higress.ingress.kubernetes.io/response-header-control-update

Ingress

Higress 拡張

バックエンドサービスからの応答の指定されたヘッダーを更新してから、クライアントに転送します。ヘッダーがすでに存在する場合、新しい値が元の値を上書きします。構文は次のとおりです。

  • 単一ヘッダー: キー 値

  • 複数ヘッダー: YAML 特殊文字 | を使用して、各キーと値のペアを別々の行に配置します。

higress.ingress.kubernetes.io/response-header-control-remove

Ingress

Higress 拡張

バックエンドサービスからの応答から指定されたヘッダーを削除してから、クライアントに転送します。構文は次のとおりです。

  • 単一ヘッダー: Key。

  • 複数ヘッダー: コンマを使用してヘッダーを区切ります。

タイムアウト

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/timeout

Ingress

Higress 拡張

リクエストのタイムアウト期間 (秒単位)。デフォルトでは、タイムアウトは構成されていません。

説明

タイムアウト設定はアプリケーション層に適用され、トランスポート層の TCP には適用されません。

リトライ

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/proxy-next-upstream-tries

Ingress

互換

リクエストの最大リトライ回数。デフォルトは 3 です。

nginx.ingress.kubernetes.io/proxy-next-upstream-timeout

Ingress

互換

リクエストリトライのタイムアウト期間 (秒単位)。デフォルトでは、タイムアウトは構成されていません。

nginx.ingress.kubernetes.io/proxy-next-upstream

Ingress

互換

リクエストをリトライする条件。詳細については、「Nginx リトライメカニズム」をご参照ください。

トラフィックミラーリング

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/mirror-target-service

Ingress

Higress 拡張

トラフィックをコピーし、指定されたミラーサービスに転送します。サービス形式は `namespace/name:port` です

  • namespace: Kubernetes Service が存在する名前空間。これはオプションです。デフォルトは Ingress の名前空間です。

  • name: Kubernetes Service の名前。これは必須です。

  • port: トラフィックが転送される Kubernetes Service のポート。これはオプションです。デフォルトは最初のポートです。

higress.ingress.kubernetes.io/mirror-percentage

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.32 が必要

コピーするトラフィックの割合。値の範囲は 0 から 100 です。デフォルトは 100 です。

ドメイン名エイリアス

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/server-alias

ドメイン名

  • 部分的に互換 (完全一致およびワイルドカードドメイン名のみをサポート)

  • ゲートウェイバージョン 1.2.30 が必要

Ingress spec に表示されるドメイン名のエイリアスを定義します。ドメイン名エイリアスは、ソースドメインの TLS、ルーティング、およびトラフィックガバナンス構成を共有します。

シングルインスタンスのレート制限 (非推奨予定)

アノテーション

スコープ

サポートレベル

説明

higress.ingress.kubernetes.io/route-limit-rpm

Ingress

Higress 拡張

各ゲートウェイインスタンス上のこの Ingress で定義されたルートの 1 分あたりの最大リクエスト数。最大瞬間リクエスト数は、この値に limit-burst-multiplier を乗算したものです。

レート制限がトリガーされると、応答本文は local_rate_limited になり、応答ステータスコードは次のようになります。

  • 1.2.23 より前のゲートウェイバージョンの場合: ステータスコードは 503 です。

  • ゲートウェイバージョン 1.2.23 以降の場合: ステータスコードは 429 です。

higress.ingress.kubernetes.io/route-limit-rps

Ingress

Higress 拡張

各ゲートウェイインスタンス上のこの Ingress で定義されたルートの 1 秒あたりの最大リクエスト数。最大瞬間リクエスト数は、この値に limit-burst-multiplier を乗算したものです。

レート制限がトリガーされると、応答本文は local_rate_limited になり、応答ステータスコードは次のようになります。

  • 1.2.23 より前のゲートウェイバージョンの場合: ステータスコードは 503 です。

  • ゲートウェイバージョン 1.2.23 以降の場合: ステータスコードは 429 です。

higress.ingress.kubernetes.io/route-limit-burst-multiplier

Ingress

Higress 拡張

最大瞬間リクエスト数の係数。デフォルトは 5 です。

グローバルレート制限 (推奨)

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/rate-limit

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

ゲートウェイインスタンス上のこの Ingress で定義されたルートのグローバルレート制限 (1 秒あたりのリクエスト数)。

higress.ingress.kubernetes.io/rate-limit-fallback-custom-response-code

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

この Ingress で定義されたルートに対してレート制限がトリガーされたときの応答ステータスコード。デフォルトは 429 です。

説明

このアノテーションは `rate-limit-fallback-redirect-url` と相互に排他的です。カスタム応答またはリダイレクトのいずれかを指定できます。

higress.ingress.kubernetes.io/rate-limit-fallback-custom-response-body-type

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

この Ingress で定義されたルートに対してレート制限がトリガーされたときの応答本文のフォーマット。デフォルトは text です。

  • text に設定した場合: 応答の `Content-Type` は `text/plain; charset=UTF-8` です。

  • JSON に設定した場合: 応答の `Content-Type` は `application/json; charset=UTF-8` です。

higress.ingress.kubernetes.io/rate-limit-fallback-custom-response-body

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

この Ingress で定義されたルートに対してレート制限がトリガーされたときの応答本文。デフォルトは `sentinel rate limited` です。

higress.ingress.kubernetes.io/rate-limit-fallback-redirect-url

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

この Ingress で定義されたルートに対してレート制限がトリガーされたときのリダイレクト URL。

説明

このアノテーションは `rate-limit-fallback-custom-response-code` と相互に排他的です。リダイレクトまたはカスタム応答のいずれかを指定できます。

グローバル同時実行制御

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/concurrency-limit

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

ゲートウェイインスタンス上のこの Ingress で定義されたルートのグローバル同時実行制限。これは、同時に処理できるリクエストの最大数です。

higress.ingress.kubernetes.io/concurrency-limit-fallback-custom-response-code

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

この Ingress で定義されたルートに対して同時実行制限がトリガーされたときの応答ステータスコード。デフォルトは 429 です。

説明

このアノテーションは `concurrency-limit-fallback-redirect-url` と相互に排他的です。カスタム応答またはリダイレクトのいずれかを指定できます。

higress.ingress.kubernetes.io/concurrency-limit-fallback-custom-response-body-type

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

この Ingress で定義されたルートに対して同時実行制限がトリガーされたときの応答本文のフォーマット。デフォルトは text です。

  • text に設定した場合: 応答の `Content-Type` は `text/plain; charset=UTF-8` です。

  • JSON に設定した場合: 応答の `Content-Type` は `application/json; charset=UTF-8` です。

higress.ingress.kubernetes.io/concurrency-limit-fallback-custom-response-body

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

この Ingress で定義されたルートに対して同時実行制限がトリガーされたときの応答本文。デフォルトは `sentinel rate limited` です。

higress.ingress.kubernetes.io/concurrency-limit-fallback-redirect-url

Ingress

  • Higress 拡張

  • ゲートウェイバージョン 1.2.25 が必要

この Ingress で定義されたルートに対して同時実行制限がトリガーされたときのリダイレクト URL。

説明

このアノテーションは `concurrency-limit-fallback-custom-response-code` と相互に排他的です。リダイレクトまたはカスタム応答のいずれかを指定できます。

バックエンドサービスで使用されるプロトコル

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/backend-protocol

サービス

部分的に互換。AJP と FCGI はサポートされていません。

バックエンドサービスで使用されるプロトコルを指定します。デフォルトは HTTP です。サポートされている値は次のとおりです。

  • HTTP

  • HTTP2

  • HTTPS

  • gRPC

  • gRPCS

ロードバランシング

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/load-balance

サービス

部分的に互換。ewma アルゴリズムはサポートされていません。EWMA アルゴリズムを構成すると、システムは round_robin アルゴリズムにフォールバックします。

バックエンドサービスの標準ロードバランシングアルゴリズム。デフォルトは round_robin です。有効な値は次のとおりです。

  • round_robin: ラウンドロビン負荷分散。

  • least_conn: 最小接続ロードバランシング。

  • random: ランダム負荷分散。

nginx.ingress.kubernetes.io/upstream-hash-by

サービス

部分的に互換。NGINX 変数と定数の組み合わせはサポートされていません。

一貫性ハッシュロードバランシングアルゴリズム。APIG Ingress は次の形式をサポートしています。

  • APIG Ingress は一部の NGINX 変数の構成をサポートしています。

    • $request_uri: リクエストパス (パスパラメーターを含む) がハッシュキーとして使用されます。

    • $host: リクエストホストがハッシュキーとして使用されます。

    • $remote_addr: リクエストのクライアント IP アドレスがハッシュキーとして使用されます。

  • リクエストヘッダーに基づく一貫性ハッシュ。$http_headerName として構成します。

  • リクエストパスパラメーターに基づく一貫性ハッシュ。$arg_varName として構成します。

サービスウォームアップ (グレースフル起動)

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/warmup

サービス

Higress 拡張

サービスのランプアップ期間 (秒単位)。デフォルトでは無効になっています。

重要

サービスウォームアップは、選択したロードバランシングアルゴリズムに依存します。現在、`round_robin` と `least_conn` のみがサポートされています。

Cookie アフィニティ

アノテーション

機能

サポートレベル

説明

nginx.ingress.kubernetes.io/affinity

サービス

互換

アフィニティタイプ。現在、cookie のみがサポートされています。デフォルトは cookie です。

nginx.ingress.kubernetes.io/affinity-mode

サービス

部分的に互換。persistent モードはサポートされていません。

アフィニティモード。APIG Ingress は現在、balanced モードのみをサポートしています。デフォルトは balanced モードです。

nginx.ingress.kubernetes.io/session-cookie-name

サービス

互換

ハッシュキーとして使用される指定された Cookie の値を構成します。

nginx.ingress.kubernetes.io/session-cookie-path

サービス

互換

指定された Cookie が存在しない場合、これは生成された Cookie のパス値です。デフォルトは / です。

nginx.ingress.kubernetes.io/session-cookie-max-age

サービス

互換

指定された Cookie が存在しない場合、これは生成された Cookie の有効期限 (秒単位) です。デフォルトはセッションレベルです。

nginx.ingress.kubernetes.io/session-cookie-expires

サービス

互換

指定された Cookie が存在しない場合、これは生成された Cookie の有効期限 (秒単位) です。デフォルトはセッションレベルです。

IP アクセス制御

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/whitelist-source-range

Ingress

互換

ルートの IP ホワイトリストを指定します。IP アドレスまたは Classless Inter-Domain Routing (CIDR) ブロックをサポートし、コンマで区切ります。

nginx.ingress.kubernetes.io/denylist-source-range

Ingress

  • 互換

  • ゲートウェイバージョン 1.2.31 が必要

ルートの IP ブラックリストを指定します。IP アドレスまたは CIDR ブロックをサポートし、コンマで区切ります。

説明

このアノテーションは、Higress 拡張アノテーション `higress.ingress.kubernetes.io/blacklist-source-range` よりも優先度が高くなります。

higress.ingress.kubernetes.io/blacklist-source-range

Ingress

Higress 拡張

ルートの IP ブラックリストを指定します。IP アドレスまたは CIDR ブロックをサポートし、コンマで区切ります。

higress.ingress.kubernetes.io/domain-whitelist-source-range

Ingress

Higress 拡張

ドメイン名の IP ホワイトリストを指定します。ドメインレベルの優先度はルートレベルの優先度よりも低くなります。IP アドレスまたは CIDR ブロックをサポートし、コンマで区切ります。

higress.ingress.kubernetes.io/domain-blacklist-source-range

Ingress

Higress 拡張

ドメイン名の IP ブラックリストを指定します。ドメインレベルの優先度はルートレベルの優先度よりも低くなります。IP アドレスまたは CIDR ブロックをサポートし、コンマで区切ります。

ゲートウェイとバックエンドサービス間の接続プール構成

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/connection-policy-tcp-max-connection

サービス

Higress 拡張

ゲートウェイとバックエンドサービス間で確立できる最大接続数。

higress.ingress.kubernetes.io/connection-policy-tcp-max-connection-per-endpoint

サービス

Higress 拡張

ゲートウェイとバックエンドサービスの単一ノード間で確立できる最大接続数。

higress.ingress.kubernetes.io/connection-policy-http-max-request-per-connection

サービス

Higress 拡張

ゲートウェイとバックエンドサービス間の接続あたりの最大リクエスト数。

セキュリティ保護

クライアントとゲートウェイ間の暗号化通信

アノテーション

適用範囲

サポートレベル

説明

higress.ingress.kubernetes.io/tls-min-protocol-version

ドメイン名

Higress 拡張

最小 TLS バージョンを指定します。デフォルトは TLSv1.0 です。有効な値は次のとおりです。

  • TLSv1.0

  • TLSv1.1

  • TLSv1.2

  • TLSv1.3

higress.ingress.kubernetes.io/tls-max-protocol-version

ドメイン名

Higress 拡張

最大 TLS バージョンを指定します。デフォルトは TLSv1.3 です。有効な値は次のとおりです。

  • TLSv1.0

  • TLSv1.1

  • TLSv1.2

  • TLSv1.3

nginx.ingress.kubernetes.io/ssl-cipher

ドメイン名

互換

TLS の暗号スイートを指定します。コロン (:) で区切って複数のスイートを指定できます。これは、TLS ハンドシェイクが TLS v1.0 から TLS v1.2 を使用する場合にのみ有効になります。

デフォルトの暗号スイートは次のとおりです。

  • ECDHE-ECDSA-AES128-GCM-SHA256

  • ECDHE-RSA-AES128-GCM-SHA256

  • ECDHE-ECDSA-AES128-SHA

  • ECDHE-RSA-AES128-SHA

  • AES128-GCM-SHA256

  • AES128-SHA

  • ECDHE-ECDSA-AES256-GCM-SHA384

  • ECDHE-RSA-AES256-GCM-SHA384

  • ECDHE-ECDSA-AES256-SHA

  • ECDHE-RSA-AES256-SHA

  • AES256-GCM-SHA384

  • AES256-SHA

higress.ingress.kubernetes.io/auth-tls-secret

ドメイン名

部分的に互換。シークレット名は `(ドメイン名証明書が配置されているシークレットの名前)-cacert` の形式である必要があります

mTLS ハンドシェイク中に提供されたクライアント証明書を検証するためにゲートウェイが使用する CA 証明書。このアノテーションは主に、ゲートウェイがクライアントの ID を認証する必要があるシナリオで使用されます。

ゲートウェイとバックエンドサービス間の暗号化通信

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/proxy-ssl-secret

サービス

互換

ゲートウェイが使用するクライアント証明書。バックエンドサービスは、この証明書をゲートウェイの ID 認証に使用します。

nginx.ingress.kubernetes.io/proxy-ssl-name

サービス

互換

TLS ハンドシェイク中に使用される SNI。

nginx.ingress.kubernetes.io/proxy-ssl-server-name

サービス

互換

TLS ハンドシェイク中の SNI の使用を有効または無効にします。

認証と権限付与

基本

アノテーション

適用範囲

サポートレベル

説明

nginx.ingress.kubernetes.io/auth-type

Ingress

部分的に互換。Basic のみサポートされています。

認証タイプ。

nginx.ingress.kubernetes.io/auth-secret

Ingress

互換

Secret の名前 (<namespace>/<name> 形式)。この Ingress で定義されたルートへのアクセス権限が付与されているユーザーのユーザー名とパスワードが含まれています。

nginx.ingress.kubernetes.io/auth-secret-type

Ingress

互換

Secret コンテンツのフォーマット。

  • auth-file: data のキーは `auth` で、値にはユーザー名とパスワードが含まれます。複数のアカウントは改行で区切ります。

  • auth-map: data のキーはユーザー名で、値はパスワードです。

nginx.ingress.kubernetes.io/auth-realm

Ingress

互換

保護レルム。同じ名前のレルムはユーザー名とパスワードを共有します。

Nginx Ingress アノテーションの詳細については、「公式ドキュメント」をご参照ください。