第11章 入力 networking.k8s.io/v1


説明
Ingress は、インバウンド接続がバックエンドによって定義されたエンドポイントに到達できるようにするルールのコレクションです。Ingress は、サービスに外部から到達可能な URL を提供し、トラフィックの負荷を分散し、SSL を終了し、名前ベースの仮想ホスティングを提供するように設定できます。
タイプ
object

11.1. 仕様

プロパティータイプ説明

apiVersion

string

APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。

kind

string

kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できることがあります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。

metadata

ObjectMeta

標準オブジェクトのメタデータ。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。

spec

object

IngressSpec は、ユーザーが存在したいイングレスを記述します。

status

object

IngressStatus は、Ingress の現在の状態を記述します。

11.1.1. .spec

説明
IngressSpec は、ユーザーが存在したいイングレスを記述します。
タイプ
object
プロパティータイプ説明

defaultBackend

object

IngressBackend は、特定のサービスとポートのすべてのエンドポイントを記述します。

ingressClassName

string

ingressClassName は、IngressClass クラスターリソースの名前です。Ingress コントローラー実装は、このフィールドを使用して、推移的な接続 (controller IngressClass Ingress リソース) によってこの Ingress リソースを提供する必要があるかどうかを確認します。kubernetes.io/ingress.class アノテーション (単純な定数名) は正式に定義されたことはありませんでしたが、Ingress コントローラーと Ingress リソース間の直接バインディングを作成するために Ingress コントローラーによって広くサポートされていました。新規作成された Ingress リソースでは、このフィールドの使用を優先する必要があります。ただし、アノテーションは正式に非推奨になっていますが、後方互換性の理由から、Ingress コントローラーはそのアノテーションが存在する場合は引き続きそのアノテーションを受け入れる必要があります。

rules

array

rules は、Ingress の設定に使用されるホストルールのリストです。指定されていない場合、またはルールが一致しない場合、すべてのトラフィックがデフォルトのバックエンドに送信されます。

rules[]

object

IngressRule は、指定されたホストの下のパスを関連するバックエンドサービスにマッピングするルールを表します。着信リクエストは、最初にホストの一致について評価され、次に一致する IngressRuleValue に関連付けられたバックエンドにルーティングされます。

tls

array

tls は TLS 設定を表します。現在、Ingress は単一の TLS ポート 443 のみをサポートしています。このリストの複数のメンバーが異なるホストを指定する場合、入力を実行する入力コントローラーが SNI をサポートしていれば、SNITLS 拡張を介して指定されたホスト名に従って同じポートで多重化されます。

tls[]

object

IngressTLS は、Ingress に関連付けられたトランスポート層のセキュリティーについて説明しています。

11.1.2. .spec.defaultBackend

説明
IngressBackend は、特定のサービスとポートのすべてのエンドポイントを記述します。
タイプ
object
プロパティータイプ説明

resource

TypedLocalObjectReference

resource は、Ingress オブジェクトの namespace にある別の Kubernetes リソースへの ObjectRef です。リソースを指定する場合は、service.Name と service.Port を指定しないでください。これは、サービスとの相互に排他的な設定です。

service

object

IngressServiceBackend は、Kubernetes サービスをバックエンドとして参照します。

11.1.3. .spec.defaultBackend.service

説明
IngressServiceBackend は、Kubernetes サービスをバックエンドとして参照します。
タイプ
object
必須
  • name
プロパティータイプ説明

name

string

name は参照されるサービスです。サービスは、Ingress オブジェクトと同じ名前空間に存在する必要があります。

port

object

ServiceBackendPort は、参照されているサービスポートです。

11.1.4. .spec.defaultBackend.service.port

説明
ServiceBackendPort は、参照されているサービスポートです。
タイプ
object
プロパティータイプ説明

name

string

name は、サービスのポートの名前です。これは、番号との相互に排他的な設定です。

number

integer

number は、サービスのポート番号 (80 など) の数値です。これは、名前との相互に排他的な設定です。

11.1.5. .spec.rules

説明
rules は、Ingress の設定に使用されるホストルールのリストです。指定されていない場合、またはルールが一致しない場合、すべてのトラフィックがデフォルトのバックエンドに送信されます。
タイプ
array

11.1.6. .spec.rules[]

説明
IngressRule は、指定されたホストの下のパスを関連するバックエンドサービスにマッピングするルールを表します。着信リクエストは、最初にホストの一致について評価され、次に一致する IngressRuleValue に関連付けられたバックエンドにルーティングされます。
タイプ
object
プロパティータイプ説明

host

string

host は、RFC 3986 で定義されている、ネットワークホストの完全修飾ドメイン名です。RFC 3986 で定義されている URI のホスト部分からの次の逸脱に注意してください:1。IP は許可されていません。現在、IngressRuleValue は、親 Ingress の仕様の IP にのみ適用できます。2.ポートが許可されていないため、: 区切り文字は尊重されません。現在、Ingress のポートは暗黙的に http の場合は:80、https の場合は:443 です。これらは両方とも将来変更される可能性があります。着信要求は、IngressRuleValue の前にホストと照合されます。ホストが指定されていない場合、Ingress は指定された IngressRuleValue に基づいてすべてのトラフィックをルーティングします。

host には、ネットワークホストの終端ドットのないドメイン名である "precise" (例: "foo.bar.com")、または単一のワイルドカードラベルが接頭辞として付けられたドメイン名である "wildcard" (例: ".foo.com") を指定できます。ワイルドカード文字 '' は、それ自体が最初の DNS ラベルとして表示される必要があり、単一のラベルとのみ一致します。ワイルドカードラベルを単独で使用することはできません (例:Host == "*")。リクエストは、次の方法でホストフィールドと照合されます:1。host が正確な場合、http ホストヘッダーが Host と等しい場合、リクエストはこのルールに一致します。2.host がワイルドカードの場合、http ホストヘッダーがワイルドカードルールの接尾辞 (最初のラベルを削除したもの) と等しい場合、リクエストはこのルールに一致します。

http

object

HTTPIngressRuleValue は、バックエンドを指す http セレクターのリストです。例: http://<host>/<path>?<searchpart> URL の一部が RFC 3986 に対応する場合、このリソースを使用して、最後の '/' と最初の '?' または '#' の間にあるすべてと一致します。

11.1.7. .spec.rules[].http

説明
HTTPIngressRuleValue は、バックエンドを指す http セレクターのリストです。例: http://<host>/<path>?<searchpart> URL の一部が RFC 3986 に対応する場合、このリソースを使用して、最後の '/' と最初の '?' または '#' の間にあるすべてと一致します。
タイプ
object
必須
  • paths
プロパティータイプ説明

paths

array

paths は、リクエストをバックエンドにマップするパスのコレクションです。

paths[]

object

HTTPIngressPath は、パスをバックエンドに関連付けます。パスに一致する着信 URL はバックエンドに転送されます。

11.1.8. .spec.rules[].http.paths

説明
paths は、リクエストをバックエンドにマップするパスのコレクションです。
タイプ
array

11.1.9. .spec.rules[].http.paths[]

説明
HTTPIngressPath は、パスをバックエンドに関連付けます。パスに一致する着信 URL はバックエンドに転送されます。
タイプ
object
必須
  • pathType
  • backend
プロパティータイプ説明

backend

object

IngressBackend は、特定のサービスとポートのすべてのエンドポイントを記述します。

path

string

path は受信リクエストのパスと一致します。現在、RFC 3986 で定義されているように、URL の従来のパス部分で許可されていない文字を含めることができます。パスは/で始まる必要があり、値が Exact または Prefix の PathType を使用する場合は存在する必要があります。

pathType

string

pathType は、パスの一致の解釈を決定します。PathType は、次のいずれかの値になります。*正確:URL パスと完全に一致します。*接頭辞:/で分割された URL パス接頭辞に基づいて一致します。マッチングは、要素ごとにパス要素で行われます。パス要素参照は、/区切り文字で分割されたパス内のラベルのリストです。すべての p が要求パスの p の要素ごとの接頭辞である場合、要求はパス p と一致します。パスの最後の要素がリクエストパスの最後の要素のサブストリングである場合、一致しないことに注意してください (たとえば、/foo/bar は/foo/bar/baz と一致しますが、/foo/barbaz とは一致しません)。* ImplementationSpecific: パスマッチングの解釈は IngressClass 次第です。実装では、これを個別の PathType として扱うことも、Prefix または Exact パスタイプと同じように扱うこともできます。すべてのパスタイプをサポートするには、実装が必要です。

使用可能な列挙値: - "Exact" は、大文字と小文字を区別して、URL パスと正確に一致します。- "ImplementationSpecific" のマッチングは IngressClass に依存します。実装では、これを別の PathType として扱うことも、Prefix または Exact パスタイプと同様に扱うこともできます。- "Prefix" は、 '/' で分割された URL パスの接頭辞をベースに一致します。マッチングは大文字と小文字が区別され、パス要素ごとに行われます。パス要素は、'/' の区切り文字で分割されたパス内のラベルリストを指します。すべての p が要求パスの p の要素ごとの接頭辞である場合、要求はパス p と一致します。パスの最後の要素がリクエストパスの最後の要素のサブストリングである場合、一致しないことに注意してください (たとえば、/foo/bar は/foo/bar/baz と一致しますが、/foo/barbaz とは一致しません)。Ingress 仕様に一致するパスが複数存在する場合、最も長く一致するパスが優先されます。例: -/foo/bar は/foo/barbaz へのリクエストと一致しません -/foo/bar は /foo/bar および /foo/bar/baz へのリクエストと一致します -/foo と/foo/は、 /foo と /foo/ のへのリクエスト両方に一致します。両方のパスが Ingress 仕様に存在する場合、最も長く一致するパス (/foo/) が優先されます。

11.1.10. .spec.rules[].http.paths[].backend

説明
IngressBackend は、特定のサービスとポートのすべてのエンドポイントを記述します。
タイプ
object
プロパティータイプ説明

resource

TypedLocalObjectReference

resource は、Ingress オブジェクトの namespace にある別の Kubernetes リソースへの ObjectRef です。リソースを指定する場合は、service.Name と service.Port を指定しないでください。これは、サービスとの相互に排他的な設定です。

service

object

IngressServiceBackend は、Kubernetes サービスをバックエンドとして参照します。

11.1.11. .spec.rules[].http.paths[].backend.service

説明
IngressServiceBackend は、Kubernetes サービスをバックエンドとして参照します。
タイプ
object
必須
  • name
プロパティータイプ説明

name

string

name は参照されるサービスです。サービスは、Ingress オブジェクトと同じ名前空間に存在する必要があります。

port

object

ServiceBackendPort は、参照されているサービスポートです。

11.1.12. .spec.rules[].http.paths[].backend.service.port

説明
ServiceBackendPort は、参照されているサービスポートです。
タイプ
object
プロパティータイプ説明

name

string

name は、サービスのポートの名前です。これは、番号との相互に排他的な設定です。

number

integer

number は、サービスのポート番号 (80 など) の数値です。これは、名前との相互に排他的な設定です。

11.1.13. .spec.tls

説明
tls は TLS 設定を表します。現在、Ingress は単一の TLS ポート 443 のみをサポートしています。このリストの複数のメンバーが異なるホストを指定する場合、入力を実行する入力コントローラーが SNI をサポートしていれば、SNITLS 拡張を介して指定されたホスト名に従って同じポートで多重化されます。
タイプ
array

11.1.14. .spec.tls[]

説明
IngressTLS は、Ingress に関連付けられたトランスポート層のセキュリティーについて説明しています。
タイプ
object
プロパティータイプ説明

hosts

array (string)

hosts は、TLS 証明書に含まれるホストのリストです。このリストの値は、tlsSecret で使用されている名前と一致する必要があります。指定しない場合、デフォルトで、この入力を満たすロードバランサーコントローラーのワイルドカードホスト設定になります。

secretName

string

SecretName は、ポート 443 で TLS トラフィックを終了するために使用されるシークレットの名前です。SNI ホスト名のみに基づく TLS ルーティングを許可するには、フィールドをオプションのままにします。リスナー内の SNI ホストが、IngressRule で使用される Host ヘッダーフィールドと競合する場合、SNI ホストが終了に使用され、"Host" ヘッダーの値がルーティングに使用されます。

11.1.15. .status

説明
IngressStatus は、Ingress の現在の状態を記述します。
タイプ
object
プロパティータイプ説明

loadBalancer

object

IngressLoadBalancerStatus はロードバランサーのステータスを表します。

11.1.16. .status.loadBalancer

説明
IngressLoadBalancerStatus はロードバランサーのステータスを表します。
タイプ
object
プロパティータイプ説明

ingress

array

ingress はロードバランサーの Ingress ポイントを含むリストです。

ingress[]

object

IngressLoadBalancerIngress は、ロードバランサーの ingress ポイントのステータスを表します。

11.1.17. .status.loadBalancer.ingress

説明
ingress はロードバランサーの Ingress ポイントを含むリストです。
タイプ
array

11.1.18. .status.loadBalancer.ingress[]

説明
IngressLoadBalancerIngress は、ロードバランサーの ingress ポイントのステータスを表します。
タイプ
object
プロパティータイプ説明

hostname

string

hostname は、DNS ベースのロードバランサーの ingress ポイントに設定されます。

ip

string

ip は、IP ベースのロードバランサーの Ingress ポイントに設定されます。

ports

array

ports は、この LoadBalancer によって公開されるポートに関する情報を提供します。

ports[]

object

IngressPortStatus は、サービスポートのエラー状態を表します。

11.1.19. .status.loadBalancer.ingress[].ports

説明
ports は、この LoadBalancer によって公開されるポートに関する情報を提供します。
タイプ
array

11.1.20. .status.loadBalancer.ingress[].ports[]

説明
IngressPortStatus は、サービスポートのエラー状態を表します。
タイプ
object
必須
  • port
  • protocol
プロパティータイプ説明

error

string

error は、サービスポートの問題を記録するためのものです。エラーの形式は、- 組み込みエラー値は、このファイルで指定され、キャメルケース名を使用する必要がある。- クラウドプロバイダー固有のエラー値には、次のような名前が必要である。foo.example.com/CamelCase 形式に準拠する といった規則に従う必要があります。

port

integer

port は Ingress ポートのポート番号です。

protocol

string

protocol は、ingress ポートのプロトコルです。サポート対象の値は TCP、UDP、SCTP です。

使用可能な列挙値: - "SCTP" は SCTP プロトコル、"TCP" は TCP プロトコル、"UDP" は UDP プロトコルです。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.