9.4. Webhook 受付プラグインのタイプ
クラスター管理者は、API サーバーの受付チェーンで変更用の受付プラグインまたは検証用の受付プラグインを使用して Webhook サーバーを呼び出すことができます。
9.4.1. 受付プラグインの変更 リンクのコピーリンクがクリップボードにコピーされました!
変更用の受付プラグインは、受付プロセスの変更フェーズで起動します。これにより、リソースコンテンツが永続化する前にそれらを変更できます。変更用の受付プラグインで呼び出し可能な Webhook の一例として、Pod ノードセレクター機能があります。この機能は namespace でアノテーションを使用してラベルセレクターを検索し、これを Pod 仕様に追加します。
変更用の受付プラグインの設定例:
- 1
- 変更用の受付プラグイン設定を指定します。
- 2
MutatingWebhookConfigurationオブジェクトの名前。<webhook_name>を適切な値に置き換えます。- 3
- 呼び出す Webhook の名前。
<webhook_name>を適切な値に置き換えます。 - 4
- Webhook サーバーに接続し、これを信頼し、データをこれに送信する方法に関する情報です。
- 5
- フロントエンドサービスが作成される namespace。
- 6
- フロントエンドサービスの名前。
- 7
- 受付要求に使用される Webhook URL。
<webhook_url>を適切な値に置き換えます。 - 8
- Webhook サーバーで使用されるサーバー証明書に署名する PEM でエンコーディングされた CA 証明書。
<ca_signing_certificate>を base64 形式の適切な証明書に置き換えます。 - 9
- API サーバーがこの Webhook 受付プラグインを使用する必要があるタイミングを定義するルール。
- 10
- API サーバーをトリガーしてこの Webhook 受付プラグインを呼び出す 1 つ以上の操作。使用できる値は、
create、update、delete、またはconnectです。<operation>および<resource>を適切な値に置き換えます。 - 11
- Webhook サーバーが利用できない場合にポリシーを実行する方法を指定します。
<policy>をIgnore(失敗した場合に要求を無条件で受け入れる) またはFail(失敗した要求を拒否する) のいずれかに置き換えます。Ignoreを使用すると、すべてのクライアントで予測できない動作が生じる可能性があります。
OpenShift Container Platform 4.12 では、ユーザーによって作成されるオブジェクト、または変更用の受付プラグインを使用するコントロールループは、初回の要求で設定される値が上書きされる場合などに予期しない結果を返す場合があるため、推奨されていません。
9.4.2. 受付プラグインの検証 リンクのコピーリンクがクリップボードにコピーされました!
検証用の受付プラグインは、受付プロセスの検証フェーズ中に呼び出されます。このフェーズでは、特定 API リソースの変更がない項目の実施を可能にし、リソースが再び変更されないようにすることができます。Pod ノードセレクターは、すべての nodeSelector フィールドが namespace のノードセレクターの制限の制約を受けるようにするために、検証用の受付プラグインによって呼び出される Webhook の一例です。
検証用の受付プラグイン設定のサンプル
- 1
- 検証用の受付プラグイン設定を指定します。
- 2
ValidatingWebhookConfigurationオブジェクトの名前。<webhook_name>を適切な値に置き換えます。- 3
- 呼び出す Webhook の名前。
<webhook_name>を適切な値に置き換えます。 - 4
- Webhook サーバーに接続し、これを信頼し、データをこれに送信する方法に関する情報です。
- 5
- フロントエンドサービスが作成される namespace。
- 6
- フロントエンドサービスの名前。
- 7
- 受付要求に使用される Webhook URL。
<webhook_url>を適切な値に置き換えます。 - 8
- Webhook サーバーで使用されるサーバー証明書に署名する PEM でエンコーディングされた CA 証明書。
<ca_signing_certificate>を base64 形式の適切な証明書に置き換えます。 - 9
- API サーバーがこの Webhook 受付プラグインを使用する必要があるタイミングを定義するルール。
- 10
- API サーバーをトリガーしてこの Webhook 受付プラグインを呼び出す 1 つ以上の操作。使用できる値は、
create、update、delete、またはconnectです。<operation>および<resource>を適切な値に置き換えます。 - 11
- Webhook サーバーが利用できない場合にポリシーを実行する方法を指定します。
<policy>をIgnore(失敗した場合に要求を無条件で受け入れる) またはFail(失敗した要求を拒否する) のいずれかに置き換えます。Ignoreを使用すると、すべてのクライアントで予測できない動作が生じる可能性があります。