拡張 API
拡張 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. ValidatingAdmissionPolicy [admissionregistration.k8s.io/v1]
- 説明
- ValidatingAdmissionPolicy は、オブジェクトを変更せずに受け入れるか拒否するアドミッション検証ポリシーの定義を表します。
- 型
-
object
1.5. ValidatingAdmissionPolicyBinding [admissionregistration.k8s.io/v1]
- 説明
ValidatingAdmissionPolicyBinding は、ValidatingAdmissionPolicy をパラメーター化されたリソースにバインドします。ValidatingAdmissionPolicyBinding とパラメーター CRD の組み合わせにより、クラスター管理者がクラスターのポリシーを設定する方法が定義されます。
特定のアドミッションリクエストに対して、各バインディングによりポリシーが N 回評価されます。N は、パラメーターを使用しないポリシー/バインディングの場合は 1、それ以外の場合はバインディングによって選択されるパラメーターの数です。
ポリシーの CEL 式では、計算された CEL コストが CEL 最大予算を下回る必要があります。ポリシーの各評価には、独立した CEL コスト予算が与えられます。ポリシー、バインディング、またはパラメーターを追加/削除しても、特定の (ポリシー、バインディング、パラメーターの) 組み合わせがそれぞれの CEL 予算内に収まるかどうかには影響しません。
- 型
-
object
1.6. ValidatingWebhookConfiguration [admissionregistration.k8s.io/v1]
- 説明
- ValidatingWebhookConfiguration は、変更せずに受け入れまたは拒否し、反対する Webhook の設定と承認を説明します。
- 型
-
object
第2章 APIService [apiregistration.k8s.io/v1]
- 説明
- APIService は、特定の GroupVersion のサーバーを表します。名前は "version.group" である必要があります。
- 型
-
object
2.1. 仕様
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できる場合があります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準オブジェクトのメタデータ。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。 | |
|
| APIServiceSpec には、サーバーを見つけて通信するための情報が含まれています。証明書の検証を無効にすることはできますが、https のみがサポートされています。 |
|
| APIServiceStatus には、API サーバーに関する派生情報が含まれています |
2.1.1. .spec
- 説明
- APIServiceSpec には、サーバーを見つけて通信するための情報が含まれています。証明書の検証を無効にすることはできますが、https のみがサポートされています。
- 型
-
object
- 必須
-
groupPriorityMinimum
-
versionPriority
-
プロパティー | 型 | 説明 |
---|---|---|
|
| CABundle は、API サーバーのサービング証明書を検証するために使用される PEM エンコードされた CA バンドルです。指定しない場合、apiserver のシステム信頼ルートが使用されます。 |
|
| Group は、このサーバーがホストする API グループ名です。 |
|
| GroupPriorityMinimum は、このグループが最低限持つべき優先度です。優先度が高いということは、優先度の低いグループよりもグループがクライアントに優先されることを意味します。このグループの他のバージョンにより、グループ全体の優先度が高くなるように、さらに高い GroupPriorityMinimum 値が指定される場合があることに注意してください。プライマリーソートは GroupPriorityMinimum に基づいており、最大数から最小値 (10 の前に 20) の順に並べられます。二次ソートは、オブジェクトの名前のアルファベット順の比較に基づいています。(v1.foo より前の v1.bar) 次のようなものを推奨します:18000 の* .k8s.io (拡張機能を除く) および PaaS(OpenShift、Deis) は 2000 年代に推奨されます |
|
| InsecureSkipTLSVerify は、このサーバーと通信するときに TLS 証明書の検証を無効にします。これは強く推奨しません。代わりに CABundle を使用する必要があります。 |
|
| ServiceReference は、Service.legacy.k8s.io への参照を保持します |
|
| バージョンは、このサーバーがホストする API バージョンです。たとえば、"v1" |
|
| 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
プロパティー | 型 | 説明 |
---|---|---|
|
| 名前はサービスの名前です |
|
| 名前空間はサービスの名前空間です |
|
|
指定されている場合、Webhook をホストしているサービスのポート。下位互換性のために、デフォルトは 443 です。 |
2.1.3. .status
- 説明
- APIServiceStatus には、API サーバーに関する派生情報が含まれています
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| apiService の現在のサービス状態。 |
|
| APIServiceCondition は、特定の時点での APIService の状態を表します。 |
2.1.4. .status.conditions
- 説明
- apiService の現在のサービス状態。
- 型
-
array
2.1.5. .status.conditions[]
- 説明
- APIServiceCondition は、特定の時点での APIService の状態を表します。
- 型
-
object
- 必須
-
type
-
status
-
プロパティー | 型 | 説明 |
---|---|---|
| 最後にある状態から別の状態に遷移した時間。 | |
|
| 最後にある状態から別の状態に遷移した時間。 |
|
| 条件の最後の遷移の一意の 1 単語の CamelCase 理由。 |
|
| ステータスは、状態のステータスです。True、False、Unknown の場合があります。 |
|
| タイプは条件のタイプです。 |
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
- HTTP メソッド
-
DELETE
- 説明
- APIService のコレクションを削除します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- APIService の種類のオブジェクトをリスト表示または監視する
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
POST
- 説明
- APIService を作成します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空白 |
2.2.2. /apis/apiregistration.k8s.io/v1/watch/apiservices
- HTTP メソッド
-
GET
- 説明
- APIService のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
2.2.3. /apis/apiregistration.k8s.io/v1/apiservices/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| APIService の名前 |
- HTTP メソッド
-
DELETE
- 説明
- APIService を削除します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 指定された APIService を読み取ります
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PATCH
- 説明
- 指定された APIService を部分的に更新します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PUT
- 説明
- 指定された APIService を置き換えます
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空白 |
2.2.4. /apis/apiregistration.k8s.io/v1/watch/apiservices/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| APIService の名前 |
- HTTP メソッド
-
GET
- 説明
- APIService の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
2.2.5. /apis/apiregistration.k8s.io/v1/apiservices/{name}/status
パラメーター | 型 | 説明 |
---|---|---|
|
| APIService の名前 |
- HTTP メソッド
-
GET
- 説明
- 指定された APIService のステータスを読み取ります
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PATCH
- 説明
- 指定された APIService のステータスを部分的に更新します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PUT
- 説明
- 指定された APIService のステータスを置き換えます
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空白 |
第3章 CustomResourceDefinition [apiextensions.k8s.io/v1]
- 説明
- CustomResourceDefinition は、API サーバーで公開する必要があるリソースを表します。その名前は <.spec.name>.<.spec.group> の形式でなければなりません。
- 型
-
object
- 必須
-
spec
-
3.1. 仕様
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できる場合があります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準オブジェクトのメタデータの詳細: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| CustomResourceDefinitionSpec は、ユーザーがリソースをどのように表示するかを表します。 |
|
| CustomResourceDefinitionStatus は CustomResourceDefinition の状態を示します。 |
3.1.1. .spec
- 説明
- CustomResourceDefinitionSpec は、ユーザーがリソースをどのように表示するかを表します。
- 型
-
object
- 必須
-
group
-
names
-
scope
-
versions
-
プロパティー | 型 | 説明 |
---|---|---|
|
| CustomResourceConversion は、CR のさまざまなバージョンを変換する方法を説明します。 |
|
|
group は、定義されたカスタムリソースの API グループです。カスタムリソースは |
|
| CustomResourceDefinitionNames は、この CustomResourceDefinition を提供する名前を示します |
|
|
preserveUnknownFields は、OpenAPI スキーマで指定されていないオブジェクトフィールドを、ストレージに永続化するときに保持する必要があることを示します。apiVersion、kind、metadata、およびメタデータ内の既知のフィールドは常に保持されます。このフィールドは、 |
|
|
スコープは、定義されたカスタムリソースがクラスタースコープか名前空間スコープかを示します。許可される値は、 |
|
| version は、定義されたカスタムリソースのすべての API バージョンのリストです。バージョン名は、提供されたバージョンが API ディスカバリーにリストされる順序を計算するために使用されます。バージョン文字列が "kube-like" の場合、辞書式順序で並べられた "kube-like" ではないバージョン文字列の上に並べ替えられます。"Kube のような" バージョンは "v" で始まり、その後に数字 (メジャーバージョン) が続き、オプションで文字列 "alpha" または "beta" と別の数字 (マイナーバージョン) が続きます。これらは、最初に GA > ベータ > アルファ (GA はベータやアルファなどの接尾辞のないバージョン) でソートされ、次にメジャーバージョン、次にマイナーバージョンでソートされます。バージョンのソート済みリストの例: v10、v2、v1、v11beta2、v10beta3、v3beta1、v12alpha1、v11alpha2、foo1、foo10。 |
|
| CustomResourceDefinitionVersion は、CRD のバージョンを表します。 |
3.1.2. .spec.conversion
- 説明
- CustomResourceConversion は、CR のさまざまなバージョンを変換する方法を説明します。
- 型
-
object
- 必須
-
strategy
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
ストラテジーは、カスタムリソースがバージョン間でどのように変換されるかを指定します。使用可能な値は |
|
| WebhookConversion は、変換 Webhook を呼び出す方法を説明します |
3.1.3. .spec.conversion.webhook
- 説明
- WebhookConversion は、変換 Webhook を呼び出す方法を説明します
- 型
-
object
- 必須
-
conversionReviewVersions
-
プロパティー | 型 | 説明 |
---|---|---|
|
| WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています。 |
|
|
conversionReviewVersions は、Webhook が期待する優先される |
3.1.4. .spec.conversion.webhook.clientConfig
- 説明
- WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| caBundle は、PEM でエンコードされた CA バンドルであり、Webhook のサーバー証明書を検証するために使用されます。指定しない場合、apiserver のシステム信頼ルートが使用されます。 |
|
| ServiceReference は、Service.legacy.k8s.io への参照を保持します |
|
|
url は、Webhook の場所を標準の URL 形式 (
この Webhook を呼び出す必要がある可能性のある apiserver を実行するすべてのホストでこの Webhook を実行するように細心の注意を払わない限り、 スキームは "https" である必要があります。URL は "https://" で始まる必要があります。 パスはオプションであり、存在する場合は、URL で許可される任意の文字列にすることができます。パスを使用して、クラスター識別子などの任意の文字列を Webhook に渡すことができます。 ユーザーまたは基本認証 ("user:password@" など) を使用することは許可されていません。フラグメント ("#…") とクエリーパラメーター ("?…") も許可されていません。 |
3.1.5. .spec.conversion.webhook.clientConfig.service
- 説明
- ServiceReference は、Service.legacy.k8s.io への参照を保持します
- 型
-
object
- 必須
-
namespace
-
name
-
プロパティー | 型 | 説明 |
---|---|---|
|
| name はサービスの名前です。必須 |
|
| namespace は、サービスの名前空間です。必須 |
|
| path は、Webhook が接続されるオプションの URL パスです。 |
|
|
port は、Webhook が接続されるオプションのサービスポートです。 |
3.1.6. .spec.names
- 説明
- CustomResourceDefinitionNames は、この CustomResourceDefinition を提供する名前を示します
- 型
-
object
- 必須
-
複数
-
kind
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
カテゴリーは、このカスタムリソースが属するグループ化されたリソースのリストです (例: 'すべて')。これは API 検出ドキュメントで公開され、クライアントが |
|
|
kind は、リソースのシリアル化された種類です。通常は CamelCase で単数です。カスタムリソースインスタンスは、この値を API 呼び出しの |
|
| listKind は、このリソースのリストのシリアル化された種類です。デフォルトは "`kind`List" です。 |
|
|
複数形は、提供するリソースの複数形の名前です。カスタムリソースは |
|
|
shortNames はリソースの短縮名であり、API 検出ドキュメントで公開され、クライアントが |
|
|
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
-
プロパティー | 型 | 説明 |
---|---|---|
|
| additionalPrinterColumns は、テーブル出力で返される追加の列を指定します。詳細は、https://kubernetes.io/docs/reference/using-api/api-concepts/#receiving-resources-as-tables を参照してください。列が指定されていない場合、カスタムリソースの経過時間を表示する単一の列が使用されます。 |
|
| CustomResourceColumnDefinition は、サーバー側の印刷用の列を指定します。 |
|
| deprecated は、このバージョンのカスタムリソース API が非推奨であることを示します。true に設定すると、このバージョンへの API リクエストは、サーバー応答で警告ヘッダーを受け取ります。デフォルトは false です。 |
|
|
deprecationWarning は、API クライアントに返されるデフォルトの警告を上書きします。 |
|
|
name はバージョン名です。たとえば、"v1"、"v2beta1" などです。カスタムリソースは、このバージョンで |
|
| CustomResourceValidation は、CustomResources の検証メソッドのリストです。 |
|
| selectableFields は、フィールドセレクターとして使用できるフィールドへのパスを指定します。最大 8 つの選択可能なフィールドが許可されます。https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors を参照してください。 |
|
| SelectableField は、フィールドセレクターで使用できるフィールドの JSON パスを指定します。 |
|
| 提供は、このバージョンが REST API を介して提供されることを有効/無効にするフラグです。 |
|
| storage は、カスタムリソースをストレージに永続化するときにこのバージョンを使用する必要があることを示します。storage=true のバージョンが 1 つだけ存在する必要があります。 |
|
| 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
-
プロパティー | 型 | 説明 |
---|---|---|
|
| description は、この列の人間が読める形式の説明です。 |
|
| format は、この列のオプションの OpenAPI タイプ定義です。'name' 形式は、クライアントが列がリソース名であることを識別するのを支援するために、1 次 ID 列に適用されます。詳細は、https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types を参照してください。 |
|
| jsonPath は、この列の値を生成するために各カスタムリソースに対して評価される単純な JSON パス (つまり、配列表記を使用) です。 |
|
| name は、人間が読める形式の列の名前です。 |
|
| priority は、他の列と比較したこの列の相対的な重要度を定義する整数です。数値が小さいほど優先度が高いと見なされます。限られたスペースのシナリオで省略される可能性のある列には、0 より大きい優先順位を与える必要があります。 |
|
| 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
プロパティー | 型 | 説明 |
---|---|---|
| openAPIV3Schema は、検証とプルーニングに使用する OpenAPIv3 スキーマです。 |
3.1.12. .spec.versions[].selectableFields
- 説明
- selectableFields は、フィールドセレクターとして使用できるフィールドへのパスを指定します。最大 8 つの選択可能なフィールドが許可されます。https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors を参照してください。
- 型
-
array
3.1.13. .spec.versions[].selectableFields[]
- 説明
- SelectableField は、フィールドセレクターで使用できるフィールドの JSON パスを指定します。
- 型
-
object
- 必須
-
jsonPath
-
プロパティー | 型 | 説明 |
---|---|---|
|
| jsonPath は、各カスタムリソースに対して評価され、フィールドセレクター値を生成する単純な JSON パスです。配列表記のない JSON パスのみが許可されます。文字列型、ブール型、または整数型のフィールドを参照する必要があります。列挙値を持つ型とフォーマットを持つ文字列が許可されます。jsonPath がリソース内の存在しないフィールドを参照する場合、jsonPath は空の文字列として評価されます。メタデータフィールドを参照しないでください。必須。 |
3.1.14. .spec.versions[].subresources
- 説明
- CustomResourceSubresources は、CustomResources のステータスとスケールサブリソースを定義します。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| CustomResourceSubresourceScale は、CustomResources のスケールサブリソースを提供する方法を定義します。 |
|
|
CustomResourceSubresourceStatus は、CustomResources のステータスサブリソースを提供する方法を定義します。ステータスは、CustomResource 内の |
3.1.15. .spec.versions[].subresources.scale
- 説明
- CustomResourceSubresourceScale は、CustomResources のスケールサブリソースを提供する方法を定義します。
- 型
-
object
- 必須
-
specReplicasPath
-
statusReplicasPath
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
labelSelectorPath は、 |
|
|
specReplicasPath は、 |
|
|
statusReplicasPath は、 |
3.1.16. .spec.versions[].subresources.status
- 説明
-
CustomResourceSubresourceStatus は、CustomResources のステータスサブリソースを提供する方法を定義します。ステータスは、CustomResource 内の
.status
JSON パスで表されます。設定すると、*カスタムリソースの/status サブリソースを公開します*/status サブリソースへの PUT リクエストはカスタムリソースオブジェクトを取得し、ステータススタンザ以外の変更を無視します*カスタムリソースへの PUT/POST/PATCH リクエストは変更を無視しますステータススタンザ - 型
-
object
3.1.17. .status
- 説明
- CustomResourceDefinitionStatus は CustomResourceDefinition の状態を示します。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| CustomResourceDefinitionNames は、この CustomResourceDefinition を提供する名前を示します |
|
| 条件は、CustomResourceDefinition の特定の側面の状態を示します |
|
| CustomResourceDefinitionCondition には、この Pod の現在の状態の詳細が含まれています。 |
|
|
storedVersions は、これまでに永続化された CustomResources のすべてのバージョンをリスト表示します。これらのバージョンを追跡すると、etcd に保存されているバージョンの移行パスが可能になります。このフィールドは変更可能であるため、移行コントローラーは別のバージョンへの移行を完了し (古いオブジェクトがストレージに残っていないことを確認)、残りのバージョンをこのリストから削除できます。このリストに存在するバージョンは、 |
3.1.18. .status.acceptedNames
- 説明
- CustomResourceDefinitionNames は、この CustomResourceDefinition を提供する名前を示します
- 型
-
object
- 必須
-
複数
-
kind
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
カテゴリーは、このカスタムリソースが属するグループ化されたリソースのリストです (例: 'すべて')。これは API 検出ドキュメントで公開され、クライアントが |
|
|
kind は、リソースのシリアル化された種類です。通常は CamelCase で単数です。カスタムリソースインスタンスは、この値を API 呼び出しの |
|
| listKind は、このリソースのリストのシリアル化された種類です。デフォルトは "`kind`List" です。 |
|
|
複数形は、提供するリソースの複数形の名前です。カスタムリソースは |
|
|
shortNames はリソースの短縮名であり、API 検出ドキュメントで公開され、クライアントが |
|
|
singular は、リソースの単数名です。すべて小文字である必要があります。デフォルトは小文字 |
3.1.19. .status.conditions
- 説明
- 条件は、CustomResourceDefinition の特定の側面の状態を示します
- 型
-
array
3.1.20. .status.conditions[]
- 説明
- CustomResourceDefinitionCondition には、この Pod の現在の状態の詳細が含まれています。
- 型
-
object
- 必須
-
type
-
status
-
プロパティー | 型 | 説明 |
---|---|---|
| lastTransitionTime は、ある状態から別の状態に最後に遷移した時間です。 | |
|
| message は、最後の遷移の詳細を示す人が判読できるメッセージです。 |
|
| 理由は、条件の最後の遷移の一意の 1 単語の CamelCase 理由です。 |
|
| status は、状態のステータスです。True、False、Unknown の場合があります。 |
|
| 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
- HTTP メソッド
-
DELETE
- 説明
- CustomResourceDefinition のコレクションを削除します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- CustomResourceDefinition の種類のオブジェクトをリスト表示または監視する
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
POST
- 説明
- CustomResourceDefinition を作成します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空白 |
3.2.2. /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions
- HTTP メソッド
-
GET
- 説明
- CustomResourceDefinition のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
3.2.3. /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| CustomResourceDefinition の名前 |
- HTTP メソッド
-
DELETE
- 説明
- CustomResourceDefinition を削除します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 指定された CustomResourceDefinition を読み取ります
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PATCH
- 説明
- 指定された CustomResourceDefinition を部分的に更新します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PUT
- 説明
- 指定された CustomResourceDefinition を置き換えます
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
3.2.4. /apis/apiextensions.k8s.io/v1/watch/customresourcedefinitions/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| CustomResourceDefinition の名前 |
- HTTP メソッド
-
GET
- 説明
- CustomResourceDefinition の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
3.2.5. /apis/apiextensions.k8s.io/v1/customresourcedefinitions/{name}/status
パラメーター | 型 | 説明 |
---|---|---|
|
| CustomResourceDefinition の名前 |
- HTTP メソッド
-
GET
- 説明
- 指定された CustomResourceDefinition のステータスを読み取ります
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PATCH
- 説明
- 指定された CustomResourceDefinition のステータスを部分的に更新します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PUT
- 説明
- 指定された CustomResourceDefinition のステータスを置き換えます
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
第4章 MutatingWebhookConfiguration [admissionregistration.k8s.io/v1]
- 説明
- MutatingWebhookConfiguration は、オブジェクトを受け入れるか拒否し、変更する可能性のある Webhook の設定と承認を説明します。
- 型
-
object
4.1. 仕様
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できる場合があります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準のオブジェクトメタデータ。詳細は https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。 | |
|
| Webhook は、Webhook と影響を受けるリソースおよび操作のリストです。 |
|
| MutatingWebhook は、アドミッション Webhook と、それが適用されるリソースと操作を説明しています。 |
4.1.1. .webhooks
- 説明
- Webhook は、Webhook と影響を受けるリソースおよび操作のリストです。
- 型
-
array
4.1.2. .webhooks[]
- 説明
- MutatingWebhook は、アドミッション Webhook と、それが適用されるリソースと操作を説明しています。
- 型
-
object
- 必須
-
name
-
clientConfig
-
sideEffects
-
admissionReviewVersions
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
AdmissionReviewVersions は、Webhook が期待する優先 |
|
| WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています |
|
| FailurePolicy は、アドミッションエンドポイントからの認識されないエラーの処理方法を定義します。許可される値は Ignore または Fail です。デフォルトは Fail です。
使用可能な列挙値: - |
|
| MatchConditions は、この Webhook にリクエストを送信するために満たす必要がある条件のリストです。matchConditions は、ルール、namespaceSelector、および objectSelector ですでに一致しているリクエストをフィルター処理します。matchConditions の空のリストは、すべてのリクエストに一致します。最大 64 個の一致条件が使用できます。 正確な一致ロジック (処理順序) は次のとおりです。1. いずれかの matchCondition が FALSE と評価された場合、Webhook はスキップされます。2. すべての matchConditions が TRUE と評価された場合、Webhook が呼び出されます。3. いずれかの matchCondition がエラーと評価された場合 (ただし、どれも FALSE ではない): - failurePolicy=Fail の場合、リクエストは拒否されます。- failurePolicy=Ignore の場合、エラーは無視され、Webhook はスキップされます。 |
|
| MatchCondition は、リクエストが Webhook に送信されるために満たされる必要がある条件を表します。 |
|
| matchPolicy は、"rules" リストを使用して受信リクエストを照合する方法を定義します。許可される値は "Exact" または "Equivalent" です。
- Exact: 指定されたルールにリクエストが完全に一致する場合にのみ、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更できても、"rules" に含まれているのが
- Equivalent: 別の API グループまたはバージョンを介してでも、ルールにリストされているリソースを変更する場合に、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更でき、"rules" に含まれているのが デフォルトは "Equivalent" です。
使用可能な列挙値: - |
|
| アドミッション Webhook の名前。名前は完全修飾する必要があります。たとえば、imagepolicy.kubernetes.io です。ここで、"imagepolicy" は Webhook の名前であり、kubernetes.io は組織の名前です。必須。 |
| 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 は、オブジェクトに一致するラベルがあるかどうかに基づいて、Webhook を実行するかどうかを決定します。objectSelector は、Webhook に送信される oldObject と newObject の両方に対して評価され、いずれかのオブジェクトがセレクターと一致する場合に一致すると見なされます。null オブジェクト (create の場合は oldObject、delete の場合は newObject) またはラベルを持つことができないオブジェクト (DeploymentRollback または PodProxyOptions オブジェクトなど) は一致するとは見なされません。エンドユーザーはラベルを設定することでアドミッション Webhook をスキップできるため、Webhook がオプトインの場合にのみオブジェクトセレクターを使用してください。デフォルトは空の LabelSelector で、すべてに一致します。 | |
|
| reinvocationPolicy は、単一のアドミッション評価の一部として、この Webhook を複数回呼び出す必要があるかどうかを示します。許可される値は "Never" と "IfNeeded" です。 決して:Webhook は 1 回の入場評価で 2 回以上呼び出されることはありません。 IfNeeded: 最初の Webhook 呼び出しの後に、許可されているオブジェクトが他の許可プラグインによって変更された場合、許可評価の一部として Webhook が少なくとも 1 回追加で呼び出されます。このオプションを指定する Webhook はべき等であり、以前に許可したオブジェクトを処理できる 必要 があります。注:*追加の呼び出しの数は、正確に 1 つであるとは限りません。*追加の呼び出しによってオブジェクトがさらに変更された場合、Webhook が再度呼び出されることは保証されません。*このオプションを使用する Webhook は、追加の呼び出しの数を最小限に抑えるために並べ替えられる場合があります。*すべての変更が完了したことが保証された後でオブジェクトを検証するには、代わりに検証アドミッション Webhook を使用します。 デフォルトは "Never" です。
使用可能な列挙値: - |
|
| Rules は、Webhook が考慮するリソース/サブリソースに対する操作を表します。Webhook は、操作が いずれか のルールに一致する場合、その操作を考慮します。ただし、ValidatingAdmissionWebhooks と MutatingAdmissionWebhooks が、プラグインを完全に無効にしないと回復できない状態にクラスターを置くことを防ぐために、ValidatingAdmissionWebhooks と MutatingAdmissionWebhook は、ValidatingWebhookConfiguration オブジェクトと MutatingWebhookConfiguration オブジェクトの認可要求で呼び出されることはありません。 |
|
| RuleWithOperations は、操作とリソースのタプルです。すべてのタプル拡張が有効であることを確認することを推奨します。 |
|
| SideEffects は、この Webhook に副作用があるかどうかを示します。許容される値は、None、NoneOnDryRun です (v1beta1 を介して作成された Webhook は、Some または Unknown を指定する場合もあります)。副作用のある Webhook は、調整システムを実装する必要があります。これは、リクエストがアドミッションチェーンの将来のステップで拒否される可能性があるため、副作用を元に戻す必要があるためです。dryRun 属性を持つリクエストは、sideEffects==Unknown または Some の Webhook と一致する場合に自動拒否されます。
使用可能な列挙値: - |
|
| TimeoutSeconds は、この Webhook のタイムアウトを指定します。タイムアウトが経過すると、Webhook 呼び出しは無視されるか、失敗ポリシーに基づいて API 呼び出しが失敗します。タイムアウト値は 1〜30 秒である必要があります。デフォルトは 10 秒です。 |
4.1.3. .webhooks[].clientConfig
- 説明
- WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
|
|
|
| ServiceReference は、Service.legacy.k8s.io への参照を保持します |
|
|
この Webhook を呼び出す必要がある可能性のある apiserver を実行するすべてのホストでこの Webhook を実行するように細心の注意を払わない限り、 スキームは "https" である必要があります。URL は "https://" で始まる必要があります。 パスはオプションであり、存在する場合は、URL で許可される任意の文字列にすることができます。パスを使用して、クラスター識別子などの任意の文字列を Webhook に渡すことができます。 ユーザーまたは基本認証 ("user:password@" など) を使用することは許可されていません。フラグメント ("#…") とクエリーパラメーター ("?…") も許可されていません。 |
4.1.4. .webhooks[].clientConfig.service
- 説明
- ServiceReference は、Service.legacy.k8s.io への参照を保持します
- 型
-
object
- 必須
-
namespace
-
name
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
指定されている場合、Webhook をホストしているサービスのポート。下位互換性のために、デフォルトは 443 です。 |
4.1.5. .webhooks[].matchConditions
- 説明
MatchConditions は、この Webhook にリクエストを送信するために満たす必要がある条件のリストです。matchConditions は、ルール、namespaceSelector、および objectSelector ですでに一致しているリクエストをフィルター処理します。matchConditions の空のリストは、すべてのリクエストに一致します。最大 64 個の一致条件が使用できます。
正確な一致ロジック (処理順序) は次のとおりです。1. いずれかの matchCondition が FALSE と評価された場合、Webhook はスキップされます。2. すべての matchConditions が TRUE と評価された場合、Webhook が呼び出されます。3. いずれかの matchCondition がエラーと評価された場合 (ただし、どれも FALSE ではない): - failurePolicy=Fail の場合、リクエストは拒否されます。- failurePolicy=Ignore の場合、エラーは無視され、Webhook はスキップされます。
- 型
-
array
4.1.6. .webhooks[].matchConditions[]
- 説明
- MatchCondition は、リクエストが Webhook に送信されるために満たされる必要がある条件を表します。
- 型
-
object
- 必須
-
name
-
expression
-
プロパティー | 型 | 説明 |
---|---|---|
|
| expression は、CEL によって評価される式を表します。ブール値に対して評価する必要があります。CEL 式は、CEL 変数として整理された AdmissionRequest および Authorizer の内容にアクセスできます。 'object' - 受信リクエストのオブジェクト。DELETE 要求の値は null です。'oldObject' - 既存のオブジェクト。CREATE リクエストの場合、値は null です。'request' - 受付リクエストの属性 (/pkg/apis/admission/types.go#AdmissionRequest)。'authorizer' - CEL オーソライザー。リクエストのプリンシパル (ユーザーまたはサービスアカウント) の承認チェックを実行するために使用される場合があります。https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#Authz 'authorizer.requestResource' ('authorizer' から構築され、リクエストリソースで設定された CEL ResourceCheck) を参照してください。CEL に関するドキュメント: https://kubernetes.io/docs/reference/using-api/cel/ 必須。 |
|
| Name はこの一致条件の識別子であり、MatchConditions の戦略的なマージに使用されるほか、ログ記録用の識別子としても使用されます。適切な名前は、関連する式を説明するものでなければなりません。name は、英数字、'-'、''、または '.' で構成される修飾名で、先頭と末尾が英数字である必要があります (例: 'MyName'、'my.name'、'123-abc'。検証に使用される正規表現は '([A-Za-z0-9][-A-Za-z0-9.]*)?[A-Za-z0-9]')。必要に応じて、DNS サブドメイン接頭辞および '/' を指定します (例: 'example.com/MyName')。 必須。 |
4.1.7. .webhooks[].rules
- 説明
- Rules は、Webhook が考慮するリソース/サブリソースに対する操作を表します。Webhook は、操作が いずれか のルールに一致する場合、その操作を考慮します。ただし、ValidatingAdmissionWebhooks と MutatingAdmissionWebhooks が、プラグインを完全に無効にしないと回復できない状態にクラスターを置くことを防ぐために、ValidatingAdmissionWebhooks と MutatingAdmissionWebhook は、ValidatingWebhookConfiguration オブジェクトと MutatingWebhookConfiguration オブジェクトの認可要求で呼び出されることはありません。
- 型
-
array
4.1.8. .webhooks[].rules[]
- 説明
- RuleWithOperations は、操作とリソースのタプルです。すべてのタプル拡張が有効であることを確認することを推奨します。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| APIGroups は、リソースが属する API グループです。'' はすべてのグループです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| APIVersions は、リソースが属する API バージョンです。'' はすべてのバージョンです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| 操作は、アドミッションフックが気にする操作です - これらすべての操作および追加される将来のアドミッション操作に対して、CREATE、UPDATE、DELETE、CONNECT、または*。'*' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| リソースは、このルールが適用されるリソースのリストです。 例: 'Pod' は Pod を意味します。'pods/log' は、Pod のログサブリソースを意味します。'' はすべてのリソースを意味しますが、サブリソースは意味しません。'pods/' は、Pod のすべてのサブリソースを意味します。'/scale' は、すべてのスケールサブリソースを意味します。'/*' は、すべてのリソースとそのサブリソースを意味します。 ワイルドカードが存在する場合、検証ルールはリソースが互いに重複しないことを保証します。 囲んでいるオブジェクトによっては、サブリソースが許可されない場合があります。必須。 |
|
| 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
- HTTP メソッド
-
DELETE
- 説明
- MutatingWebhookConfiguration のコレクションを削除します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 種類のオブジェクトをリスト表示または監視する MutatingWebhookConfiguration
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
POST
- 説明
- MutatingWebhookConfiguration を作成します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空白 |
4.2.2. /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations
- HTTP メソッド
-
GET
- 説明
- MutatingWebhookConfiguration のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
4.2.3. /apis/admissionregistration.k8s.io/v1/mutatingwebhookconfigurations/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| MutatingWebhookConfiguration の名前 |
- HTTP メソッド
-
DELETE
- 説明
- MutatingWebhookConfiguration を削除します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 指定された MutatingWebhookConfiguration を読み取ります
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PATCH
- 説明
- 指定された MutatingWebhookConfiguration を部分的に更新します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PUT
- 説明
- 指定された MutatingWebhookConfiguration を置き換えます
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
4.2.4. /apis/admissionregistration.k8s.io/v1/watch/mutatingwebhookconfigurations/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| MutatingWebhookConfiguration の名前 |
- HTTP メソッド
-
GET
- 説明
- MutatingWebhookConfiguration の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
第5章 ValidatingAdmissionPolicy [admissionregistration.k8s.io/v1]
- 説明
- ValidatingAdmissionPolicy は、オブジェクトを変更せずに受け入れるか拒否するアドミッション検証ポリシーの定義を表します。
- 型
-
object
5.1. 仕様
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できる場合があります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準のオブジェクトメタデータ。詳細は https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。 | |
|
| ValidatingAdmissionPolicySpec は、AdmissionPolicy の望ましい動作の仕様です。 |
|
| ValidatingAdmissionPolicyStatus は、アドミッション検証ポリシーのステータスを表します。 |
5.1.1. .spec
- 説明
- ValidatingAdmissionPolicySpec は、AdmissionPolicy の望ましい動作の仕様です。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| auditAnnotations には、API リクエストの監査イベント用の監査アノテーションを生成するために使用する CEL 式を含めます。validations と auditAnnotations の両方を空にすることはできません。validations または auditAnnotations のどちらかが少なくとも必要です。 |
|
| AuditAnnotation は、API リクエストの監査アノテーションを生成する方法を表します。 |
|
| failurePolicy は、アドミッションポリシーの失敗を処理する方法を定義します。失敗は、CEL 式の解析エラー、型チェックエラー、ランタイムエラー、および無効な、または誤った設定のポリシー定義またはバインディングによって発生する可能性があります。 存在しない Kind を spec.paramKind が参照している場合、ポリシーは無効です。存在しないリソースを spec.paramRef.name が参照している場合、バインディングは無効です。 failurePolicy は、false と評価される検証の処理方法は定義しません。 failurePolicy が Fail に設定されている場合、ValidatingAdmissionPolicyBinding の validationActions によって失敗の適用方法が定義されます。 許可される値は、Ignore または Fail です。デフォルトは Fail です。
使用可能な列挙値: - |
|
| MatchConditions は、リクエストを検証するために満たす必要がある条件のリストです。matchConditions は、ルール、namespaceSelector、および objectSelector ですでに一致しているリクエストをフィルター処理します。matchConditions の空のリストは、すべてのリクエストに一致します。最大 64 個の一致条件が使用できます。
パラメーターオブジェクトが提供されている場合は、検証式と同じ方法で 正確な一致ロジック (処理順序) は次のとおりです。1. いずれかの matchCondition が FALSE と評価された場合、ポリシーはスキップされます。2. すべての matchConditions が TRUE と評価された場合、ポリシーは評価されます。3. いずれかの matchCondition がエラーと評価された場合 (ただし、FALSE と評価されたものがない場合): - failurePolicy=Fail の場合、リクエストは拒否されます。- failurePolicy=Ignore の場合、ポリシーはスキップされます。 |
|
| MatchCondition は、リクエストが Webhook に送信されるために満たされる必要がある条件を表します。 |
|
| MatchResources は、一致基準を満たしているかどうかに基づいて、オブジェクトに対してアドミッションコントロールポリシーを実行するかどうかを決定します。除外ルールは包含ルールよりも優先されます (リソースが両方に一致する場合は除外されます)。 |
|
| ParamKind は、グループの種類とバージョンのタプルです。 |
|
| Validations には、検証を適用するために使用する CEL 式を含めます。Validations と AuditAnnotations の両方を空にすることはできません。Validations または AuditAnnotations のどちらかが少なくとも必要です。 |
|
| Validation は、検証を適用するために使用する CEL 式を指定します。 |
|
|
Variables には、他の式を構成するのに使用できる変数の定義を含めます。各変数は名前付き CEL 式として定義します。ここで定義した変数は、MatchConditions を除くポリシーの他の式の 変数の式は、リスト内の前に定義された他の変数を参照できますが、後続の変数を参照することはできません。したがって、変数は出現順および非循環的に並べる必要があります。 |
|
| 変数は、構成に使用する変数の定義です。変数は名前付きの式として定義します。 |
5.1.2. .spec.auditAnnotations
- 説明
- auditAnnotations には、API リクエストの監査イベント用の監査アノテーションを生成するために使用する CEL 式を含めます。validations と auditAnnotations の両方を空にすることはできません。validations または auditAnnotations のどちらかが少なくとも必要です。
- 型
-
array
5.1.3. .spec.auditAnnotations[]
- 説明
- AuditAnnotation は、API リクエストの監査アノテーションを生成する方法を表します。
- 型
-
object
- 必須
-
key
-
valueExpression
-
プロパティー | 型 | 説明 |
---|---|---|
|
| key は監査アノテーションキーを指定します。ValidatingAdmissionPolicy の監査アノテーションキーは一意である必要があります。キーは、長さが 63 バイト以内の修飾名 ([A-Za-z0-9][-A-Za-z0-9_.]*) である必要があります。 キーは、ValidatingAdmissionPolicy のリソース名と組み合わされて、監査アノテーションキー "{ValidatingAdmissionPolicy name}/{key}" を構成します。 アドミッション Webhook がこの ValidatingAdmissionPolicy と同じリソース名と同じ監査アノテーションキーを使用する場合、アノテーションキーは同一になります。この場合、キーを使用して書き込まれた最初のアノテーションが監査イベントに含まれ、同じキーを持つ後続のアノテーションがすべて破棄されます。 必須。 |
|
| valueExpression は、監査アノテーション値を生成するために CEL によって評価される式を表します。式は文字列または null 値のいずれかに評価される必要があります。式が文字列に評価された場合、監査アノテーションは文字列値に含まれます。式が null または空の文字列に評価された場合、監査アノテーションは省略されます。valueExpression は 5kb 以下の長さにする必要があります。valueExpression の結果の長さが 10kb を超える場合、10kb に切り捨てられます。 複数の ValidatingAdmissionPolicyBinding リソースが API リクエストと一致する場合、各バインディングに対して valueExpression が評価されます。valueExpression によって生成される一意の値は、すべてコンマ区切りのリストに結合されます。 必須。 |
5.1.4. .spec.matchConditions
- 説明
MatchConditions は、リクエストを検証するために満たす必要がある条件のリストです。matchConditions は、ルール、namespaceSelector、および objectSelector ですでに一致しているリクエストをフィルター処理します。matchConditions の空のリストは、すべてのリクエストに一致します。最大 64 個の一致条件が使用できます。
パラメーターオブジェクトが提供されている場合は、検証式と同じ方法で
params
ハンドルを介してそのパラメーターオブジェクトにアクセスできます。正確な一致ロジック (処理順序) は次のとおりです。1. いずれかの matchCondition が FALSE と評価された場合、ポリシーはスキップされます。2. すべての matchConditions が TRUE と評価された場合、ポリシーは評価されます。3. いずれかの matchCondition がエラーと評価された場合 (ただし、FALSE と評価されたものがない場合): - failurePolicy=Fail の場合、リクエストは拒否されます。- failurePolicy=Ignore の場合、ポリシーはスキップされます。
- 型
-
array
5.1.5. .spec.matchConditions[]
- 説明
- MatchCondition は、リクエストが Webhook に送信されるために満たされる必要がある条件を表します。
- 型
-
object
- 必須
-
name
-
expression
-
プロパティー | 型 | 説明 |
---|---|---|
|
| expression は、CEL によって評価される式を表します。ブール値に対して評価する必要があります。CEL 式は、CEL 変数として整理された AdmissionRequest および Authorizer の内容にアクセスできます。 'object' - 受信リクエストのオブジェクト。DELETE 要求の値は null です。'oldObject' - 既存のオブジェクト。CREATE リクエストの場合、値は null です。'request' - 受付リクエストの属性 (/pkg/apis/admission/types.go#AdmissionRequest)。'authorizer' - CEL オーソライザー。リクエストのプリンシパル (ユーザーまたはサービスアカウント) の承認チェックを実行するために使用される場合があります。https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#Authz 'authorizer.requestResource' ('authorizer' から構築され、リクエストリソースで設定された CEL ResourceCheck) を参照してください。CEL に関するドキュメント: https://kubernetes.io/docs/reference/using-api/cel/ 必須。 |
|
| Name はこの一致条件の識別子であり、MatchConditions の戦略的なマージに使用されるほか、ログ記録用の識別子としても使用されます。適切な名前は、関連する式を説明するものでなければなりません。name は、英数字、'-'、''、または '.' で構成される修飾名で、先頭と末尾が英数字である必要があります (例: 'MyName'、'my.name'、'123-abc'。検証に使用される正規表現は '([A-Za-z0-9][-A-Za-z0-9.]*)?[A-Za-z0-9]')。必要に応じて、DNS サブドメイン接頭辞および '/' を指定します (例: 'example.com/MyName')。 必須。 |
5.1.6. .spec.matchConstraints
- 説明
- MatchResources は、一致基準を満たしているかどうかに基づいて、オブジェクトに対してアドミッションコントロールポリシーを実行するかどうかを決定します。除外ルールは包含ルールよりも優先されます (リソースが両方に一致する場合は除外されます)。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| ExcludeResourceRules は、ValidatingAdmissionPolicy で考慮しないリソース/サブリソースに対する操作を表します。除外ルールは包含ルールよりも優先されます (リソースが両方に一致する場合は除外されます)。 |
|
| NamedRuleWithOperations は、ResourceNames を持つ操作とリソースのタプルです。 |
|
| matchPolicy は、"MatchResources" リストを使用して受信リクエストを照合する方法を定義します。許可される値は "Exact" または "Equivalent" です。
- Exact: 指定されたルールにリクエストが完全に一致する場合にのみ、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更できても、"rules" に含まれているのが
- Equivalent: 別の API グループまたはバージョンを介してでも、ルールにリストされているリソースを変更する場合に、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更でき、"rules" に含まれているのが デフォルトは "Equivalent" です。
使用可能な列挙値: - |
| NamespaceSelector は、オブジェクトの namespace がセレクターと一致するかどうかに基づいて、オブジェクトに対してアドミッションコントロールポリシーを実行するかどうかを決定します。オブジェクト自体が namespace である場合、object.metadata.labels に対して照合が実行されます。オブジェクトがクラスタースコープの別のリソースである場合、ポリシーはスキップされません。 たとえば、"0" または "1" の "runlevel" に関連付けられていない namespace のオブジェクトに対して Webhook を実行するには、"namespaceSelector": { "matchExpressions": [ { "key": "runlevel", "operator": "NotIn", "values": [ "0", "1" ] } ] } のようにセレクターを設定します。 代わりに、"prod" または "staging" の "environment" に関連付けられている namespace のオブジェクトに対してのみポリシーを実行する場合は、"namespaceSelector": { "matchExpressions": [ { "key": "environment", "operator": "In", "values": [ "prod", "staging" ] } ] } のようにセレクターを設定します。 ラベルセレクターのその他の例は、https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ を参照してください。 デフォルトは空の LabelSelector で、すべてに一致します。 | |
| ObjectSelector は、オブジェクトに一致するラベルがあるかどうかに基づいて検証を実行するかどうかを決定します。objectSelector は、cel 検証に送信される oldObject と newObject の両方に対して評価され、いずれかのオブジェクトがセレクターに一致する場合、一致すると見なされます。null オブジェクト (create の場合は oldObject、delete の場合は newObject) またはラベルを持つことができないオブジェクト (DeploymentRollback または PodProxyOptions オブジェクトなど) は一致するとは見なされません。エンドユーザーはラベルを設定することでアドミッション Webhook をスキップできるため、Webhook がオプトインの場合にのみオブジェクトセレクターを使用してください。デフォルトは空の LabelSelector で、すべてに一致します。 | |
|
| ResourceRules は、ValidatingAdmissionPolicy で照合する、リソース/サブリソースに対する操作を表します。ポリシーは、操作が いずれか のルールに一致する場合、その操作を考慮します。 |
|
| NamedRuleWithOperations は、ResourceNames を持つ操作とリソースのタプルです。 |
5.1.7. .spec.matchConstraints.excludeResourceRules
- 説明
- ExcludeResourceRules は、ValidatingAdmissionPolicy で考慮しないリソース/サブリソースに対する操作を表します。除外ルールは包含ルールよりも優先されます (リソースが両方に一致する場合は除外されます)。
- 型
-
array
5.1.8. .spec.matchConstraints.excludeResourceRules[]
- 説明
- NamedRuleWithOperations は、ResourceNames を持つ操作とリソースのタプルです。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| APIGroups は、リソースが属する API グループです。'' はすべてのグループです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| APIVersions は、リソースが属する API バージョンです。'' はすべてのバージョンです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| 操作は、アドミッションフックが気にする操作です - これらすべての操作および追加される将来のアドミッション操作に対して、CREATE、UPDATE、DELETE、CONNECT、または*。'*' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| ResourceNames は、ルールが適用される名前のオプションのホワイトリストです。空のセットは、すべてが許可されていることを意味します。 |
|
| リソースは、このルールが適用されるリソースのリストです。 例: 'Pod' は Pod を意味します。'pods/log' は、Pod のログサブリソースを意味します。'' はすべてのリソースを意味しますが、サブリソースは意味しません。'pods/' は、Pod のすべてのサブリソースを意味します。'/scale' は、すべてのスケールサブリソースを意味します。'/*' は、すべてのリソースとそのサブリソースを意味します。 ワイルドカードが存在する場合、検証ルールはリソースが互いに重複しないことを保証します。 囲んでいるオブジェクトによっては、サブリソースが許可されない場合があります。必須。 |
|
| scope は、このルールのスコープを指定します。有効な値は、"Cluster"、"Namespaced"、および "" "クラスター" とは、クラスタースコープのリソースのみがこのルールに一致することを意味します。名前空間 API オブジェクトはクラスタースコープです。"Namespaced" は、名前空間付きのリソースのみがこのルールに一致することを意味します。"" は、スコープの制限がないことを意味します。サブリソースは、親リソースのスコープと一致します。デフォルトは "*" です。 |
5.1.9. .spec.matchConstraints.resourceRules
- 説明
- ResourceRules は、ValidatingAdmissionPolicy で照合する、リソース/サブリソースに対する操作を表します。ポリシーは、操作が いずれか のルールに一致する場合、その操作を考慮します。
- 型
-
array
5.1.10. .spec.matchConstraints.resourceRules[]
- 説明
- NamedRuleWithOperations は、ResourceNames を持つ操作とリソースのタプルです。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| APIGroups は、リソースが属する API グループです。'' はすべてのグループです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| APIVersions は、リソースが属する API バージョンです。'' はすべてのバージョンです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| 操作は、アドミッションフックが気にする操作です - これらすべての操作および追加される将来のアドミッション操作に対して、CREATE、UPDATE、DELETE、CONNECT、または*。'*' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| ResourceNames は、ルールが適用される名前のオプションのホワイトリストです。空のセットは、すべてが許可されていることを意味します。 |
|
| リソースは、このルールが適用されるリソースのリストです。 例: 'Pod' は Pod を意味します。'pods/log' は、Pod のログサブリソースを意味します。'' はすべてのリソースを意味しますが、サブリソースは意味しません。'pods/' は、Pod のすべてのサブリソースを意味します。'/scale' は、すべてのスケールサブリソースを意味します。'/*' は、すべてのリソースとそのサブリソースを意味します。 ワイルドカードが存在する場合、検証ルールはリソースが互いに重複しないことを保証します。 囲んでいるオブジェクトによっては、サブリソースが許可されない場合があります。必須。 |
|
| scope は、このルールのスコープを指定します。有効な値は、"Cluster"、"Namespaced"、および "" "クラスター" とは、クラスタースコープのリソースのみがこのルールに一致することを意味します。名前空間 API オブジェクトはクラスタースコープです。"Namespaced" は、名前空間付きのリソースのみがこのルールに一致することを意味します。"" は、スコープの制限がないことを意味します。サブリソースは、親リソースのスコープと一致します。デフォルトは "*" です。 |
5.1.11. .spec.paramKind
- 説明
- ParamKind は、グループの種類とバージョンのタプルです。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion は、リソースが属する API グループのバージョンです。形式は "グループ/バージョン" です。必須。 |
|
| Kind は、リソースが属する API の種類です。必須。 |
5.1.12. .spec.validations
- 説明
- Validations には、検証を適用するために使用する CEL 式を含めます。Validations と AuditAnnotations の両方を空にすることはできません。Validations または AuditAnnotations のどちらかが少なくとも必要です。
- 型
-
array
5.1.13. .spec.validations[]
- 説明
- Validation は、検証を適用するために使用する CEL 式を指定します。
- 型
-
object
- 必須
-
expression
-
プロパティー | 型 | 説明 |
---|---|---|
|
| Expression は、CEL によって評価される式を表します。https://github.com/google/cel-spec を参照してください。CEL 式は、以下に示す CEL 変数に整理された API リクエスト/レスポンスの内容と、その他の便利な変数にアクセスできます。 - 'object' - 受信リクエストのオブジェクト。DELETE リクエストの場合、値は null です。- 'oldObject' - 既存のオブジェクト。CREATE リクエストの場合、値は null です。- 'request' - API リクエストの属性 ([ref](/pkg/apis/admission/types.go#AdmissionRequest))。- 'params' - 評価対象のポリシーバインディングによって参照されるパラメーターリソース。ポリシーに ParamKind がある場合にのみ入力されます。- 'namespaceObject' - 受信オブジェクトが属する namespace オブジェクト。クラスタースコープのリソースの場合、値は null です。- 'variables' - 複合変数のマップ (変数名から遅延評価される値へのマップ)。たとえば、'foo' という名前の変数に、'variables.foo' としてアクセスできます。- 'authorizer' - CEL オーソライザー。リクエストのプリンシパル (ユーザーまたはサービスアカウント) の承認チェックを実行するために使用される場合があります。https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#Authz - 'authorizer.requestResource' ('authorizer' から構築され、リクエストリソースで設定された CEL ResourceCheck) を参照してください。
リストタイプが 'set' または 'map' である配列が等値の場合、要素の順序は無視されます (つまり [1, 2] == [2, 1])。x-kubernetes-list-type による配列の連結では、リストタイプのセマンティクスを使用します。- 'set': |
|
| message は、検証が失敗したときに表示されるメッセージを表します。式に改行が含まれている場合、メッセージは必須です。メッセージに改行を含めることはできません。設定されていない場合、メッセージは "failed rule: {Rule}" になります。例: "spec.host に一致するホストを含む URL である必要があります"。式に改行が含まれている場合、メッセージは必須です。メッセージに改行を含めることはできません。設定されていない場合、メッセージは "failed Expression: {Expression}" になります。 |
|
|
messageExpression は、このルールが失敗した場合に返される検証失敗メッセージを評価する CEL 式を宣言します。messageExpression は失敗メッセージとして使用されるため、文字列として評価される必要があります。検証時に message と messageExpression の両方が存在する場合、検証が失敗したときに messageExpression が使用されます。messageExpression の結果としてランタイムエラーが発生した場合、そのランタイムエラーがログに記録され、messageExpression フィールドが設定されていない場合と同様に検証失敗メッセージが生成されます。messageExpression が空の文字列、スペースのみの文字列、または改行を含む文字列に評価された場合も、messageExpression フィールドが設定されていない場合と同様に検証失敗メッセージが生成され、messageExpression が空の文字列/スペースのみの文字列/改行を含む文字列を生成したことがログに記録されます。messageExpression は、'authorizer' と 'authorizer.requestResource' を除く、 |
|
| reason は、この検証が失敗した理由を機械可読形式で表します。これがリスト内の失敗した最初の検証である場合、この理由と対応する HTTP レスポンスコードが、クライアントへの HTTP レスポンスで使用されます。現在サポートされている理由は、"Unauthorized"、"Forbidden"、"Invalid"、"RequestEntityTooLarge" です。設定されていない場合は、クライアントへの応答に StatusReasonInvalid が使用されます。 |
5.1.14. .spec.variables
- 説明
Variables には、他の式を構成するのに使用できる変数の定義を含めます。各変数は名前付き CEL 式として定義します。ここで定義した変数は、MatchConditions を除くポリシーの他の式の
variables
で使用できます。MatchConditions は、ポリシーの他の部分よりも先に評価されるため、除外されます。変数の式は、リスト内の前に定義された他の変数を参照できますが、後続の変数を参照することはできません。したがって、変数は出現順および非循環的に並べる必要があります。
- 型
-
array
5.1.15. .spec.variables[]
- 説明
- 変数は、構成に使用する変数の定義です。変数は名前付きの式として定義します。
- 型
-
object
- 必須
-
name
-
expression
-
プロパティー | 型 | 説明 |
---|---|---|
|
| Expression は、変数の値として評価される式です。CEL 式は、検証の CEL 式と同じ識別子にアクセスできます。 |
|
|
Name は変数の名前です。名前は、有効な CEL 識別子であり、すべての変数の中で一意である必要があります。変数には、 |
5.1.16. .status
- 説明
- ValidatingAdmissionPolicyStatus は、アドミッション検証ポリシーのステータスを表します。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
| conditions は、ポリシーの現在の状態に関する最新の利用可能な観測値を表します。 | |
|
| コントローラーによって監視される世代。 |
|
| TypeChecking には ValidatingAdmissionPolicy 内の式の型チェックの結果が格納されます。 |
5.1.17. .status.typeChecking
- 説明
- TypeChecking には ValidatingAdmissionPolicy 内の式の型チェックの結果が格納されます。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| 各式の型チェックの警告。 |
|
| ExpressionWarning は特定の式を対象とした警告情報です。 |
5.1.18. .status.typeChecking.expressionWarnings
- 説明
- 各式の型チェックの警告。
- 型
-
array
5.1.19. .status.typeChecking.expressionWarnings[]
- 説明
- ExpressionWarning は特定の式を対象とした警告情報です。
- 型
-
object
- 必須
-
fieldRef
-
warning
-
プロパティー | 型 | 説明 |
---|---|---|
|
| 式を参照するフィールドへのパス。たとえば、検証の最初の項目である式への参照は、"spec.validations[0].expression" です。 |
|
| 人間が判読できる形式の型チェック情報の内容。警告の各行には、式のチェック対象の型と、コンパイラーからの型チェックエラーが含まれています。 |
5.2. API エンドポイント
以下の API エンドポイントを利用できます。
/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies
-
DELETE
: ValidatingAdmissionPolicy のコレクションを削除します。 -
GET
: 種類が ValidatingAdmissionPolicy のオブジェクトをリスト表示または監視します。 -
POST
: ValidatingAdmissionPolicy を作成します。
-
/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies
-
GET
: ValidatingAdmissionPolicy のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
-
/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}
-
DELETE
: ValidatingAdmissionPolicy を削除します。 -
GET
: 指定された ValidatingAdmissionPolicy を読み取ります。 -
PATCH
: 指定された ValidatingAdmissionPolicy を部分的に更新します。 -
PUT
: 指定された ValidatingAdmissionPolicy を置き換えます。
-
/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies/{name}
-
GET
: 種類が ValidatingAdmissionPolicy オブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルタリングしてください。
-
/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status
-
GET
: 指定された ValidatingAdmissionPolicy のステータスを読み取ります。 -
PATCH
: 指定された ValidatingAdmissionPolicy のステータスを部分的に更新します。 -
PUT
: 指定された ValidatingAdmissionPolicy のステータスを置き換えます。
-
5.2.1. /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies
- HTTP メソッド
-
DELETE
- 説明
- ValidatingAdmissionPolicy のコレクションを削除します。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 種類が ValidatingAdmissionPolicy のオブジェクトをリスト表示または監視します。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
POST
- 説明
- ValidatingAdmissionPolicy を作成します。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空白 |
5.2.2. /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies
- HTTP メソッド
-
GET
- 説明
- ValidatingAdmissionPolicy のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
5.2.3. /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| ValidatingAdmissionPolicy の名前 |
- HTTP メソッド
-
DELETE
- 説明
- ValidatingAdmissionPolicy を削除します。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 指定された ValidatingAdmissionPolicy を読み取ります。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PATCH
- 説明
- 指定された ValidatingAdmissionPolicy を部分的に更新します。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PUT
- 説明
- 指定された ValidatingAdmissionPolicy を置き換えます。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
5.2.4. /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicies/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| ValidatingAdmissionPolicy の名前 |
- HTTP メソッド
-
GET
- 説明
- 種類が ValidatingAdmissionPolicy のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルタリングしてください。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
5.2.5. /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicies/{name}/status
パラメーター | 型 | 説明 |
---|---|---|
|
| ValidatingAdmissionPolicy の名前 |
- HTTP メソッド
-
GET
- 説明
- 指定された ValidatingAdmissionPolicy のステータスを読み取ります。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PATCH
- 説明
- 指定された ValidatingAdmissionPolicy のステータスを部分的に更新します。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PUT
- 説明
- 指定された ValidatingAdmissionPolicy のステータスを置き換えます。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
第6章 ValidatingAdmissionPolicyBinding [admissionregistration.k8s.io/v1]
- 説明
ValidatingAdmissionPolicyBinding は、ValidatingAdmissionPolicy をパラメーター化されたリソースにバインドします。ValidatingAdmissionPolicyBinding とパラメーター CRD の組み合わせにより、クラスター管理者がクラスターのポリシーを設定する方法が定義されます。
特定のアドミッションリクエストに対して、各バインディングによりポリシーが N 回評価されます。N は、パラメーターを使用しないポリシー/バインディングの場合は 1、それ以外の場合はバインディングによって選択されるパラメーターの数です。
ポリシーの CEL 式では、計算された CEL コストが CEL 最大予算を下回る必要があります。ポリシーの各評価には、独立した CEL コスト予算が与えられます。ポリシー、バインディング、またはパラメーターを追加/削除しても、特定の (ポリシー、バインディング、パラメーターの) 組み合わせがそれぞれの CEL 予算内に収まるかどうかには影響しません。
- 型
-
object
6.1. 仕様
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できる場合があります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準のオブジェクトメタデータ。詳細は https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。 | |
|
| ValidatingAdmissionPolicyBindingSpec は、ValidatingAdmissionPolicyBinding の仕様です。 |
6.1.1. .spec
- 説明
- ValidatingAdmissionPolicyBindingSpec は、ValidatingAdmissionPolicyBinding の仕様です。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| MatchResources は、一致基準を満たしているかどうかに基づいて、オブジェクトに対してアドミッションコントロールポリシーを実行するかどうかを決定します。除外ルールは包含ルールよりも優先されます (リソースが両方に一致する場合は除外されます)。 |
|
| ParamRef は、ポリシーバインディングによって適用されるルールの式への入力として使用するパラメーターを検索する方法を表します。 |
|
| PolicyName は、ValidatingAdmissionPolicyBinding のバインド先の ValidatingAdmissionPolicy 名を参照します。参照されるリソースが存在しない場合、このバインディングは無効とみなされ、無視されます。必須です。 |
|
| validationActions は、参照される ValidatingAdmissionPolicy の検証を適用する方法を宣言します。検証が false と評価された場合、これらのアクションに従って、検証が常に適用されます。 ValidatingAdmissionPolicy の FailurePolicy によって定義された失敗は、FailurePolicy が Fail に設定されている場合にのみ、これらのアクションに従って適用されます。それ以外の場合、失敗は無視されます。これには、コンパイルエラー、ランタイムエラー、ポリシーの誤った設定が含まれます。 validationActions はアクション値のセットとして宣言されます。順序は関係ありません。validationActions に同じアクションを重複して含めることはできません。 サポートされているアクション値は次のとおりです。 "Deny" を指定すると、検証が失敗した場合にリクエストが拒否されます。 "Warn" を指定すると、警告コード 299 とともに、HTTP 警告ヘッダーで検証の失敗がリクエストクライアントに報告されます。許可されたアドミッションレスポンスと拒否されたアドミッションレスポンスの両方に対して警告を送信できます。
"Audit" を指定すると、リクエストに対して公開される監査イベントに検証の失敗が含まれます。監査イベントには、 クライアントは、認識されない値を無視して追加の値を処理することを想定する必要があります。 "Deny" と "Warn" を一緒に使用することはできません。API レスポンスボディーと HTTP 警告ヘッダーで検証の失敗が余計に重複するためです。 必須。 |
6.1.2. .spec.matchResources
- 説明
- MatchResources は、一致基準を満たしているかどうかに基づいて、オブジェクトに対してアドミッションコントロールポリシーを実行するかどうかを決定します。除外ルールは包含ルールよりも優先されます (リソースが両方に一致する場合は除外されます)。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| ExcludeResourceRules は、ValidatingAdmissionPolicy で考慮しないリソース/サブリソースに対する操作を表します。除外ルールは包含ルールよりも優先されます (リソースが両方に一致する場合は除外されます)。 |
|
| NamedRuleWithOperations は、ResourceNames を持つ操作とリソースのタプルです。 |
|
| matchPolicy は、"MatchResources" リストを使用して受信リクエストを照合する方法を定義します。許可される値は "Exact" または "Equivalent" です。
- Exact: 指定されたルールにリクエストが完全に一致する場合にのみ、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更できても、"rules" に含まれているのが
- Equivalent: 別の API グループまたはバージョンを介してでも、ルールにリストされているリソースを変更する場合に、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更でき、"rules" に含まれているのが デフォルトは "Equivalent" です。
使用可能な列挙値: - |
| NamespaceSelector は、オブジェクトの namespace がセレクターと一致するかどうかに基づいて、オブジェクトに対してアドミッションコントロールポリシーを実行するかどうかを決定します。オブジェクト自体が namespace である場合、object.metadata.labels に対して照合が実行されます。オブジェクトがクラスタースコープの別のリソースである場合、ポリシーはスキップされません。 たとえば、"0" または "1" の "runlevel" に関連付けられていない namespace のオブジェクトに対して Webhook を実行するには、"namespaceSelector": { "matchExpressions": [ { "key": "runlevel", "operator": "NotIn", "values": [ "0", "1" ] } ] } のようにセレクターを設定します。 代わりに、"prod" または "staging" の "environment" に関連付けられている namespace のオブジェクトに対してのみポリシーを実行する場合は、"namespaceSelector": { "matchExpressions": [ { "key": "environment", "operator": "In", "values": [ "prod", "staging" ] } ] } のようにセレクターを設定します。 ラベルセレクターのその他の例は、https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ を参照してください。 デフォルトは空の LabelSelector で、すべてに一致します。 | |
| ObjectSelector は、オブジェクトに一致するラベルがあるかどうかに基づいて検証を実行するかどうかを決定します。objectSelector は、cel 検証に送信される oldObject と newObject の両方に対して評価され、いずれかのオブジェクトがセレクターに一致する場合、一致すると見なされます。null オブジェクト (create の場合は oldObject、delete の場合は newObject) またはラベルを持つことができないオブジェクト (DeploymentRollback または PodProxyOptions オブジェクトなど) は一致するとは見なされません。エンドユーザーはラベルを設定することでアドミッション Webhook をスキップできるため、Webhook がオプトインの場合にのみオブジェクトセレクターを使用してください。デフォルトは空の LabelSelector で、すべてに一致します。 | |
|
| ResourceRules は、ValidatingAdmissionPolicy で照合する、リソース/サブリソースに対する操作を表します。ポリシーは、操作が いずれか のルールに一致する場合、その操作を考慮します。 |
|
| NamedRuleWithOperations は、ResourceNames を持つ操作とリソースのタプルです。 |
6.1.3. .spec.matchResources.excludeResourceRules
- 説明
- ExcludeResourceRules は、ValidatingAdmissionPolicy で考慮しないリソース/サブリソースに対する操作を表します。除外ルールは包含ルールよりも優先されます (リソースが両方に一致する場合は除外されます)。
- 型
-
array
6.1.4. .spec.matchResources.excludeResourceRules[]
- 説明
- NamedRuleWithOperations は、ResourceNames を持つ操作とリソースのタプルです。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| APIGroups は、リソースが属する API グループです。'' はすべてのグループです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| APIVersions は、リソースが属する API バージョンです。'' はすべてのバージョンです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| 操作は、アドミッションフックが気にする操作です - これらすべての操作および追加される将来のアドミッション操作に対して、CREATE、UPDATE、DELETE、CONNECT、または*。'*' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| ResourceNames は、ルールが適用される名前のオプションのホワイトリストです。空のセットは、すべてが許可されていることを意味します。 |
|
| リソースは、このルールが適用されるリソースのリストです。 例: 'Pod' は Pod を意味します。'pods/log' は、Pod のログサブリソースを意味します。'' はすべてのリソースを意味しますが、サブリソースは意味しません。'pods/' は、Pod のすべてのサブリソースを意味します。'/scale' は、すべてのスケールサブリソースを意味します。'/*' は、すべてのリソースとそのサブリソースを意味します。 ワイルドカードが存在する場合、検証ルールはリソースが互いに重複しないことを保証します。 囲んでいるオブジェクトによっては、サブリソースが許可されない場合があります。必須。 |
|
| scope は、このルールのスコープを指定します。有効な値は、"Cluster"、"Namespaced"、および "" "クラスター" とは、クラスタースコープのリソースのみがこのルールに一致することを意味します。名前空間 API オブジェクトはクラスタースコープです。"Namespaced" は、名前空間付きのリソースのみがこのルールに一致することを意味します。"" は、スコープの制限がないことを意味します。サブリソースは、親リソースのスコープと一致します。デフォルトは "*" です。 |
6.1.5. .spec.matchResources.resourceRules
- 説明
- ResourceRules は、ValidatingAdmissionPolicy で照合する、リソース/サブリソースに対する操作を表します。ポリシーは、操作が いずれか のルールに一致する場合、その操作を考慮します。
- 型
-
array
6.1.6. .spec.matchResources.resourceRules[]
- 説明
- NamedRuleWithOperations は、ResourceNames を持つ操作とリソースのタプルです。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| APIGroups は、リソースが属する API グループです。'' はすべてのグループです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| APIVersions は、リソースが属する API バージョンです。'' はすべてのバージョンです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| 操作は、アドミッションフックが気にする操作です - これらすべての操作および追加される将来のアドミッション操作に対して、CREATE、UPDATE、DELETE、CONNECT、または*。'*' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| ResourceNames は、ルールが適用される名前のオプションのホワイトリストです。空のセットは、すべてが許可されていることを意味します。 |
|
| リソースは、このルールが適用されるリソースのリストです。 例: 'Pod' は Pod を意味します。'pods/log' は、Pod のログサブリソースを意味します。'' はすべてのリソースを意味しますが、サブリソースは意味しません。'pods/' は、Pod のすべてのサブリソースを意味します。'/scale' は、すべてのスケールサブリソースを意味します。'/*' は、すべてのリソースとそのサブリソースを意味します。 ワイルドカードが存在する場合、検証ルールはリソースが互いに重複しないことを保証します。 囲んでいるオブジェクトによっては、サブリソースが許可されない場合があります。必須。 |
|
| scope は、このルールのスコープを指定します。有効な値は、"Cluster"、"Namespaced"、および "" "クラスター" とは、クラスタースコープのリソースのみがこのルールに一致することを意味します。名前空間 API オブジェクトはクラスタースコープです。"Namespaced" は、名前空間付きのリソースのみがこのルールに一致することを意味します。"" は、スコープの制限がないことを意味します。サブリソースは、親リソースのスコープと一致します。デフォルトは "*" です。 |
6.1.7. .spec.paramRef
- 説明
- ParamRef は、ポリシーバインディングによって適用されるルールの式への入力として使用するパラメーターを検索する方法を表します。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| name は、参照されるリソースの名前です。
|
|
|
namespace は、参照されるリソースの namespace です。パラメーターの検索を特定の namespace に制限できます。
ポリシーで namespace スコープの
-
- |
|
|
許可される値は 必須 |
| selector を使用すると、ラベルに基づいて複数のパラメーターオブジェクトを一致させることができます。ParamKind のすべてのリソースに一致させるには、selector: {} を指定します。 複数のパラメーターが見つかった場合、それらはすべてポリシー式で評価され、結果が AND 演算されます。
|
6.2. API エンドポイント
以下の API エンドポイントを利用できます。
/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings
-
DELETE
: ValidatingAdmissionPolicyBinding のコレクションを削除します。 -
GET
: 種類が ValidatingAdmissionPolicyBinding のオブジェクトをリスト表示または監視します。 -
POST
: ValidatingAdmissionPolicyBinding を作成します。
-
/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings
-
GET
: ValidatingAdmissionPolicyBinding のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
-
/apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}
-
DELETE
: ValidatingAdmissionPolicyBinding を削除します。 -
GET
: 指定された ValidatingAdmissionPolicyBinding を読み取ります。 -
PATCH
: 指定された ValidatingAdmissionPolicyBinding を部分的に更新します。 -
PUT
: 指定された ValidatingAdmissionPolicyBinding を置き換えます。
-
/apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings/{name}
-
GET
: 種類が ValidatingAdmissionPolicyBinding のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルタリングしてください。
-
6.2.1. /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings
- HTTP メソッド
-
DELETE
- 説明
- ValidatingAdmissionPolicyBinding のコレクションを削除します。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 種類が ValidatingAdmissionPolicyBinding のオブジェクトをリスト表示または監視します。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
POST
- 説明
- ValidatingAdmissionPolicyBinding を作成します。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空白 |
6.2.2. /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings
- HTTP メソッド
-
GET
- 説明
- ValidatingAdmissionPolicyBinding のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
6.2.3. /apis/admissionregistration.k8s.io/v1/validatingadmissionpolicybindings/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| ValidatingAdmissionPolicyBinding の名前 |
- HTTP メソッド
-
DELETE
- 説明
- ValidatingAdmissionPolicyBinding を削除します。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 指定された ValidatingAdmissionPolicyBinding を読み取ります。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PATCH
- 説明
- 指定された ValidatingAdmissionPolicyBinding を部分的に更新します。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PUT
- 説明
- 指定された ValidatingAdmissionPolicyBinding を置き換えます。
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
6.2.4. /apis/admissionregistration.k8s.io/v1/watch/validatingadmissionpolicybindings/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| ValidatingAdmissionPolicyBinding の名前 |
- HTTP メソッド
-
GET
- 説明
- 種類が ValidatingAdmissionPolicyBinding のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルタリングしてください。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
第7章 ValidatingWebhookConfiguration [admissionregistration.k8s.io/v1]
- 説明
- ValidatingWebhookConfiguration は、変更せずに受け入れまたは拒否し、反対する Webhook の設定と承認を説明します。
- 型
-
object
7.1. 仕様
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できる場合があります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準のオブジェクトメタデータ。詳細は https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。 | |
|
| Webhook は、Webhook と影響を受けるリソースおよび操作のリストです。 |
|
| ValidatingWebhook は、アドミッション Webhook と、それが適用されるリソースと操作を説明しています。 |
7.1.1. .webhooks
- 説明
- Webhook は、Webhook と影響を受けるリソースおよび操作のリストです。
- 型
-
array
7.1.2. .webhooks[]
- 説明
- ValidatingWebhook は、アドミッション Webhook と、それが適用されるリソースと操作を説明しています。
- 型
-
object
- 必須
-
name
-
clientConfig
-
sideEffects
-
admissionReviewVersions
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
AdmissionReviewVersions は、Webhook が期待する優先 |
|
| WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています |
|
| FailurePolicy は、アドミッションエンドポイントからの認識されないエラーの処理方法を定義します。許可される値は Ignore または Fail です。デフォルトは Fail です。
使用可能な列挙値: - |
|
| MatchConditions は、この Webhook にリクエストを送信するために満たす必要がある条件のリストです。matchConditions は、ルール、namespaceSelector、および objectSelector ですでに一致しているリクエストをフィルター処理します。matchConditions の空のリストは、すべてのリクエストに一致します。最大 64 個の一致条件が使用できます。 正確な一致ロジック (処理順序) は次のとおりです。1. いずれかの matchCondition が FALSE と評価された場合、Webhook はスキップされます。2. すべての matchConditions が TRUE と評価された場合、Webhook が呼び出されます。3. いずれかの matchCondition がエラーと評価された場合 (ただし、どれも FALSE ではない): - failurePolicy=Fail の場合、リクエストは拒否されます。- failurePolicy=Ignore の場合、エラーは無視され、Webhook はスキップされます。 |
|
| MatchCondition は、リクエストが Webhook に送信されるために満たされる必要がある条件を表します。 |
|
| matchPolicy は、"rules" リストを使用して受信リクエストを照合する方法を定義します。許可される値は "Exact" または "Equivalent" です。
- Exact: 指定されたルールにリクエストが完全に一致する場合にのみ、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更できても、"rules" に含まれているのが
- Equivalent: 別の API グループまたはバージョンを介してでも、ルールにリストされているリソースを変更する場合に、リクエストを一致させます。たとえば、apps/v1、apps/v1beta1、extensions/v1beta1 を介してデプロイメントを変更でき、"rules" に含まれているのが デフォルトは "Equivalent" です。
使用可能な列挙値: - |
|
| アドミッション Webhook の名前。名前は完全修飾する必要があります。たとえば、imagepolicy.kubernetes.io です。ここで、"imagepolicy" は Webhook の名前であり、kubernetes.io は組織の名前です。必須。 |
| 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 は、オブジェクトに一致するラベルがあるかどうかに基づいて、Webhook を実行するかどうかを決定します。objectSelector は、Webhook に送信される oldObject と newObject の両方に対して評価され、いずれかのオブジェクトがセレクターと一致する場合に一致すると見なされます。null オブジェクト (create の場合は oldObject、delete の場合は newObject) またはラベルを持つことができないオブジェクト (DeploymentRollback または PodProxyOptions オブジェクトなど) は一致するとは見なされません。エンドユーザーはラベルを設定することでアドミッション Webhook をスキップできるため、Webhook がオプトインの場合にのみオブジェクトセレクターを使用してください。デフォルトは空の LabelSelector で、すべてに一致します。 | |
|
| Rules は、Webhook が考慮するリソース/サブリソースに対する操作を表します。Webhook は、操作が いずれか のルールに一致する場合、その操作を考慮します。ただし、ValidatingAdmissionWebhooks と MutatingAdmissionWebhooks が、プラグインを完全に無効にしないと回復できない状態にクラスターを置くことを防ぐために、ValidatingAdmissionWebhooks と MutatingAdmissionWebhook は、ValidatingWebhookConfiguration オブジェクトと MutatingWebhookConfiguration オブジェクトの認可要求で呼び出されることはありません。 |
|
| RuleWithOperations は、操作とリソースのタプルです。すべてのタプル拡張が有効であることを確認することを推奨します。 |
|
| SideEffects は、この Webhook に副作用があるかどうかを示します。許容される値は、None、NoneOnDryRun です (v1beta1 を介して作成された Webhook は、Some または Unknown を指定する場合もあります)。副作用のある Webhook は、調整システムを実装する必要があります。これは、リクエストがアドミッションチェーンの将来のステップで拒否される可能性があるため、副作用を元に戻す必要があるためです。dryRun 属性を持つリクエストは、sideEffects==Unknown または Some の Webhook と一致する場合に自動拒否されます。
使用可能な列挙値: - |
|
| TimeoutSeconds は、この Webhook のタイムアウトを指定します。タイムアウトが経過すると、Webhook 呼び出しは無視されるか、失敗ポリシーに基づいて API 呼び出しが失敗します。タイムアウト値は 1〜30 秒である必要があります。デフォルトは 10 秒です。 |
7.1.3. .webhooks[].clientConfig
- 説明
- WebhookClientConfig には、Webhook との TLS 接続を確立するための情報が含まれています
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
|
|
|
| ServiceReference は、Service.legacy.k8s.io への参照を保持します |
|
|
この Webhook を呼び出す必要がある可能性のある apiserver を実行するすべてのホストでこの Webhook を実行するように細心の注意を払わない限り、 スキームは "https" である必要があります。URL は "https://" で始まる必要があります。 パスはオプションであり、存在する場合は、URL で許可される任意の文字列にすることができます。パスを使用して、クラスター識別子などの任意の文字列を Webhook に渡すことができます。 ユーザーまたは基本認証 ("user:password@" など) を使用することは許可されていません。フラグメント ("#…") とクエリーパラメーター ("?…") も許可されていません。 |
7.1.4. .webhooks[].clientConfig.service
- 説明
- ServiceReference は、Service.legacy.k8s.io への参照を保持します
- 型
-
object
- 必須
-
namespace
-
name
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
指定されている場合、Webhook をホストしているサービスのポート。下位互換性のために、デフォルトは 443 です。 |
7.1.5. .webhooks[].matchConditions
- 説明
MatchConditions は、この Webhook にリクエストを送信するために満たす必要がある条件のリストです。matchConditions は、ルール、namespaceSelector、および objectSelector ですでに一致しているリクエストをフィルター処理します。matchConditions の空のリストは、すべてのリクエストに一致します。最大 64 個の一致条件が使用できます。
正確な一致ロジック (処理順序) は次のとおりです。1. いずれかの matchCondition が FALSE と評価された場合、Webhook はスキップされます。2. すべての matchConditions が TRUE と評価された場合、Webhook が呼び出されます。3. いずれかの matchCondition がエラーと評価された場合 (ただし、どれも FALSE ではない): - failurePolicy=Fail の場合、リクエストは拒否されます。- failurePolicy=Ignore の場合、エラーは無視され、Webhook はスキップされます。
- 型
-
array
7.1.6. .webhooks[].matchConditions[]
- 説明
- MatchCondition は、リクエストが Webhook に送信されるために満たされる必要がある条件を表します。
- 型
-
object
- 必須
-
name
-
expression
-
プロパティー | 型 | 説明 |
---|---|---|
|
| expression は、CEL によって評価される式を表します。ブール値に対して評価する必要があります。CEL 式は、CEL 変数として整理された AdmissionRequest および Authorizer の内容にアクセスできます。 'object' - 受信リクエストのオブジェクト。DELETE 要求の値は null です。'oldObject' - 既存のオブジェクト。CREATE リクエストの場合、値は null です。'request' - 受付リクエストの属性 (/pkg/apis/admission/types.go#AdmissionRequest)。'authorizer' - CEL オーソライザー。リクエストのプリンシパル (ユーザーまたはサービスアカウント) の承認チェックを実行するために使用される場合があります。https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#Authz 'authorizer.requestResource' ('authorizer' から構築され、リクエストリソースで設定された CEL ResourceCheck) を参照してください。CEL に関するドキュメント: https://kubernetes.io/docs/reference/using-api/cel/ 必須。 |
|
| Name はこの一致条件の識別子であり、MatchConditions の戦略的なマージに使用されるほか、ログ記録用の識別子としても使用されます。適切な名前は、関連する式を説明するものでなければなりません。name は、英数字、'-'、''、または '.' で構成される修飾名で、先頭と末尾が英数字である必要があります (例: 'MyName'、'my.name'、'123-abc'。検証に使用される正規表現は '([A-Za-z0-9][-A-Za-z0-9.]*)?[A-Za-z0-9]')。必要に応じて、DNS サブドメイン接頭辞および '/' を指定します (例: 'example.com/MyName')。 必須。 |
7.1.7. .webhooks[].rules
- 説明
- Rules は、Webhook が考慮するリソース/サブリソースに対する操作を表します。Webhook は、操作が いずれか のルールに一致する場合、その操作を考慮します。ただし、ValidatingAdmissionWebhooks と MutatingAdmissionWebhooks が、プラグインを完全に無効にしないと回復できない状態にクラスターを置くことを防ぐために、ValidatingAdmissionWebhooks と MutatingAdmissionWebhook は、ValidatingWebhookConfiguration オブジェクトと MutatingWebhookConfiguration オブジェクトの認可要求で呼び出されることはありません。
- 型
-
array
7.1.8. .webhooks[].rules[]
- 説明
- RuleWithOperations は、操作とリソースのタプルです。すべてのタプル拡張が有効であることを確認することを推奨します。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| APIGroups は、リソースが属する API グループです。'' はすべてのグループです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| APIVersions は、リソースが属する API バージョンです。'' はすべてのバージョンです。もしも '' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| 操作は、アドミッションフックが気にする操作です - これらすべての操作および追加される将来のアドミッション操作に対して、CREATE、UPDATE、DELETE、CONNECT、または*。'*' が存在する場合、スライスの長さは 1 でなければなりません。必須。 |
|
| リソースは、このルールが適用されるリソースのリストです。 例: 'Pod' は Pod を意味します。'pods/log' は、Pod のログサブリソースを意味します。'' はすべてのリソースを意味しますが、サブリソースは意味しません。'pods/' は、Pod のすべてのサブリソースを意味します。'/scale' は、すべてのスケールサブリソースを意味します。'/*' は、すべてのリソースとそのサブリソースを意味します。 ワイルドカードが存在する場合、検証ルールはリソースが互いに重複しないことを保証します。 囲んでいるオブジェクトによっては、サブリソースが許可されない場合があります。必須。 |
|
| scope は、このルールのスコープを指定します。有効な値は、"Cluster"、"Namespaced"、および "" "クラスター" とは、クラスタースコープのリソースのみがこのルールに一致することを意味します。名前空間 API オブジェクトはクラスタースコープです。"Namespaced" は、名前空間付きのリソースのみがこのルールに一致することを意味します。"" は、スコープの制限がないことを意味します。サブリソースは、親リソースのスコープと一致します。デフォルトは "*" です。 |
7.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' パラメーターで単一の項目にフィルター処理します。
-
7.2.1. /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations
- HTTP メソッド
-
DELETE
- 説明
- ValidatingWebhookConfiguration のコレクションを削除します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 種類のオブジェクトをリスト表示または監視する ValidatingWebhookConfiguration
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
POST
- 説明
- ValidatingWebhookConfiguration を作成します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
202 - Accepted | |
401 - Unauthorized | 空白 |
7.2.2. /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations
- HTTP メソッド
-
GET
- 説明
- ValidatingWebhookConfiguration のリストに対する個々の変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用してください。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
7.2.3. /apis/admissionregistration.k8s.io/v1/validatingwebhookconfigurations/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| ValidatingWebhookConfiguration の名前 |
- HTTP メソッド
-
DELETE
- 説明
- ValidatingWebhookConfiguration を削除します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空白 |
- HTTP メソッド
-
GET
- 説明
- 指定された ValidatingWebhookConfiguration を読み取ります
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PATCH
- 説明
- 指定された ValidatingWebhookConfiguration を部分的に更新します
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
- HTTP メソッド
-
PUT
- 説明
- 指定された ValidatingWebhookConfiguration を置き換えます
パラメーター | 型 | 説明 |
---|---|---|
|
| これが指定されている場合は、変更を永続化してはならないことを示します。dryRun ディレクティブが無効な場合や、認識されない場合はエラーの応答が返され、その要求に対する処理はこれ以上行われません。有効な値は All で、すべてのドライランステージが処理されます。 |
|
| fieldValidation は、不明なフィールドまたは重複したフィールドを含むリクエスト (POST/PUT/PATCH) 内のオブジェクトを処理する方法をサーバーに指示します。有効な値は Ignore です。オブジェクトからサイレントにドロップされた不明なフィールドを無視し、デコーダーが検出した最後の重複フィールドを除くすべてを無視します。これは、v1.23 より前のデフォルトの動作です。- Warn: オブジェクトから削除された不明なフィールドごと、および検出された重複フィールドごとに、標準の警告応答ヘッダーを介して警告が送信されます。他にエラーがなければ要求は成功し、重複するフィールドの最後のものだけを保持します。これは v1.23 以降のデフォルトです。- Strict: 不明なフィールドがオブジェクトから削除される場合、または重複フィールドが存在する場合、リクエストは BadRequest エラーで失敗します。サーバーから返されるエラーには、検出されたすべての不明な重複フィールドが含まれます。 |
パラメーター | 型 | 説明 |
---|---|---|
|
HTTP コード | レスポンスのボディー |
---|---|
200 - OK | |
201 - Created | |
401 - Unauthorized | 空白 |
7.2.4. /apis/admissionregistration.k8s.io/v1/watch/validatingwebhookconfigurations/{name}
パラメーター | 型 | 説明 |
---|---|---|
|
| ValidatingWebhookConfiguration の名前 |
- HTTP メソッド
-
GET
- 説明
- ValidatingWebhookConfiguration の種類のオブジェクトへの変更を監視します。非推奨: 代わりに、リスト操作で 'watch' パラメーターを使用し、'fieldSelector' パラメーターで単一の項目にフィルター処理します。
HTTP コード | レスポンスのボディー |
---|---|
200 - OK |
|
401 - Unauthorized | 空白 |
Legal Notice
Copyright © 2024 Red Hat, Inc.
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.