拡張 API


OpenShift Container Platform 4.13

拡張 API のリファレンスガイド

Red Hat OpenShift Documentation Team

概要

このドキュメントでは、OpenShift Container Platform の拡張 API のオブジェクトとその詳細な仕様を説明します。

第1章 拡張 API

1.1. APIService [apiregistration.k8s.io/v1]

説明
APIService は、特定の GroupVersion のサーバーを表します。名前は "version.group" である必要があります。
object

1.2. CustomResourceDefinition [apiextensions.k8s.io/v1]

説明
CustomResourceDefinition は、API サーバーで公開する必要があるリソースを表します。その名前は <.spec.name>.<.spec.group> の形式でなければなりません。
object

1.3. MutatingWebhookConfiguration [admissionregistration.k8s.io/v1]

説明
MutatingWebhookConfiguration は、オブジェクトを受け入れるか拒否し、変更する可能性のある Webhook の設定と承認を説明します。
object

1.4. ValidatingWebhookConfiguration [admissionregistration.k8s.io/v1]

説明
ValidatingWebhookConfiguration は、変更せずに受け入れまたは拒否し、反対する Webhook の設定と承認を説明します。
object

第2章 APIService [apiregistration.k8s.io/v1]

説明
APIService は、特定の GroupVersion のサーバーを表します。名前は "version.group" である必要があります。
object

2.1. 仕様

Expand
プロパティー説明

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

APIServiceSpec には、サーバーを見つけて通信するための情報が含まれています。証明書の検証を無効にすることはできますが、https のみがサポートされています。

status

object

APIServiceStatus には、API サーバーに関する派生情報が含まれています

2.1.1. .spec

説明
APIServiceSpec には、サーバーを見つけて通信するための情報が含まれています。証明書の検証を無効にすることはできますが、https のみがサポートされています。
object
必須
  • groupPriorityMinimum
  • versionPriority
Expand
プロパティー説明

caBundle

string

CABundle は、API サーバーのサービング証明書を検証するために使用される PEM エンコードされた CA バンドルです。指定しない場合、apiserver のシステム信頼ルートが使用されます。

group

string

Group は、このサーバーがホストする API グループ名です。

groupPriorityMinimum

integer

GroupPriorityMininum は、このグループが少なくとも持つべき優先度です。優先度が高いということは、優先度の低いグループよりもグループがクライアントに優先されることを意味します。このグループの他のバージョンでは、グループ全体の優先度が高くなるように、さらに高い GroupPriorityMininum 値が指定される場合があることに注意してください。プライマリーソートは GroupPriorityMinimum に基づいており、最大数から最小値 (10 の前に 20) の順に並べられます。二次ソートは、オブジェクトの名前のアルファベット順の比較に基づいています。(v1.foo より前の v1.bar) 次のようなものを推奨します:18000 の* .k8s.io (拡張機能を除く) および PaaS(OpenShift、Deis) は 2000 年代に推奨されます

insecureSkipTLSVerify

boolean

InsecureSkipTLSVerify は、このサーバーと通信するときに TLS 証明書の検証を無効にします。これは強く推奨しません。代わりに CABundle を使用する必要があります。

service

object

ServiceReference は、Service.legacy.k8s.io への参照を保持します

version

string

バージョンは、このサーバーがホストする API バージョンです。たとえば、"v1"

versionPriority

integer

VersionPriority は、グループ内のこの API バージョンの順序を制御します。ゼロより大きくなければなりません。プライマリーソートは VersionPriority に基づいており、最高から最低の順に並べられています (10 の前に 20)。グループ内にあるため、数は少なく、おそらく 10 代になる可能性があります。バージョンの優先度が等しい場合は、バージョン文字列を使用してグループ内の順序を計算します。バージョン文字列が "kube-like" の場合、辞書式順序で並べられた "kube-like" ではないバージョン文字列の上に並べ替えられます。"Kube のような" バージョンは "v" で始まり、その後に数字 (メジャーバージョン) が続き、オプションで文字列 "alpha" または "beta" と別の数字 (マイナーバージョン) が続きます。これらは、最初に GA > ベータ > アルファ (GA はベータやアルファなどの接尾辞のないバージョン) でソートされ、次にメジャーバージョン、次にマイナーバージョンでソートされます。バージョンのソート済みリストの例: v10、v2、v1、v11beta2、v10beta3、v3beta1、v12alpha1、v11alpha2、foo1、foo10。

2.1.2. .spec.service

説明
ServiceReference は、Service.legacy.k8s.io への参照を保持します
object
Expand
プロパティー説明

name

string

名前はサービスの名前です

namespace

string

名前空間はサービスの名前空間です

port

integer

指定されている場合、Webhook をホストしているサービスのポート。下位互換性のために、デフォルトは 443 です。port は有効なポート番号 (1〜65535 を含む) である必要があります。

2.1.3. .status

説明
APIServiceStatus には、API サーバーに関する派生情報が含まれています
object
Expand
プロパティー説明

conditions

array

apiService の現在のサービス状態。

conditions[]

object

APIServiceCondition は、特定の時点での APIService の状態を表します。

2.1.4. .status.conditions

説明
apiService の現在のサービス状態。
array

2.1.5. .status.conditions[]

説明
APIServiceCondition は、特定の時点での APIService の状態を表します。
object
必須
  • type
  • status
Expand
プロパティー説明

lastTransitionTime

time

最後にある状態から別の状態に遷移した時間。

message

string

最後にある状態から別の状態に遷移した時間。

reason

string

条件の最後の遷移の一意の 1 単語の CamelCase 理由。

status

string

ステータスは、状態のステータスです。True、False、Unknown の場合があります。

type

string

タイプは条件のタイプです。

2.2. API エンドポイント

以下の API エンドポイントを利用できます。

  • /apis/apiregistration.k8s.io/v1/apiservices

    • DELETE:APIService のコレクションを削除します
    • GET: 種類 APIService のオブジェクトをリスト表示または監視します
    • POST:APIService を作成します
  • /apis/apiregistration.k8s.io/v1/watch/apiservices

    • GET:APIService のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
  • /apis/apiregistration.k8s.io/v1/apiservices/{name}

    • 削除:APIService を削除します
    • GET: 指定された APIService を読み取ります
    • PATCH: 指定された APIService を部分的に更新します
    • PUT: 指定された APIService を置き換えます
  • /apis/apiregistration.k8s.io/v1/watch/apiservices/{name}

    • GET: 種類 APIService のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
  • /apis/apiregistration.k8s.io/v1/apiservices/{name}/status

    • GET: 指定された APIService のステータスを読み取ります
    • PATCH: 指定された APIService のステータスを部分的に更新します
    • PUT: 指定された APIService のステータスを置き換えます

2.2.1. /apis/apiregistration.k8s.io/v1/apiservices

Expand
表2.1 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
DELETE
説明
APIService のコレクションを削除します
Expand
表2.2 クエリーパラメーター
パラメーター説明

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

gracePeriodSeconds

integer

オブジェクトが削除されるまでの時間 (秒)。値は負の値ではない整数にする必要があります。値をゼロに指定すると、ただちに削除されます。この値が nil の場合は、指定されたタイプのデフォルトの猶予期間が使用されます。指定しない場合は、デフォルトでオブジェクトごとの値になります。ゼロはすぐに削除することを意味します。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

orphanDependents

boolean

非推奨。PropagationPolicy を使用してください。このフィールドは 1.7 で非推奨となります。依存オブジェクトが孤立している必要があります。true/false の場合、"孤立した" ファイナライザーがオブジェクトのファイナライザーリストで追加/削除されます。このフィールドまたは PropagationPolicy のいずれかを設定できますが、両方を設定することはできません。

propagationPolicy

string

ガベージコレクションが実行されるかどうか、およびその方法。このフィールドまたは OrphanDependents のどちらかを設定できますが、両方を設定できません。デフォルトポリシーは、metadata.finalizers に設定されている既存のファイナライザーとリソース固有のデフォルトポリシーによって決定されます。許容値は次のとおりです。'Orphan' - 依存を削除して孤立させます。'Background' - ガベージコレクターがバックグラウンドで依存関係を削除できるようにします。'Foreground' - フォアグラウンド内のすべての依存関係を削除するカスケードポリシーです。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

Expand
表2.3 本文パラメーター
パラメーター説明

body

DeleteOptions スキーマ

 
Expand
表2.4 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

Status スキーマ

401 - Unauthorized

空白

HTTP メソッド
GET
説明
APIService の種類のオブジェクトをリスト表示または監視する
Expand
表2.5 クエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

Expand
表2.6 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

APIServiceList スキーマ

401 - Unauthorized

空白

HTTP メソッド
POST
説明
APIService を作成します
Expand
表2.7 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表2.8 ボディーパラメーター
パラメーター説明

body

APIService スキーマ

 
Expand
表2.9 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

APIService スキーマ

201 - Created

APIService スキーマ

202 - Accepted

APIService スキーマ

401 - Unauthorized

空白

2.2.2. /apis/apiregistration.k8s.io/v1/watch/apiservices

Expand
表2.10 グローバルクエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

HTTP メソッド
GET
説明
APIService のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
Expand
表2.11 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

WatchEvent スキーマ

401 - Unauthorized

空白

2.2.3. /apis/apiregistration.k8s.io/v1/apiservices/{name}

Expand
表2.12 グローバルパスパラメーター
パラメーター説明

name

string

APIService の名前

Expand
表2.13 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
DELETE
説明
APIService を削除します
Expand
表2.14 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

gracePeriodSeconds

integer

オブジェクトが削除されるまでの時間 (秒)。値は負の値ではない整数にする必要があります。値をゼロに指定すると、ただちに削除されます。この値が nil の場合は、指定されたタイプのデフォルトの猶予期間が使用されます。指定しない場合は、デフォルトでオブジェクトごとの値になります。ゼロはすぐに削除することを意味します。

orphanDependents

boolean

非推奨。PropagationPolicy を使用してください。このフィールドは 1.7 で非推奨となります。依存オブジェクトが孤立している必要があります。true/false の場合、"孤立した" ファイナライザーがオブジェクトのファイナライザーリストで追加/削除されます。このフィールドまたは PropagationPolicy のいずれかを設定できますが、両方を設定することはできません。

propagationPolicy

string

ガベージコレクションが実行されるかどうか、およびその方法。このフィールドまたは OrphanDependents のどちらかを設定できますが、両方を設定できません。デフォルトポリシーは、metadata.finalizers に設定されている既存のファイナライザーとリソース固有のデフォルトポリシーによって決定されます。許容値は次のとおりです。'Orphan' - 依存を削除して孤立させます。'Background' - ガベージコレクターがバックグラウンドで依存関係を削除できるようにします。'Foreground' - フォアグラウンド内のすべての依存関係を削除するカスケードポリシーです。

Expand
表2.15 本文パラメーター
パラメーター説明

body

DeleteOptions スキーマ

 
Expand
表2.16 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

Status スキーマ

202 - Accepted

Status スキーマ

401 - Unauthorized

空白

HTTP メソッド
GET
説明
指定された APIService を読み取ります
Expand
表2.17 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

APIService スキーマ

401 - Unauthorized

空白

HTTP メソッド
PATCH
説明
指定された APIService を部分的に更新します
Expand
表2.18 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。このフィールドは、apply 要求 (application/apply-patch) の場合は必須ですが、apply 以外のパッチタイプ (JsonPatch、MergePatch、StrategicMergePatch) の場合は任意です。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

force

boolean

"force" は、Apply 要求を強制します。これは、ユーザーが他の人が所有する競合するフィールドを再取得することを意味します。非適用パッチ要求の場合は、強制フラグを設定解除する必要があります。

Expand
表2.19 本文パラメーター
パラメーター説明

body

Patch スキーマ

 
Expand
表2.20 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

APIService スキーマ

201 - Created

APIService スキーマ

401 - Unauthorized

空白

HTTP メソッド
PUT
説明
指定された APIService を置き換えます
Expand
表2.21 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表2.22 ボディーパラメーター
パラメーター説明

body

APIService スキーマ

 
Expand
表2.23 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

APIService スキーマ

201 - Created

APIService スキーマ

401 - Unauthorized

空白

2.2.4. /apis/apiregistration.k8s.io/v1/watch/apiservices/{name}

Expand
表2.24 グローバルパスパラメーター
パラメーター説明

name

string

APIService の名前

Expand
表2.25 グローバルクエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

HTTP メソッド
GET
説明
APIService の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
Expand
表2.26 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

WatchEvent スキーマ

401 - Unauthorized

空白

2.2.5. /apis/apiregistration.k8s.io/v1/apiservices/{name}/status

Expand
表2.27 グローバルパスパラメーター
パラメーター説明

name

string

APIService の名前

Expand
表2.28 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
GET
説明
指定された APIService のステータスを読み取ります
Expand
表2.29 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

APIService スキーマ

401 - Unauthorized

空白

HTTP メソッド
PATCH
説明
指定された APIService のステータスを部分的に更新します
Expand
表2.30 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。このフィールドは、apply 要求 (application/apply-patch) の場合は必須ですが、apply 以外のパッチタイプ (JsonPatch、MergePatch、StrategicMergePatch) の場合は任意です。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

force

boolean

"force" は、Apply 要求を強制します。これは、ユーザーが他の人が所有する競合するフィールドを再取得することを意味します。非適用パッチ要求の場合は、強制フラグを設定解除する必要があります。

Expand
表2.31 本文パラメーター
パラメーター説明

body

Patch スキーマ

 
Expand
表2.32 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

APIService スキーマ

201 - Created

APIService スキーマ

401 - Unauthorized

空白

HTTP メソッド
PUT
説明
指定された APIService のステータスを置き換えます
Expand
表2.33 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表2.34 ボディーパラメーター
パラメーター説明

body

APIService スキーマ

 
Expand
表2.35 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

APIService スキーマ

201 - Created

APIService スキーマ

401 - Unauthorized

空白

第3章 CustomResourceDefinition [apiextensions.k8s.io/v1]

説明
CustomResourceDefinition は、API サーバーで公開する必要があるリソースを表します。その名前は <.spec.name>.<.spec.group> の形式でなければなりません。
object
必須
  • spec

3.1. 仕様

Expand
プロパティー説明

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

CustomResourceDefinitionSpec は、ユーザーがリソースをどのように表示するかを表します。

status

object

CustomResourceDefinitionStatus は CustomResourceDefinition の状態を示します。

3.1.1. .spec

説明
CustomResourceDefinitionSpec は、ユーザーがリソースをどのように表示するかを表します。
object
必須
  • group
  • names
  • scope
  • versions
Expand
プロパティー説明

変換

object

CustomResourceConversion は、CR のさまざまなバージョンを変換する方法を説明します。

group

string

group は、定義されたカスタムリソースの API グループです。カスタムリソースは /apis/<group>/… の下で提供されます。CustomResourceDefinition の名前 (<names.plural>。<group> の形式) と一致する必要があります。

names

object

CustomResourceDefinitionNames は、この CustomResourceDefinition を提供する名前を示します

preserveUnknownFields

boolean

preserveUnknownFields は、OpenAPI スキーマで指定されていないオブジェクトフィールドを、ストレージに永続化するときに保持する必要があることを示します。apiVersion、kind、metadata、およびメタデータ内の既知のフィールドは常に保持されます。このフィールドは、spec.versions[*].schema.openAPIV3Schemax-preserve-unknown-fields を true に設定するために非推奨になりました。詳細は、https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#field-pruning を参照してください。

scope

string

スコープは、定義されたカスタムリソースがクラスタースコープか名前空間スコープかを示します。許可される値は、クラスター名前空間 です。

versions

array

version は、定義されたカスタムリソースのすべての API バージョンのリストです。バージョン名は、提供されたバージョンが API ディスカバリーにリストされる順序を計算するために使用されます。バージョン文字列が "kube-like" の場合、辞書式順序で並べられた "kube-like" ではないバージョン文字列の上に並べ替えられます。"Kube のような" バージョンは "v" で始まり、その後に数字 (メジャーバージョン) が続き、オプションで文字列 "alpha" または "beta" と別の数字 (マイナーバージョン) が続きます。これらは、最初に GA > ベータ > アルファ (GA はベータやアルファなどの接尾辞のないバージョン) でソートされ、次にメジャーバージョン、次にマイナーバージョンでソートされます。バージョンのソート済みリストの例: v10、v2、v1、v11beta2、v10beta3、v3beta1、v12alpha1、v11alpha2、foo1、foo10。

versions[]

object

CustomResourceDefinitionVersion は、CRD のバージョンを表します。

3.1.2. .spec.conversion

説明
CustomResourceConversion は、CR のさまざまなバージョンを変換する方法を説明します。
object
必須
  • strategy
Expand
プロパティー説明

strategy

string

ストラテジーは、カスタムリソースがバージョン間でどのように変換されるかを指定します。許可される値は次のとおりです。- なし: コンバーターは apiVersion のみを変更し、カスタムリソースの他のフィールドにはアクセスしません。--Webhook:API サーバーは外部 Webhook を呼び出して変換を行います。このオプションには追加情報が必要です。これには、spec.preserveUnknownFields が false であり、spec.conversion.webhook が設定されている必要があります。

webhook

object

WebhookConversion は、変換 Webhook を呼び出す方法を説明します

3.1.3. .spec.conversion.webhook

説明
WebhookConversion は、変換 Webhook を呼び出す方法を説明します
object
必須
  • conversionReviewVersions
Expand
プロパティー説明

clientConfig

object

WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています。

conversionReviewVersions

array (string)

conversionReviewVersions は、Webhook が期待する優先される ConversionReview バージョンの順序付きリストです。API サーバーは、サポートするリストの最初のバージョンを使用します。このリストで指定されているバージョンのいずれも API サーバーでサポートされていない場合、カスタムリソースの変換は失敗します。永続化された Webhook 設定で許可されたバージョンが指定されており、API サーバーに認識されているバージョンが含まれていない場合、Webhook の呼び出しは失敗します。

3.1.4. .spec.conversion.webhook.clientConfig

説明
WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています。
object
Expand
プロパティー説明

caBundle

string

caBundle は、PEM でエンコードされた CA バンドルであり、Webhook のサーバー証明書を検証するために使用されます。指定しない場合、apiserver のシステム信頼ルートが使用されます。

service

object

ServiceReference は、Service.legacy.k8s.io への参照を保持します

url

string

url は、Webhook の場所を標準の URL 形式 (scheme://host:port/path) で示します。URL または サービス のいずれかを正確に指定する必要があります。

ホスト は、クラスターで実行されているサービスを参照しないでください。代わりに サービス フィールドを使用してください。一部の apiserver では、ホストが外部 DNS を介して解決される場合があります (たとえば、kube-apiserver は、階層化違反になるため、クラスター内 DNS を解決できません)。ホスト は IP アドレスの場合もあります。

この Webhook を呼び出す必要がある可能性のある apiserver を実行するすべてのホストでこの Webhook を実行するように細心の注意を払わない限り、ホスト として localhost または 127.0.0.1 を使用することは危険であることに注意してください。このようなインストールは移植性がない可能性があります。つまり、新しいクラスターで簡単に起動することはできません。

スキームは "https" である必要があります。URL は "https://" で始まる必要があります。

パスはオプションであり、存在する場合は、URL で許可される任意の文字列にすることができます。パスを使用して、クラスター識別子などの任意の文字列を Webhook に渡すことができます。

ユーザーまたは基本認証 ("user:password@" など) を使用することは許可されていません。フラグメント ("#…") とクエリーパラメーター ("?…") も許可されていません。

3.1.5. .spec.conversion.webhook.clientConfig.service

説明
ServiceReference は、Service.legacy.k8s.io への参照を保持します
object
必須
  • namespace
  • name
Expand
プロパティー説明

name

string

name はサービスの名前です。必須

namespace

string

namespace は、サービスの名前空間です。必須

path

string

path は、Webhook が接続されるオプションの URL パスです。

port

integer

port は、Webhook が接続されるオプションのサービスポートです。port は有効なポート番号 (1〜65535 を含む) である必要があります。下位互換性のために、デフォルトは 443 です。

3.1.6. .spec.names

説明
CustomResourceDefinitionNames は、この CustomResourceDefinition を提供する名前を示します
object
必須
  • 複数
  • kind
Expand
プロパティー説明

categories

array (string)

カテゴリーは、このカスタムリソースが属するグループ化されたリソースのリストです (例: 'すべて')。これは API 検出ドキュメントで公開され、クライアントが kubectl get all などの呼び出しをサポートするために使用します。

kind

string

kind は、リソースのシリアル化された種類です。通常は CamelCase で単数です。カスタムリソースインスタンスは、この値を API 呼び出しの kind 属性として使用します。

listKind

string

listKind は、このリソースのリストのシリアル化された種類です。デフォルトは "`kind`List" です。

複数

string

複数形は、提供するリソースの複数形の名前です。カスタムリソースは /apis/<group>/<version>/…/<plural> で提供されます。CustomResourceDefinition の名前 (<names.plural>。<group> の形式) と一致する必要があります。すべて小文字である必要があります。

shortNames

array (string)

shortNames はリソースの短縮名であり、API 検出ドキュメントで公開され、クライアントが kubectl get <shortname> などの呼び出しをサポートするために使用します。すべて小文字である必要があります。

特異な

string

singular は、リソースの単数名です。すべて小文字である必要があります。デフォルトは小文字 です

3.1.7. .spec.versions

説明
version は、定義されたカスタムリソースのすべての API バージョンのリストです。バージョン名は、提供されたバージョンが API ディスカバリーにリストされる順序を計算するために使用されます。バージョン文字列が "kube-like" の場合、辞書式順序で並べられた "kube-like" ではないバージョン文字列の上に並べ替えられます。"Kube のような" バージョンは "v" で始まり、その後に数字 (メジャーバージョン) が続き、オプションで文字列 "alpha" または "beta" と別の数字 (マイナーバージョン) が続きます。これらは、最初に GA > ベータ > アルファ (GA はベータやアルファなどの接尾辞のないバージョン) でソートされ、次にメジャーバージョン、次にマイナーバージョンでソートされます。バージョンのソート済みリストの例: v10、v2、v1、v11beta2、v10beta3、v3beta1、v12alpha1、v11alpha2、foo1、foo10。
array

3.1.8. .spec.versions[]

説明
CustomResourceDefinitionVersion は、CRD のバージョンを表します。
object
必須
  • name
  • served
  • storage
Expand
プロパティー説明

additionalPrinterColumns

array

additionalPrinterColumns は、テーブル出力で返される追加の列を指定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#receiving-resources-as-tables を参照してください。列が指定されていない場合、カスタムリソースの経過時間を表示する単一の列が使用されます。

additionalPrinterColumns[]

object

CustomResourceColumnDefinition は、サーバー側の印刷用の列を指定します。

deprecated

boolean

deprecated は、このバージョンのカスタムリソース API が非推奨であることを示します。true に設定すると、このバージョンへの API リクエストは、サーバー応答で警告ヘッダーを受け取ります。デフォルトは false です。

deprecationWarning

string

deprecationWarning は、API クライアントに返されるデフォルトの警告を上書きします。非推奨 が true の場合にのみ設定できます。デフォルトの警告は、このバージョンが非推奨であることを示しており、安定性が同等以上の最新のバージョンが存在する場合はそれを使用することを推奨します。

name

string

name はバージョン名です。たとえば、"v1"、"v2beta1" などです。カスタムリソースは、このバージョンで /apis/<group>/<version>/… で提供されます。提供 される場合は true です。

schema

object

CustomResourceValidation は、CustomResources の検証メソッドのリストです。

served

boolean

提供は、このバージョンが REST API を介して提供されることを有効/無効にするフラグです。

storage

boolean

storage は、カスタムリソースをストレージに永続化するときにこのバージョンを使用する必要があることを示します。storage=true のバージョンが 1 つだけ存在する必要があります。

subresources

object

CustomResourceSubresources は、CustomResources のステータスとスケールサブリソースを定義します。

3.1.9. .spec.versions[].additionalPrinterColumns

説明
additionalPrinterColumns は、テーブル出力で返される追加の列を指定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#receiving-resources-as-tables を参照してください。列が指定されていない場合、カスタムリソースの経過時間を表示する単一の列が使用されます。
array

3.1.10. .spec.versions[].additionalPrinterColumns[]

説明
CustomResourceColumnDefinition は、サーバー側の印刷用の列を指定します。
object
必須
  • name
  • type
  • jsonPath
Expand
プロパティー説明

description

string

description は、この列の人間が読める形式の説明です。

format

string

format は、この列のオプションの OpenAPI タイプ定義です。'name' 形式は、クライアントが列がリソース名であることを識別するのを支援するために、1 次 ID 列に適用されます。詳細は、https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types を参照してください。

jsonPath

string

jsonPath は、この列の値を生成するために各カスタムリソースに対して評価される単純な JSON パス (つまり、配列表記を使用) です。

name

string

name は、人間が読める形式の列の名前です。

priority

integer

priority は、他の列と比較したこの列の相対的な重要度を定義する整数です。数値が小さいほど優先度が高いと見なされます。限られたスペースのシナリオで省略される可能性のある列には、0 より大きい優先順位を与える必要があります。

type

string

type は、この列の OpenAPI 型定義です。詳細は、https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types を参照してください。

3.1.11. .spec.versions[].schema

説明
CustomResourceValidation は、CustomResources の検証メソッドのリストです。
object
Expand
プロパティー説明

openAPIV3Schema

``

openAPIV3Schema は、検証とプルーニングに使用する OpenAPIv3 スキーマです。

3.1.12. .spec.versions[].subresources

説明
CustomResourceSubresources は、CustomResources のステータスとスケールサブリソースを定義します。
object
Expand
プロパティー説明

scale

object

CustomResourceSubresourceScale は、CustomResources のスケールサブリソースを提供する方法を定義します。

status

object

CustomResourceSubresourceStatus は、CustomResources のステータスサブリソースを提供する方法を定義します。ステータスは、CustomResource 内の .status JSON パスで表されます。設定すると、*カスタムリソースの/status サブリソースを公開します*/status サブリソースへの PUT リクエストはカスタムリソースオブジェクトを取得し、ステータススタンザ以外の変更を無視します*カスタムリソースへの PUT/POST/PATCH リクエストは変更を無視しますステータススタンザ

3.1.13. .spec.versions[].subresources.scale

説明
CustomResourceSubresourceScale は、CustomResources のスケールサブリソースを提供する方法を定義します。
object
必須
  • specReplicasPath
  • statusReplicasPath
Expand
プロパティー説明

labelSelectorPath

string

labelSelectorPath は、Scalestatus.selector に対応するカスタムリソース内の JSON パスを定義します。配列表記のない JSON パスのみが許可されます。.status または .spec の下の JSON パスである必要があります。HorizontalPodAutoscaler と連動するように設定する必要があります。この JSON パスが指すフィールドは、文字列形式のシリアル化されたラベルセレクターを含む文字列フィールド (複雑なセレクター構造体ではない) である必要があります。詳細: https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions#scale-subresource カスタムリソース内の指定されたパスの下に値がない場合は、/scale サブリソース内の status.selector 値は空の文字列にデフォルト設定されます。

specReplicasPath

string

specReplicasPath は、Scalespec.replicas に対応するカスタムリソース内の JSON パスを定義します。配列表記のない JSON パスのみが許可されます。.spec の下の JSON パスである必要があります。カスタムリソースの指定されたパスの下に値がない場合、/scale サブリソースは GET でエラーを返します。

statusReplicasPath

string

statusReplicasPath は、Scalestatus.replicas に対応するカスタムリソース内の JSON パスを定義します。配列表記のない JSON パスのみが許可されます。.status の下の JSON パスである必要があります。カスタムリソースの指定されたパスの下に値がない場合、/scale サブリソースの status.replicas 値はデフォルトで 0 になります。

3.1.14. .spec.versions[].subresources.status

説明
CustomResourceSubresourceStatus は、CustomResources のステータスサブリソースを提供する方法を定義します。ステータスは、CustomResource 内の .status JSON パスで表されます。設定すると、*カスタムリソースの/status サブリソースを公開します*/status サブリソースへの PUT リクエストはカスタムリソースオブジェクトを取得し、ステータススタンザ以外の変更を無視します*カスタムリソースへの PUT/POST/PATCH リクエストは変更を無視しますステータススタンザ
object

3.1.15. .status

説明
CustomResourceDefinitionStatus は CustomResourceDefinition の状態を示します。
object
Expand
プロパティー説明

acceptedNames

object

CustomResourceDefinitionNames は、この CustomResourceDefinition を提供する名前を示します

conditions

array

条件は、CustomResourceDefinition の特定の側面の状態を示します

conditions[]

object

CustomResourceDefinitionCondition には、この Pod の現在の状態の詳細が含まれています。

storedVersions

array (string)

storedVersions は、これまでに永続化された CustomResources のすべてのバージョンをリスト表示します。これらのバージョンを追跡すると、etcd に保存されているバージョンの移行パスが可能になります。このフィールドは変更可能であるため、移行コントローラーは別のバージョンへの移行を完了し (古いオブジェクトがストレージに残っていないことを確認)、残りのバージョンをこのリストから削除できます。このリストに存在するバージョンは、spec.versions から削除できません。

3.1.16. .status.acceptedNames

説明
CustomResourceDefinitionNames は、この CustomResourceDefinition を提供する名前を示します
object
必須
  • 複数
  • kind
Expand
プロパティー説明

categories

array (string)

カテゴリーは、このカスタムリソースが属するグループ化されたリソースのリストです (例: 'すべて')。これは API 検出ドキュメントで公開され、クライアントが kubectl get all などの呼び出しをサポートするために使用します。

kind

string

kind は、リソースのシリアル化された種類です。通常は CamelCase で単数です。カスタムリソースインスタンスは、この値を API 呼び出しの kind 属性として使用します。

listKind

string

listKind は、このリソースのリストのシリアル化された種類です。デフォルトは "`kind`List" です。

複数

string

複数形は、提供するリソースの複数形の名前です。カスタムリソースは /apis/<group>/<version>/…/<plural> で提供されます。CustomResourceDefinition の名前 (<names.plural>。<group> の形式) と一致する必要があります。すべて小文字である必要があります。

shortNames

array (string)

shortNames はリソースの短縮名であり、API 検出ドキュメントで公開され、クライアントが kubectl get <shortname> などの呼び出しをサポートするために使用します。すべて小文字である必要があります。

特異な

string

singular は、リソースの単数名です。すべて小文字である必要があります。デフォルトは小文字 です

3.1.17. .status.conditions

説明
条件は、CustomResourceDefinition の特定の側面の状態を示します
array

3.1.18. .status.conditions[]

説明
CustomResourceDefinitionCondition には、この Pod の現在の状態の詳細が含まれています。
object
必須
  • type
  • status
Expand
プロパティー説明

lastTransitionTime

time

lastTransitionTime は、ある状態から別の状態に最後に遷移した時間です。

message

string

message は、最後の遷移の詳細を示す人が判読できるメッセージです。

reason

string

理由は、条件の最後の遷移の一意の 1 単語の CamelCase 理由です。

status

string

status は、状態のステータスです。True、False、Unknown の場合があります。

type

string

type は、条件のタイプです。タイプには、Established、NamesAccepted、および Terminating が含まれます。

3.2. API エンドポイント

以下の API エンドポイントを利用できます。

  • /apis/apiextensions.k8s.io/v1/customresourcedefinitions

    • DELETE:CustomResourceDefinition のコレクションを削除します
    • GET:CustomResourceDefinition の種類のオブジェクトをリスト表示または監視します
    • POST:CustomResourceDefinition を作成します
  • /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions

    • GET:CustomResourceDefinition のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
  • /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}

    • 削除:CustomResourceDefinition を削除します
    • GET: 指定された CustomResourceDefinition を読み取ります
    • PATCH: 指定された CustomResourceDefinition を部分的に更新します
    • PUT: 指定された CustomResourceDefinition を置き換えます
  • /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions/{name}

    • GET:CustomResourceDefinition の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
  • /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status

    • GET: 指定された CustomResourceDefinition のステータスを読み取ります
    • PATCH: 指定された CustomResourceDefinition のステータスを部分的に更新します
    • PUT: 指定された CustomResourceDefinition のステータスを置き換えます

3.2.1. /apis/apiextensions.k8s.io/v1/customresourcedefinitions

Expand
表3.1 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
DELETE
説明
CustomResourceDefinition のコレクションを削除します
Expand
表3.2 クエリーパラメーター
パラメーター説明

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

gracePeriodSeconds

integer

オブジェクトが削除されるまでの時間 (秒)。値は負の値ではない整数にする必要があります。値をゼロに指定すると、ただちに削除されます。この値が nil の場合は、指定されたタイプのデフォルトの猶予期間が使用されます。指定しない場合は、デフォルトでオブジェクトごとの値になります。ゼロはすぐに削除することを意味します。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

orphanDependents

boolean

非推奨。PropagationPolicy を使用してください。このフィールドは 1.7 で非推奨となります。依存オブジェクトが孤立している必要があります。true/false の場合、"孤立した" ファイナライザーがオブジェクトのファイナライザーリストで追加/削除されます。このフィールドまたは PropagationPolicy のいずれかを設定できますが、両方を設定することはできません。

propagationPolicy

string

ガベージコレクションが実行されるかどうか、およびその方法。このフィールドまたは OrphanDependents のどちらかを設定できますが、両方を設定できません。デフォルトポリシーは、metadata.finalizers に設定されている既存のファイナライザーとリソース固有のデフォルトポリシーによって決定されます。許容値は次のとおりです。'Orphan' - 依存を削除して孤立させます。'Background' - ガベージコレクターがバックグラウンドで依存関係を削除できるようにします。'Foreground' - フォアグラウンド内のすべての依存関係を削除するカスケードポリシーです。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

Expand
表3.3 本文パラメーター
パラメーター説明

body

DeleteOptions スキーマ

 
Expand
表3.4 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

Status スキーマ

401 - Unauthorized

空白

HTTP メソッド
GET
説明
CustomResourceDefinition の種類のオブジェクトをリスト表示または監視する
Expand
表3.5 クエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

Expand
表3.6 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

CustomResourceDefinitionList スキーマ

401 - Unauthorized

空白

HTTP メソッド
POST
説明
CustomResourceDefinition を作成します
Expand
表3.7 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表3.8 ボディーパラメーター
パラメーター説明

body

CustomResourceDefinition スキーマ

 
Expand
表3.9 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

CustomResourceDefinition スキーマ

201 - Created

CustomResourceDefinition スキーマ

202 - Accepted

CustomResourceDefinition スキーマ

401 - Unauthorized

空白

3.2.2. /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions

Expand
表3.10 グローバルクエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

HTTP メソッド
GET
説明
CustomResourceDefinition のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
Expand
表3.11 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

WatchEvent スキーマ

401 - Unauthorized

空白

3.2.3. /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}

Expand
表3.12 グローバルパスパラメーター
パラメーター説明

name

string

CustomResourceDefinition の名前

Expand
表3.13 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
DELETE
説明
CustomResourceDefinition を削除します
Expand
表3.14 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

gracePeriodSeconds

integer

オブジェクトが削除されるまでの時間 (秒)。値は負の値ではない整数にする必要があります。値をゼロに指定すると、ただちに削除されます。この値が nil の場合は、指定されたタイプのデフォルトの猶予期間が使用されます。指定しない場合は、デフォルトでオブジェクトごとの値になります。ゼロはすぐに削除することを意味します。

orphanDependents

boolean

非推奨。PropagationPolicy を使用してください。このフィールドは 1.7 で非推奨となります。依存オブジェクトが孤立している必要があります。true/false の場合、"孤立した" ファイナライザーがオブジェクトのファイナライザーリストで追加/削除されます。このフィールドまたは PropagationPolicy のいずれかを設定できますが、両方を設定することはできません。

propagationPolicy

string

ガベージコレクションが実行されるかどうか、およびその方法。このフィールドまたは OrphanDependents のどちらかを設定できますが、両方を設定できません。デフォルトポリシーは、metadata.finalizers に設定されている既存のファイナライザーとリソース固有のデフォルトポリシーによって決定されます。許容値は次のとおりです。'Orphan' - 依存を削除して孤立させます。'Background' - ガベージコレクターがバックグラウンドで依存関係を削除できるようにします。'Foreground' - フォアグラウンド内のすべての依存関係を削除するカスケードポリシーです。

Expand
表3.15 本文パラメーター
パラメーター説明

body

DeleteOptions スキーマ

 
Expand
表3.16 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

Status スキーマ

202 - Accepted

Status スキーマ

401 - Unauthorized

空白

HTTP メソッド
GET
説明
指定された CustomResourceDefinition を読み取ります
Expand
表3.17 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

CustomResourceDefinition スキーマ

401 - Unauthorized

空白

HTTP メソッド
PATCH
説明
指定された CustomResourceDefinition を部分的に更新します
Expand
表3.18 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。このフィールドは、apply 要求 (application/apply-patch) の場合は必須ですが、apply 以外のパッチタイプ (JsonPatch、MergePatch、StrategicMergePatch) の場合は任意です。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

force

boolean

"force" は、Apply 要求を強制します。これは、ユーザーが他の人が所有する競合するフィールドを再取得することを意味します。非適用パッチ要求の場合は、強制フラグを設定解除する必要があります。

Expand
表3.19 本文パラメーター
パラメーター説明

body

Patch スキーマ

 
Expand
表3.20 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

CustomResourceDefinition スキーマ

201 - Created

CustomResourceDefinition スキーマ

401 - Unauthorized

空白

HTTP メソッド
PUT
説明
指定された CustomResourceDefinition を置き換えます
Expand
表3.21 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表3.22 ボディーパラメーター
パラメーター説明

body

CustomResourceDefinition スキーマ

 
Expand
表3.23 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

CustomResourceDefinition スキーマ

201 - Created

CustomResourceDefinition スキーマ

401 - Unauthorized

空白

3.2.4. /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions/{name}

Expand
表3.24 グローバルパスパラメーター
パラメーター説明

name

string

CustomResourceDefinition の名前

Expand
表3.25 グローバルクエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

HTTP メソッド
GET
説明
CustomResourceDefinition の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
Expand
表3.26 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

WatchEvent スキーマ

401 - Unauthorized

空白

3.2.5. /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status

Expand
表3.27 グローバルパスパラメーター
パラメーター説明

name

string

CustomResourceDefinition の名前

Expand
表3.28 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
GET
説明
指定された CustomResourceDefinition のステータスを読み取ります
Expand
表3.29 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

CustomResourceDefinition スキーマ

401 - Unauthorized

空白

HTTP メソッド
PATCH
説明
指定された CustomResourceDefinition のステータスを部分的に更新します
Expand
表3.30 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。このフィールドは、apply 要求 (application/apply-patch) の場合は必須ですが、apply 以外のパッチタイプ (JsonPatch、MergePatch、StrategicMergePatch) の場合は任意です。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

force

boolean

"force" は、Apply 要求を強制します。これは、ユーザーが他の人が所有する競合するフィールドを再取得することを意味します。非適用パッチ要求の場合は、強制フラグを設定解除する必要があります。

Expand
表3.31 本文パラメーター
パラメーター説明

body

Patch スキーマ

 
Expand
表3.32 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

CustomResourceDefinition スキーマ

201 - Created

CustomResourceDefinition スキーマ

401 - Unauthorized

空白

HTTP メソッド
PUT
説明
指定された CustomResourceDefinition のステータスを置き換えます
Expand
表3.33 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表3.34 ボディーパラメーター
パラメーター説明

body

CustomResourceDefinition スキーマ

 
Expand
表3.35 HTTP 応答
HTTP コードレスポンスのボディー

200 - OK

CustomResourceDefinition スキーマ

201 - Created

CustomResourceDefinition スキーマ

401 - Unauthorized

空白

第4章 MutatingWebhookConfiguration [admissionregistration.k8s.io/v1]

説明
MutatingWebhookConfiguration は、オブジェクトを受け入れるか拒否し、変更する可能性のある Webhook の設定と承認を説明します。
object

4.1. 仕様

Expand
プロパティー説明

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 を参照してください。

webhooks

array

Webhook は、Webhook と影響を受けるリソースおよび操作のリストです。

webhooks[]

object

MutatingWebhook は、アドミッション Webhook と、それが適用されるリソースと操作を説明しています。

4.1.1. .webhooks

説明
Webhook は、Webhook と影響を受けるリソースおよび操作のリストです。
array

4.1.2. .webhooks[]

説明
MutatingWebhook は、アドミッション Webhook と、それが適用されるリソースと操作を説明しています。
object
必須
  • name
  • clientConfig
  • sideEffects
  • admissionReviewVersions
Expand
プロパティー説明

admissionReviewVersions

array (string)

AdmissionReviewVersions は、Webhook が期待する優先 AdmissionReview バージョンの順序付きリストです。API サーバーは、サポートするリストの最初のバージョンを使用しようとします。このリストで指定されたバージョンのいずれも API サーバーでサポートされていない場合、このオブジェクトの検証は失敗します。永続化された Webhook 設定で許可されたバージョンが指定され、API サーバーに認識されているバージョンが含まれていない場合、Webhook の呼び出しは失敗し、失敗ポリシーの対象となります。

clientConfig

object

WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています

failurePolicy

string

FailurePolicy は、アドミッションエンドポイントからの認識されないエラーの処理方法を定義します。許可される値は Ignore または Fail です。デフォルトは失敗です。

matchPolicy

string

matchPolicy は、"rules" リストを使用して受信リクエストを照合する方法を定義します。許可される値は "Exact" または "Equivalent" です。

- Exact: 指定されたルールにリクエストが完全に一致する場合にのみ、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更できても、"rules" に含まれているのが apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"] だけである場合、apps/v1beta1 または extensions/v1beta1 へのリクエストは Webhook に送信されません。

- Equivalent: 別の API グループまたはバージョンを介してでも、ルールにリストされているリソースを変更する場合に、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更でき、"rules" に含まれているのが apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"] だけである場合、apps/v1beta1 または extensions/v1beta1 へのリクエストは、apps/v1 に変換され、Webhook に送信されます。

デフォルトは同等

name

string

アドミッション Webhook の名前。名前は完全修飾する必要があります。たとえば、imagepolicy.kubernetes.io です。ここで、"imagepolicy" は Webhook の名前であり、kubernetes.io は組織の名前です。必須。

namespaceSelector

labelSelector

NamespaceSelector は、オブジェクトの名前空間がセレクターと一致するかどうかに基づいて、オブジェクトで Webhook を実行するかどうかを決定します。オブジェクト自体が namespace である場合、object.metadata.labels に対して照合が実行されます。オブジェクトが別のクラスタースコープのリソースである場合、Webhook をスキップすることはありません。

たとえば、"0" または "1" の "runlevel" に関連付けられていない namespace のオブジェクトに対して Webhook を実行するには、"namespaceSelector": { "matchExpressions": [ { "key": "runlevel", "operator": "NotIn", "values": [ "0", "1" ] } ] } のようにセレクターを設定します。

代わりに、名前空間が "prod" または "staging" の "environment" に関連付けられているオブジェクトに対してのみ Webhook を実行する場合。セレクターは "namespaceSelector": { "matchExpressions": [ { "key": "environment", "operator": "In", "values": [ "prod", "staging" ] } ] } のように設定します。

ラベルセレクターのその他の例は、https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ を参照してください。

デフォルトは空の LabelSelector で、すべてに一致します。

objectSelector

labelSelector

ObjectSelector は、オブジェクトに一致するラベルがあるかどうかに基づいて、Webhook を実行するかどうかを決定します。objectSelector は、Webhook に送信される oldObject と newObject の両方に対して評価され、いずれかのオブジェクトがセレクターと一致する場合に一致すると見なされます。null オブジェクト (create の場合は oldObject、delete の場合は newObject) またはラベルを持つことができないオブジェクト (DeploymentRollback または PodProxyOptions オブジェクトなど) は一致するとは見なされません。エンドユーザーはラベルを設定することでアドミッション Webhook をスキップできるため、Webhook がオプトインの場合にのみオブジェクトセレクターを使用してください。デフォルトは空の LabelSelector で、すべてに一致します。

reinvocationPolicy

string

reinvocationPolicy は、単一のアドミッション評価の一部として、この Webhook を複数回呼び出す必要があるかどうかを示します。許可される値は "Never" と "IfNeeded" です。

決して:Webhook は 1 回の入場評価で 2 回以上呼び出されることはありません。

IfNeeded: 最初の Webhook 呼び出しの後に、許可されているオブジェクトが他の許可プラグインによって変更された場合、許可評価の一部として Webhook が少なくとも 1 回追加で呼び出されます。このオプションを指定する Webhook はべき等であり、以前に許可したオブジェクトを処理できる 必要 があります。注:*追加の呼び出しの数は、正確に 1 つであるとは限りません。*追加の呼び出しによってオブジェクトがさらに変更された場合、Webhook が再度呼び出されることは保証されません。*このオプションを使用する Webhook は、追加の呼び出しの数を最小限に抑えるために並べ替えられる場合があります。*すべての変更が完了したことが保証された後でオブジェクトを検証するには、代わりに検証アドミッション Webhook を使用します。

デフォルトはなしです。

rules

array

Rules は、Webhook が考慮するリソース/サブリソースに対する操作を表します。Webhook は、操作が いずれか のルールに一致する場合、その操作を考慮します。ただし、ValidatingAdmissionWebhooks と MutatingAdmissionWebhooks が、プラグインを完全に無効にしないと回復できない状態にクラスターを置くことを防ぐために、ValidatingAdmissionWebhooks と MutatingAdmissionWebhook は、ValidatingWebhookConfiguration オブジェクトと MutatingWebhookConfiguration オブジェクトの認可要求で呼び出されることはありません。

rules[]

object

RuleWithOperations は、操作とリソースのタプルです。すべてのタプル拡張が有効であることを確認することを推奨します。

sideEffects

string

SideEffects は、この Webhook に副作用があるかどうかを示します。許容される値は、None、NoneOnDryRun です (v1beta1 を介して作成された Webhook は、Some または Unknown を指定する場合もあります)。副作用のある Webhook は、調整システムを実装する必要があります。これは、リクエストがアドミッションチェーンの将来のステップで拒否される可能性があるため、副作用を元に戻す必要があるためです。dryRun 属性を持つリクエストは、sideEffects==Unknown または Some の Webhook と一致する場合に自動拒否されます。

timeoutSeconds

integer

TimeoutSeconds は、この Webhook のタイムアウトを指定します。タイムアウトが経過すると、Webhook 呼び出しは無視されるか、失敗ポリシーに基づいて API 呼び出しが失敗します。タイムアウト値は 1〜30 秒である必要があります。デフォルトは 10 秒です。

4.1.3. .webhooks[].clientConfig

説明
WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています
object
Expand
プロパティー説明

caBundle

string

caBundle は、PEM でエンコードされた CA バンドルであり、Webhook のサーバー証明書を検証するために使用されます。指定しない場合、apiserver のシステム信頼ルートが使用されます。

service

object

ServiceReference は、Service.legacy.k8s.io への参照を保持します

url

string

url は、Webhook の場所を標準の URL 形式 (scheme://host:port/path) で示します。URL または サービス のいずれかを正確に指定する必要があります。

ホスト は、クラスターで実行されているサービスを参照しないでください。代わりに サービス フィールドを使用してください。一部の apiserver では、ホストが外部 DNS を介して解決される場合があります (たとえば、kube-apiserver は、階層化違反になるため、クラスター内 DNS を解決できません)。ホスト は IP アドレスの場合もあります。

この Webhook を呼び出す必要がある可能性のある apiserver を実行するすべてのホストでこの Webhook を実行するように細心の注意を払わない限り、ホスト として localhost または 127.0.0.1 を使用することは危険であることに注意してください。このようなインストールは移植性がない可能性があります。つまり、新しいクラスターで簡単に起動することはできません。

スキームは "https" である必要があります。URL は "https://" で始まる必要があります。

パスはオプションであり、存在する場合は、URL で許可される任意の文字列にすることができます。パスを使用して、クラスター識別子などの任意の文字列を Webhook に渡すことができます。

ユーザーまたは基本認証 ("user:password@" など) を使用することは許可されていません。フラグメント ("#…") とクエリーパラメーター ("?…") も許可されていません。

4.1.4. .webhooks[].clientConfig.service

説明
ServiceReference は、Service.legacy.k8s.io への参照を保持します
object
必須
  • namespace
  • name
Expand
プロパティー説明

name

string

name はサービスの名前です。必須

namespace

string

namespace は、サービスの名前空間です。必須

path

string

path は、このサービスへのリクエストで送信されるオプションの URL パスです。

port

integer

指定されている場合、Webhook をホストしているサービスのポート。下位互換性のために、デフォルトは 443 です。ポート は有効なポート番号 (1〜65535 を含む) である必要があります。

4.1.5. .webhooks[].rules

説明
Rules は、Webhook が考慮するリソース/サブリソースに対する操作を表します。Webhook は、操作が いずれか のルールに一致する場合、その操作を考慮します。ただし、ValidatingAdmissionWebhooks と MutatingAdmissionWebhooks が、プラグインを完全に無効にしないと回復できない状態にクラスターを置くことを防ぐために、ValidatingAdmissionWebhooks と MutatingAdmissionWebhook は、ValidatingWebhookConfiguration オブジェクトと MutatingWebhookConfiguration オブジェクトの認可要求で呼び出されることはありません。
array

4.1.6. .webhooks[].rules[]

説明
RuleWithOperations は、操作とリソースのタプルです。すべてのタプル拡張が有効であることを確認することを推奨します。
object
Expand
プロパティー説明

apiGroups

array (string)

APIGroups は、リソースが属する API グループです。'' はすべてのグループです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。

apiVersions

array (string)

APIVersions は、リソースが属する API バージョンです。'' はすべてのバージョンです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。

operations

array (string)

操作は、アドミッションフックが気にする操作です - これらすべての操作および追加される将来のアドミッション操作に対して、CREATE、UPDATE、DELETE、CONNECT、または*。'*' が存在する場合、スライスの長さは 1 でなければなりません。必須。

resources

array (string)

リソースは、このルールが適用されるリソースのリストです。

例: 'Pod' は Pod を意味します。'pods/log' は、Pod のログサブリソースを意味します。'' はすべてのリソースを意味しますが、サブリソースは意味しません。'pods/' は、Pod のすべてのサブリソースを意味します。'/scale' は、すべてのスケールサブリソースを意味します。'/*' は、すべてのリソースとそのサブリソースを意味します。

ワイルドカードが存在する場合、検証ルールはリソースが互いに重複しないことを保証します。

囲んでいるオブジェクトによっては、サブリソースが許可されない場合があります。必須。

scope

string

scope は、このルールのスコープを指定します。有効な値は、"Cluster"、"Namespaced"、および "" "クラスター" とは、クラスタースコープのリソースのみがこのルールに一致することを意味します。名前空間 API オブジェクトはクラスタースコープです。"Namespaced" は、名前空間付きのリソースのみがこのルールに一致することを意味します。"" は、スコープの制限がないことを意味します。サブリソースは、親リソースのスコープと一致します。デフォルトは "*" です。

4.2. API エンドポイント

以下の API エンドポイントを利用できます。

  • /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations

    • DELETE:MutatingWebhookConfiguration のコレクションを削除します
    • GET: 種類のオブジェクトをリスト表示または監視する MutatingWebhookConfiguration
    • POST:MutatingWebhookConfiguration を作成します
  • /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations

    • GET: MutatingWebhookConfiguration のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
  • /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}

    • 削除:MutatingWebhookConfiguration を削除します
    • GET: 指定された MutatingWebhookConfiguration を読み取ります
    • PATCH: 指定された MutatingWebhookConfiguration を部分的に更新します
    • PUT: 指定された MutatingWebhookConfiguration を置き換えます
  • /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations/{name}

    • GET: MutatingWebhookConfiguration の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。

4.2.1. /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations

Expand
表4.1 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
DELETE
説明
MutatingWebhookConfiguration のコレクションを削除します
Expand
表4.2 クエリーパラメーター
パラメーター説明

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

gracePeriodSeconds

integer

オブジェクトが削除されるまでの時間 (秒)。値は負の値ではない整数にする必要があります。値をゼロに指定すると、ただちに削除されます。この値が nil の場合は、指定されたタイプのデフォルトの猶予期間が使用されます。指定しない場合は、デフォルトでオブジェクトごとの値になります。ゼロはすぐに削除することを意味します。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

orphanDependents

boolean

非推奨。PropagationPolicy を使用してください。このフィールドは 1.7 で非推奨となります。依存オブジェクトが孤立している必要があります。true/false の場合、"孤立した" ファイナライザーがオブジェクトのファイナライザーリストで追加/削除されます。このフィールドまたは PropagationPolicy のいずれかを設定できますが、両方を設定することはできません。

propagationPolicy

string

ガベージコレクションが実行されるかどうか、およびその方法。このフィールドまたは OrphanDependents のどちらかを設定できますが、両方を設定できません。デフォルトポリシーは、metadata.finalizers に設定されている既存のファイナライザーとリソース固有のデフォルトポリシーによって決定されます。許容値は次のとおりです。'Orphan' - 依存を削除して孤立させます。'Background' - ガベージコレクターがバックグラウンドで依存関係を削除できるようにします。'Foreground' - フォアグラウンド内のすべての依存関係を削除するカスケードポリシーです。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

Expand
表4.3 本文パラメーター
パラメーター説明

body

DeleteOptions スキーマ

 
Expand
表4.4 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

Status スキーマ

401 - Unauthorized

空白

HTTP メソッド
GET
説明
種類のオブジェクトをリスト表示または監視する MutatingWebhookConfiguration
Expand
表4.5 クエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

Expand
表4.6 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

MutatingWebhookConfigurationList スキーマ

401 - Unauthorized

空白

HTTP メソッド
POST
説明
MutatingWebhookConfiguration を作成します
Expand
表4.7 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表4.8 ボディーパラメーター
パラメーター説明

body

MutatingWebhookConfiguration スキーマ

 
Expand
表4.9 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

MutatingWebhookConfiguration スキーマ

201 - Created

MutatingWebhookConfiguration スキーマ

202 - Accepted

MutatingWebhookConfiguration スキーマ

401 - Unauthorized

空白

4.2.2. /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations

Expand
表4.10 グローバルクエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

HTTP メソッド
GET
説明
MutatingWebhookConfiguration のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
Expand
表4.11 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

WatchEvent スキーマ

401 - Unauthorized

空白

4.2.3. /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}

Expand
表4.12 グローバルパスパラメーター
パラメーター説明

name

string

MutatingWebhookConfiguration の名前

Expand
表4.13 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
DELETE
説明
MutatingWebhookConfiguration を削除します
Expand
表4.14 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

gracePeriodSeconds

integer

オブジェクトが削除されるまでの時間 (秒)。値は負の値ではない整数にする必要があります。値をゼロに指定すると、ただちに削除されます。この値が nil の場合は、指定されたタイプのデフォルトの猶予期間が使用されます。指定しない場合は、デフォルトでオブジェクトごとの値になります。ゼロはすぐに削除することを意味します。

orphanDependents

boolean

非推奨。PropagationPolicy を使用してください。このフィールドは 1.7 で非推奨となります。依存オブジェクトが孤立している必要があります。true/false の場合、"孤立した" ファイナライザーがオブジェクトのファイナライザーリストで追加/削除されます。このフィールドまたは PropagationPolicy のいずれかを設定できますが、両方を設定することはできません。

propagationPolicy

string

ガベージコレクションが実行されるかどうか、およびその方法。このフィールドまたは OrphanDependents のどちらかを設定できますが、両方を設定できません。デフォルトポリシーは、metadata.finalizers に設定されている既存のファイナライザーとリソース固有のデフォルトポリシーによって決定されます。許容値は次のとおりです。'Orphan' - 依存を削除して孤立させます。'Background' - ガベージコレクターがバックグラウンドで依存関係を削除できるようにします。'Foreground' - フォアグラウンド内のすべての依存関係を削除するカスケードポリシーです。

Expand
表4.15 本文パラメーター
パラメーター説明

body

DeleteOptions スキーマ

 
Expand
表4.16 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

Status スキーマ

202 - Accepted

Status スキーマ

401 - Unauthorized

空白

HTTP メソッド
GET
説明
指定された MutatingWebhookConfiguration を読み取ります
Expand
表4.17 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

MutatingWebhookConfiguration スキーマ

401 - Unauthorized

空白

HTTP メソッド
PATCH
説明
指定された MutatingWebhookConfiguration を部分的に更新します
Expand
表4.18 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。このフィールドは、apply 要求 (application/apply-patch) の場合は必須ですが、apply 以外のパッチタイプ (JsonPatch、MergePatch、StrategicMergePatch) の場合は任意です。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

force

boolean

"force" は、Apply 要求を強制します。これは、ユーザーが他の人が所有する競合するフィールドを再取得することを意味します。非適用パッチ要求の場合は、強制フラグを設定解除する必要があります。

Expand
表4.19 本文パラメーター
パラメーター説明

body

Patch スキーマ

 
Expand
表4.20 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

MutatingWebhookConfiguration スキーマ

201 - Created

MutatingWebhookConfiguration スキーマ

401 - Unauthorized

空白

HTTP メソッド
PUT
説明
指定された MutatingWebhookConfiguration を置き換えます
Expand
表4.21 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表4.22 ボディーパラメーター
パラメーター説明

body

MutatingWebhookConfiguration スキーマ

 
Expand
表4.23 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

MutatingWebhookConfiguration スキーマ

201 - Created

MutatingWebhookConfiguration スキーマ

401 - Unauthorized

空白

4.2.4. /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations/{name}

Expand
表4.24 グローバルパスパラメーター
パラメーター説明

name

string

MutatingWebhookConfiguration の名前

Expand
表4.25 グローバルクエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

HTTP メソッド
GET
説明
MutatingWebhookConfiguration の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
Expand
表4.26 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

WatchEvent スキーマ

401 - Unauthorized

空白

第5章 ValidatingWebhookConfiguration [admissionregistration.k8s.io/v1]

説明
ValidatingWebhookConfiguration は、変更せずに受け入れまたは拒否し、反対する Webhook の設定と承認を説明します。
object

5.1. 仕様

Expand
プロパティー説明

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 を参照してください。

webhooks

array

Webhook は、Webhook と影響を受けるリソースおよび操作のリストです。

webhooks[]

object

ValidatingWebhook は、アドミッション Webhook と、それが適用されるリソースと操作を説明しています。

5.1.1. .webhooks

説明
Webhook は、Webhook と影響を受けるリソースおよび操作のリストです。
array

5.1.2. .webhooks[]

説明
ValidatingWebhook は、アドミッション Webhook と、それが適用されるリソースと操作を説明しています。
object
必須
  • name
  • clientConfig
  • sideEffects
  • admissionReviewVersions
Expand
プロパティー説明

admissionReviewVersions

array (string)

AdmissionReviewVersions は、Webhook が期待する優先 AdmissionReview バージョンの順序付きリストです。API サーバーは、サポートするリストの最初のバージョンを使用しようとします。このリストで指定されたバージョンのいずれも API サーバーでサポートされていない場合、このオブジェクトの検証は失敗します。永続化された Webhook 設定で許可されたバージョンが指定され、API サーバーに認識されているバージョンが含まれていない場合、Webhook の呼び出しは失敗し、失敗ポリシーの対象となります。

clientConfig

object

WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています

failurePolicy

string

FailurePolicy は、アドミッションエンドポイントからの認識されないエラーの処理方法を定義します。許可される値は Ignore または Fail です。デフォルトは失敗です。

matchPolicy

string

matchPolicy は、"rules" リストを使用して受信リクエストを照合する方法を定義します。許可される値は "Exact" または "Equivalent" です。

- Exact: 指定されたルールにリクエストが完全に一致する場合にのみ、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更できても、"rules" に含まれているのが apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"] だけである場合、apps/v1beta1 または extensions/v1beta1 へのリクエストは Webhook に送信されません。

- Equivalent: 別の API グループまたはバージョンを介してでも、ルールにリストされているリソースを変更する場合に、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更でき、"rules" に含まれているのが apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"] だけである場合、apps/v1beta1 または extensions/v1beta1 へのリクエストは、apps/v1 に変換され、Webhook に送信されます。

デフォルトは同等

name

string

アドミッション Webhook の名前。名前は完全修飾する必要があります。たとえば、imagepolicy.kubernetes.io です。ここで、"imagepolicy" は Webhook の名前であり、kubernetes.io は組織の名前です。必須。

namespaceSelector

labelSelector

NamespaceSelector は、オブジェクトの名前空間がセレクターと一致するかどうかに基づいて、オブジェクトで Webhook を実行するかどうかを決定します。オブジェクト自体が namespace である場合、object.metadata.labels に対して照合が実行されます。オブジェクトが別のクラスタースコープのリソースである場合、Webhook をスキップすることはありません。

たとえば、"0" または "1" の "runlevel" に関連付けられていない namespace のオブジェクトに対して Webhook を実行するには、"namespaceSelector": { "matchExpressions": [ { "key": "runlevel", "operator": "NotIn", "values": [ "0", "1" ] } ] } のようにセレクターを設定します。

代わりに、名前空間が "prod" または "staging" の "environment" に関連付けられているオブジェクトに対してのみ Webhook を実行する場合。セレクターは "namespaceSelector": { "matchExpressions": [ { "key": "environment", "operator": "In", "values": [ "prod", "staging" ] } ] } のように設定します。

ラベルセレクターのその他の例は、https://kubernetes.io/docs/concepts/overview/working-with-objects/labels を参照してください。

デフォルトは空の LabelSelector で、すべてに一致します。

objectSelector

labelSelector

ObjectSelector は、オブジェクトに一致するラベルがあるかどうかに基づいて、Webhook を実行するかどうかを決定します。objectSelector は、Webhook に送信される oldObject と newObject の両方に対して評価され、いずれかのオブジェクトがセレクターと一致する場合に一致すると見なされます。null オブジェクト (create の場合は oldObject、delete の場合は newObject) またはラベルを持つことができないオブジェクト (DeploymentRollback または PodProxyOptions オブジェクトなど) は一致するとは見なされません。エンドユーザーはラベルを設定することでアドミッション Webhook をスキップできるため、Webhook がオプトインの場合にのみオブジェクトセレクターを使用してください。デフォルトは空の LabelSelector で、すべてに一致します。

rules

array

Rules は、Webhook が考慮するリソース/サブリソースに対する操作を表します。Webhook は、操作が いずれか のルールに一致する場合、その操作を考慮します。ただし、ValidatingAdmissionWebhooks と MutatingAdmissionWebhooks が、プラグインを完全に無効にしないと回復できない状態にクラスターを置くことを防ぐために、ValidatingAdmissionWebhooks と MutatingAdmissionWebhook は、ValidatingWebhookConfiguration オブジェクトと MutatingWebhookConfiguration オブジェクトの認可要求で呼び出されることはありません。

rules[]

object

RuleWithOperations は、操作とリソースのタプルです。すべてのタプル拡張が有効であることを確認することを推奨します。

sideEffects

string

SideEffects は、この Webhook に副作用があるかどうかを示します。許容される値は、None、NoneOnDryRun です (v1beta1 を介して作成された Webhook は、Some または Unknown を指定する場合もあります)。副作用のある Webhook は、調整システムを実装する必要があります。これは、リクエストがアドミッションチェーンの将来のステップで拒否される可能性があるため、副作用を元に戻す必要があるためです。dryRun 属性を持つリクエストは、sideEffects==Unknown または Some の Webhook と一致する場合に自動拒否されます。

timeoutSeconds

integer

TimeoutSeconds は、この Webhook のタイムアウトを指定します。タイムアウトが経過すると、Webhook 呼び出しは無視されるか、失敗ポリシーに基づいて API 呼び出しが失敗します。タイムアウト値は 1〜30 秒である必要があります。デフォルトは 10 秒です。

5.1.3. .webhooks[].clientConfig

説明
WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています
object
Expand
プロパティー説明

caBundle

string

caBundle は、PEM でエンコードされた CA バンドルであり、Webhook のサーバー証明書を検証するために使用されます。指定しない場合、apiserver のシステム信頼ルートが使用されます。

service

object

ServiceReference は、Service.legacy.k8s.io への参照を保持します

url

string

url は、Webhook の場所を標準の URL 形式 (scheme://host:port/path) で示します。URL または サービス のいずれかを正確に指定する必要があります。

ホスト は、クラスターで実行されているサービスを参照しないでください。代わりに サービス フィールドを使用してください。一部の apiserver では、ホストが外部 DNS を介して解決される場合があります (たとえば、kube-apiserver は、階層化違反になるため、クラスター内 DNS を解決できません)。ホスト は IP アドレスの場合もあります。

この Webhook を呼び出す必要がある可能性のある apiserver を実行するすべてのホストでこの Webhook を実行するように細心の注意を払わない限り、ホスト として localhost または 127.0.0.1 を使用することは危険であることに注意してください。このようなインストールは移植性がない可能性があります。つまり、新しいクラスターで簡単に起動することはできません。

スキームは "https" である必要があります。URL は "https://" で始まる必要があります。

パスはオプションであり、存在する場合は、URL で許可される任意の文字列にすることができます。パスを使用して、クラスター識別子などの任意の文字列を Webhook に渡すことができます。

ユーザーまたは基本認証 ("user:password@" など) を使用することは許可されていません。フラグメント ("#…") とクエリーパラメーター ("?…") も許可されていません。

5.1.4. .webhooks[].clientConfig.service

説明
ServiceReference は、Service.legacy.k8s.io への参照を保持します
object
必須
  • namespace
  • name
Expand
プロパティー説明

name

string

name はサービスの名前です。必須

namespace

string

namespace は、サービスの名前空間です。必須

path

string

path は、このサービスへのリクエストで送信されるオプションの URL パスです。

port

integer

指定されている場合、Webhook をホストしているサービスのポート。下位互換性のために、デフォルトは 443 です。ポート は有効なポート番号 (1〜65535 を含む) である必要があります。

5.1.5. .webhooks[].rules

説明
Rules は、Webhook が考慮するリソース/サブリソースに対する操作を表します。Webhook は、操作が いずれか のルールに一致する場合、その操作を考慮します。ただし、ValidatingAdmissionWebhooks と MutatingAdmissionWebhooks が、プラグインを完全に無効にしないと回復できない状態にクラスターを置くことを防ぐために、ValidatingAdmissionWebhooks と MutatingAdmissionWebhook は、ValidatingWebhookConfiguration オブジェクトと MutatingWebhookConfiguration オブジェクトの認可要求で呼び出されることはありません。
array

5.1.6. .webhooks[].rules[]

説明
RuleWithOperations は、操作とリソースのタプルです。すべてのタプル拡張が有効であることを確認することを推奨します。
object
Expand
プロパティー説明

apiGroups

array (string)

APIGroups は、リソースが属する API グループです。'' はすべてのグループです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。

apiVersions

array (string)

APIVersions は、リソースが属する API バージョンです。'' はすべてのバージョンです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。

operations

array (string)

操作は、アドミッションフックが気にする操作です - これらすべての操作および追加される将来のアドミッション操作に対して、CREATE、UPDATE、DELETE、CONNECT、または*。'*' が存在する場合、スライスの長さは 1 でなければなりません。必須。

resources

array (string)

リソースは、このルールが適用されるリソースのリストです。

例: 'Pod' は Pod を意味します。'pods/log' は、Pod のログサブリソースを意味します。'' はすべてのリソースを意味しますが、サブリソースは意味しません。'pods/' は、Pod のすべてのサブリソースを意味します。'/scale' は、すべてのスケールサブリソースを意味します。'/*' は、すべてのリソースとそのサブリソースを意味します。

ワイルドカードが存在する場合、検証ルールはリソースが互いに重複しないことを保証します。

囲んでいるオブジェクトによっては、サブリソースが許可されない場合があります。必須。

scope

string

scope は、このルールのスコープを指定します。有効な値は、"Cluster"、"Namespaced"、および "" "クラスター" とは、クラスタースコープのリソースのみがこのルールに一致することを意味します。名前空間 API オブジェクトはクラスタースコープです。"Namespaced" は、名前空間付きのリソースのみがこのルールに一致することを意味します。"" は、スコープの制限がないことを意味します。サブリソースは、親リソースのスコープと一致します。デフォルトは "*" です。

5.2. API エンドポイント

以下の API エンドポイントを利用できます。

  • /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations

    • DELETE:ValidatingWebhookConfiguration のコレクションを削除します
    • GET: 種類のオブジェクトをリスト表示または監視する ValidatingWebhookConfiguration
    • POST:ValidatingWebhookConfiguration を作成します
  • /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations

    • GET:ValidatingWebhookConfiguration のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
  • /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}

    • 削除:ValidatingWebhookConfiguration を削除します
    • GET: 指定された ValidatingWebhookConfiguration を読み取ります
    • PATCH: 指定された ValidatingWebhookConfiguration を部分的に更新します
    • PUT: 指定された ValidatingWebhookConfiguration を置き換えます
  • /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations/{name}

    • GET:ValidatingWebhookConfiguration の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。

5.2.1. /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations

Expand
表5.1 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
DELETE
説明
ValidatingWebhookConfiguration のコレクションを削除します
Expand
表5.2 クエリーパラメーター
パラメーター説明

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

gracePeriodSeconds

integer

オブジェクトが削除されるまでの時間 (秒)。値は負の値ではない整数にする必要があります。値をゼロに指定すると、ただちに削除されます。この値が nil の場合は、指定されたタイプのデフォルトの猶予期間が使用されます。指定しない場合は、デフォルトでオブジェクトごとの値になります。ゼロはすぐに削除することを意味します。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

orphanDependents

boolean

非推奨。PropagationPolicy を使用してください。このフィールドは 1.7 で非推奨となります。依存オブジェクトが孤立している必要があります。true/false の場合、"孤立した" ファイナライザーがオブジェクトのファイナライザーリストで追加/削除されます。このフィールドまたは PropagationPolicy のいずれかを設定できますが、両方を設定することはできません。

propagationPolicy

string

ガベージコレクションが実行されるかどうか、およびその方法。このフィールドまたは OrphanDependents のどちらかを設定できますが、両方を設定できません。デフォルトポリシーは、metadata.finalizers に設定されている既存のファイナライザーとリソース固有のデフォルトポリシーによって決定されます。許容値は次のとおりです。'Orphan' - 依存を削除して孤立させます。'Background' - ガベージコレクターがバックグラウンドで依存関係を削除できるようにします。'Foreground' - フォアグラウンド内のすべての依存関係を削除するカスケードポリシーです。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

Expand
表5.3 本文パラメーター
パラメーター説明

body

DeleteOptions スキーマ

 
Expand
表5.4 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

Status スキーマ

401 - Unauthorized

空白

HTTP メソッド
GET
説明
種類のオブジェクトをリスト表示または監視する ValidatingWebhookConfiguration
Expand
表5.5 クエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

Expand
表5.6 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

ValidatingWebhookConfigurationList スキーマ

401 - Unauthorized

空白

HTTP メソッド
POST
説明
ValidatingWebhookConfiguration を作成します
Expand
表5.7 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表5.8 ボディーパラメーター
パラメーター説明

body

ValidatingWebhookConfiguration スキーマ

 
Expand
表5.9 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

ValidatingWebhookConfiguration スキーマ

201 - Created

ValidatingWebhookConfiguration スキーマ

202 - Accepted

ValidatingWebhookConfiguration スキーマ

401 - Unauthorized

空白

5.2.2. /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations

Expand
表5.10 グローバルクエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

HTTP メソッド
GET
説明
ValidatingWebhookConfiguration のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
Expand
表5.11 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

WatchEvent スキーマ

401 - Unauthorized

空白

5.2.3. /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}

Expand
表5.12 グローバルパスパラメーター
パラメーター説明

name

string

ValidatingWebhookConfiguration の名前

Expand
表5.13 グローバルクエリーパラメーター
パラメーター説明

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

HTTP メソッド
DELETE
説明
ValidatingWebhookConfiguration を削除します
Expand
表5.14 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

gracePeriodSeconds

integer

オブジェクトが削除されるまでの時間 (秒)。値は負の値ではない整数にする必要があります。値をゼロに指定すると、ただちに削除されます。この値が nil の場合は、指定されたタイプのデフォルトの猶予期間が使用されます。指定しない場合は、デフォルトでオブジェクトごとの値になります。ゼロはすぐに削除することを意味します。

orphanDependents

boolean

非推奨。PropagationPolicy を使用してください。このフィールドは 1.7 で非推奨となります。依存オブジェクトが孤立している必要があります。true/false の場合、"孤立した" ファイナライザーがオブジェクトのファイナライザーリストで追加/削除されます。このフィールドまたは PropagationPolicy のいずれかを設定できますが、両方を設定することはできません。

propagationPolicy

string

ガベージコレクションが実行されるかどうか、およびその方法。このフィールドまたは OrphanDependents のどちらかを設定できますが、両方を設定できません。デフォルトポリシーは、metadata.finalizers に設定されている既存のファイナライザーとリソース固有のデフォルトポリシーによって決定されます。許容値は次のとおりです。'Orphan' - 依存を削除して孤立させます。'Background' - ガベージコレクターがバックグラウンドで依存関係を削除できるようにします。'Foreground' - フォアグラウンド内のすべての依存関係を削除するカスケードポリシーです。

Expand
表5.15 本文パラメーター
パラメーター説明

body

DeleteOptions スキーマ

 
Expand
表5.16 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

Status スキーマ

202 - Accepted

Status スキーマ

401 - Unauthorized

空白

HTTP メソッド
GET
説明
指定された ValidatingWebhookConfiguration を読み取ります
Expand
表5.17 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

ValidatingWebhookConfiguration スキーマ

401 - Unauthorized

空白

HTTP メソッド
PATCH
説明
指定された ValidatingWebhookConfiguration を部分的に更新します
Expand
表5.18 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。このフィールドは、apply 要求 (application/apply-patch) の場合は必須ですが、apply 以外のパッチタイプ (JsonPatch、MergePatch、StrategicMergePatch) の場合は任意です。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

force

boolean

"force" は、Apply 要求を強制します。これは、ユーザーが他の人が所有する競合するフィールドを再取得することを意味します。非適用パッチ要求の場合は、強制フラグを設定解除する必要があります。

Expand
表5.19 本文パラメーター
パラメーター説明

body

Patch スキーマ

 
Expand
表5.20 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

ValidatingWebhookConfiguration スキーマ

201 - Created

ValidatingWebhookConfiguration スキーマ

401 - Unauthorized

空白

HTTP メソッド
PUT
説明
指定された ValidatingWebhookConfiguration を置き換えます
Expand
表5.21 クエリーパラメーター
パラメーター説明

dryRun

string

これは、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべての dryRun ステージが処理されます。

fieldManager

string

fieldManager は、これらの変更を行っているアクターまたはエンティティーに関連付けられた名前です。値は 128 文字未満である必要があり、https://golang.org/pkg/unicode/#IsPrint で定義されているように、印刷可能な文字のみが含まれている必要があります。

fieldValidation

string

fieldValidation は、`ServerSideFieldValidation` フィーチャーゲートも有効になっている場合に、不明または重複するフィールドを含む要求 (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは v1.23 以前のデフォルトの動作であり、`ServerSideFieldValidation` フィーチャーゲートが無効な場合のデフォルトの動作でもあります。警告: オブジェクトから削除された不明なフィールドと、検出された重複したフィールドごとに、標準の警告応答ヘッダーを介して警告を送ります。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは、`ServerSideFieldValidation` フィーチャーゲートが有効になっている場合のデフォルトです。Strict: オブジェクトから不明なフィールドが削除される場合、または重複するフィールドが存在する場合に、要求は BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。

Expand
表5.22 ボディーパラメーター
パラメーター説明

body

ValidatingWebhookConfiguration スキーマ

 
Expand
表5.23 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

ValidatingWebhookConfiguration スキーマ

201 - Created

ValidatingWebhookConfiguration スキーマ

401 - Unauthorized

空白

5.2.4. /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations/{name}

Expand
表5.24 グローバルパスパラメーター
パラメーター説明

name

string

ValidatingWebhookConfiguration の名前

Expand
表5.25 グローバルクエリーパラメーター
パラメーター説明

allowWatchBookmarks

boolean

allowWatchBookmarks は、タイプが "BOOKMARK" の監視イベントを要求します。ブックマークを実装していないサーバーはこのフラグを無視する可能性があり、ブックマークはサーバーの判断で送信されます。クライアントは、ブックマークが特定の間隔で返される、またはサーバーがセッション中に BOOKMARK イベントを送信すると想定するべきではありません。これが watch でない場合は、このフィールドが無視されます。

continue

string

サーバーからさらに結果を取得する場合は、continue オプションを設定する必要があります。この値はサーバー定義であるため、クライアントは同じクエリーパラメーター (continue の値を除く) で、以前のクエリー結果からの continue 値のみを使用でき、サーバーは認識できない continue 値を拒否する可能性があります。指定された continue の値が有効期限切れ (通常 5-15 分) やサーバーでの設定変更により無効となった場合、サーバーは 410 ResourceExpired エラーと continue トークンを返します。クライアントが一貫性のあるリストを必要とする場合は、続行フィールドなしでリストを再起動する必要があります。必要としない場合、クライアントは 410 エラーで受信したトークンを使用して別のリスト要求を送信できます。サーバーは次のキーから始まるリストで応答しますが、最新のスナップショットから取得するため、以前のリストの結果とは矛盾します。作成、変更、または削除されたオブジェクトは、キーが「次のキー」の後にある限り応答に含まれます。

watch が true の場合、このフィールドはサポートされません。クライアントは、サーバーから返された最後の resourceVersion 値から監視を開始し、変更を見逃すことはありません。

fieldSelector

string

返されるオブジェクトのリストをフィールドごとに制限するセレクター。デフォルトは everything です。

labelSelector

string

返されるオブジェクトのリストをラベルで制限するためのセレクター。デフォルトは everything です。

limit

integer

limit は、リスト呼び出しに対して返される応答の最大数です。他にもアイテムが存在する場合は、サーバーは、リストのメタデータ上の `continue` フィールドを、同じ初期クエリーで使用できる値に設定して、次の結果セットを取得します。制限を設定すると、要求されたすべてのオブジェクトが除外された場合に、要求された量より少ないアイテム (最大 0 個のアイテム) が返される場合があります。クライアントは、続行フィールドの存在のみを使用して、より多くの結果が利用可能かどうかを判断する必要があります。サーバーは limit 引数をサポートしない場合もあり、その場合は利用可能なすべての結果を返します。制限が指定され、続行フィールドが空の場合、クライアントはこれ以上結果が利用できないと想定する場合があります。watch が true の場合、このフィールドはサポートされません。

サーバーは、continue を使用したときに返されるオブジェクトが、制限なしで単一のリスト呼び出しを発行するのと同じであることを保証します。つまり、最初の要求が発行された後に作成、変更、または削除されたオブジェクトは、後続の継続要求に含まれません。これは、一貫性のあるスナップショットと呼ばれることもあり、limit を使用して非常にサイズの大きい結果が小さめのチャンクに分けて受信することで、考えられるオブジェクトがすべて表示されるようにします。チャンクリスト中にオブジェクトが更新された場合は、最初のリスト結果が計算されたときに存在していたオブジェクトのバージョンが返されます。

pretty

string

'true' の場合は、出力が整形表示 (Pretty-print) されます。

resourceVersion

string

resourceVersion は、要求を処理できるリソースのバージョンに関する制約を設定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

resourceVersionMatch

string

resourceVersionMatch は、resourceVersion をリスト呼び出しに適用する方法を決定します。resourceVersion が設定されているリスト呼び出しには resourceVersionMatch を設定することが強く推奨されます。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions を参照してください。

デフォルトは unset です。

timeoutSeconds

integer

リスト/ウォッチ呼び出しのタイムアウト。これにより、アクティビティーの有無に関係なく、呼び出し時間が制限されます。

watch

boolean

記述されたリソースへの変更を監視し、追加、更新、および削除通知のストリームとして返します。resourceVersion を指定します。

HTTP メソッド
GET
説明
ValidatingWebhookConfiguration の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
Expand
表5.26 HTTP レスポンス
HTTP コードレスポンスのボディー

200 - OK

WatchEvent スキーマ

401 - Unauthorized

空白

Legal Notice

Copyright © 2025 Red Hat

OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).

Modified versions must remove all Red Hat trademarks.

Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.

Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.

Linux® is the registered trademark of Linus Torvalds in the United States and other countries.

Java® is a registered trademark of Oracle and/or its affiliates.

XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.

MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.

Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.

The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.

All other trademarks are the property of their respective owners.

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat