第7章 EndpointSlice [discovery.k8s.io/v1]


説明
EndpointSlice は、サービスを実装するエンドポイントのサブセットを表します。特定のサービスでは、ラベルによって選択された複数の EndpointSlice オブジェクトが存在する場合があります。これらのオブジェクトは、エンドポイントの完全なセットを生成するために結合する必要があります。
タイプ
object
必須
  • addressType
  • endpoints

7.1. 仕様

プロパティータイプ説明

addressType

string

addressType は、この EndpointSlice によって伝送されるアドレスのタイプを指定します。このスライスのすべてのアドレスは同じタイプである必要があります。このフィールドは、作成後は不変です。現在、次のアドレスタイプがサポートされています。* IPv4:IPv4 アドレスを表します。* IPv6:IPv6 アドレスを表します。* FQDN: 完全修飾ドメイン名を表します。

使用可能な列挙値: - "FQDN" は、FQDN を表します。"IPv4" は、IPv4 アドレスを表します。"IPv6" は、IPv6 アドレスを表します。

apiVersion

string

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

endpoints

array

エンドポイントは、このスライス内の一意のエンドポイントのリストです。各スライスには、最大 1000 のエンドポイントを含めることができます。

endpoints[]

object

エンドポイントは、サービスを実装する単一の論理的なバックエンドを表します。

kind

string

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

metadata

ObjectMeta

標準オブジェクトのメタデータ。

ポート

array

ポートは、このスライスの各エンドポイントによって公開されるネットワークポートのリストを指定します。各ポートには一意の名前を付ける必要があります。ポートが空の場合、定義されたポートがないことを示します。ポートが nil ポート値で定義されている場合、それはすべてのポートを示します。各スライスには、最大 100 個のポートを含めることができます。

ports[]

object

EndpointPort は、EndpointSlice によって使用されるポートを表します

7.1.1. .endpoints

説明
エンドポイントは、このスライス内の一意のエンドポイントのリストです。各スライスには、最大 1000 のエンドポイントを含めることができます。
タイプ
array

7.1.2. .endpoints[]

説明
エンドポイントは、サービスを実装する単一の論理的なバックエンドを表します。
タイプ
object
必須
  • addresses
プロパティータイプ説明

addresses

array (string)

このエンドポイントのアドレス。このフィールドの内容は、対応する EndpointSliceaddressType フィールドに従って解釈されます。コンシューマーは、自分の能力のコンテキストでさまざまなタイプのアドレスを処理する必要があります。これには、少なくとも 1 つのアドレスが含まれている必要がありますが、100 を超えてはなりません。これらはすべて代替可能であると想定されており、クライアントは最初の要素だけを使用することもできます。https://issue.k8s.io/106267 を参照してください。

conditions

object

EndpointConditions は、エンドポイントの現在の状態を表します。

deprecatedTopology

object (string)

deprecatedTopology には、v1beta1API のトポロジー情報部分が含まれています。このフィールドは非推奨であり、v1beta1 API が削除されると削除されます (kubernetes v1.24 より早く)。このフィールドは値を保持できますが、v1 API を介して書き込むことはできず、このフィールドに書き込もうとすると、黙って無視されます。トポロジー情報は、代わりに zone フィールドと nodeName フィールドにあります。

hints

object

EndpointHints は、エンドポイントの消費方法を説明するヒントを提供します。

hostname

string

このエンドポイントのホスト名。このフィールドは、エンドポイントのコンシューマーがエンドポイントを相互に区別するために使用できます (DNS 名など)。同じホスト名を使用する複数のエンドポイントは代替可能と見なす必要があります (たとえば、DNS の複数の A 値)。小文字で、DNS ラベル (RFC 1123) 検証に合格する必要があります。

nodeName

string

nodeName は、このエンドポイントをホストしているノードの名前を表します。これは、ノードにローカルなエンドポイントを決定するために使用できます。

targetRef

ObjectReference

targetRef は、このエンドポイントを表す Kubernetes オブジェクトへの参照です。

zone

string

zone は、このエンドポイントが存在するゾーンの名前です。

7.1.3. .endpoints[].conditions

説明
EndpointConditions は、エンドポイントの現在の状態を表します。
タイプ
object
プロパティータイプ説明

ready

ブール値

ready は、エンドポイントを管理しているシステムに応じて、このエンドポイントがトラフィックを受信する準備ができていることを示します。nil 値は、不明な状態を示します。ほとんどの場合、コンシューマーはこの未知の状態を準備ができていると解釈する必要があります。互換性の理由から、エンドポイントを終了するために ready が true になることはありません。

serving

ブール値

サービングは、エンドポイントの終了状態に関係なく設定されることを除いて、ready と同じです。終了する準備完了エンドポイントの場合、この条件を true に設定する必要があります。ゼロの場合、コンシューマーは準備完了状態に従う必要があります。

terminating

ブール値

終了は、このエンドポイントが終了していることを示します。nil 値は、不明な状態を示します。コンシューマーは、この未知の状態を、エンドポイントが終了していないことを意味すると解釈する必要があります。

7.1.4. .endpoints[].hints

説明
EndpointHints は、エンドポイントの消費方法を説明するヒントを提供します。
タイプ
object
プロパティータイプ説明

forZones

array

forZones は、トポロジー対応ルーティングを有効にするために、このエンドポイントが消費されるゾーンを示します。

forZones[]

object

ForZone は、このエンドポイントを消費するゾーンに関する情報を提供します。

7.1.5. .endpoints[].hints.forZones

説明
forZones は、トポロジー対応ルーティングを有効にするために、このエンドポイントが消費されるゾーンを示します。
タイプ
array

7.1.6. .endpoints[].hints.forZones[]

説明
ForZone は、このエンドポイントを消費するゾーンに関する情報を提供します。
タイプ
object
必須
  • name
プロパティータイプ説明

name

string

name はゾーンの名前を表します。

7.1.7. .ports

説明
ポートは、このスライスの各エンドポイントによって公開されるネットワークポートのリストを指定します。各ポートには一意の名前を付ける必要があります。ポートが空の場合、定義されたポートがないことを示します。ポートが nil ポート値で定義されている場合、それはすべてのポートを示します。各スライスには、最大 100 個のポートを含めることができます。
タイプ
array

7.1.8. .ports[]

説明
EndpointPort は、EndpointSlice によって使用されるポートを表します
タイプ
object
プロパティータイプ説明

appProtocol

string

このポートのアプリケーションプロトコル。このフィールドは、標準の Kubernetes ラベル構文に従います。接頭辞のない名前は、IANA 標準サービス名用に予約されています (RFC-6335 および https://www.iana.org/assignments/service-names に準拠)。非標準プロトコルでは、mycompany.com/my-custom-protocol などの接頭辞名を使用する必要があります。

name

string

このポートの名前。EndpointSlice のすべてのポートには、一意の名前を付ける必要があります。EndpointSlice が Kubernetes サービスから派生している場合、これは Service.ports。name に対応します。名前は空の文字列であるか、DNS_LABEL 検証に合格する必要があります。*長さは 63 文字以下である必要があります。*小文字の英数字または - で設定する必要があります。*英数字で開始および終了する必要があります。デフォルトは空の文字列です。

port

integer

エンドポイントのポート番号。これが指定されていない場合、ポートは制限されないため、特定のコンシューマーのコンテキストで解釈する必要があります。

protocol

string

このポートの IP プロトコル。UDP、TCP、または SCTP である必要があります。デフォルトは TCP です。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.