🎯 レッスンの目標_
ValidatingAdmissionPolicy GA K8s 1.30 を理解し、Webhook サーバーを使用せずに CEL ポリシーを作成し、OPA/ゲートキーパーが必要な場合を認識します。
1.従来のアドミッション Webhook の問題
Webhook ベースのアドミッション (OPA/ゲートキーパー、Kyverno) には欠点があります:
- ネットワーク オーバーヘッド: 各 API リクエストは Webhook サービスへの HTTP 呼び出しを行う必要があります
- 可用性の依存関係: Webhook サービスがダウンした場合 → API リクエストが失敗した場合
- 運用上の負担: Webhook の展開、TLS 証明書を維持する必要がある
- レイテンシ: すべての API 呼び出しにレイテンシを追加
2. ValidatingAdmissionPolicy — 組み込み、Webhook なし
K8s 1.30 のValidatingAdmissionPolicy GA では、__HTMLTAG_96___CEL (共通表現言語).
を使用して、検証ポリシーを API サーバーに直接記述することができます。- API サーバー プロセスで実行 — ネットワーク オーバーヘッドなし
- 追加のサービスを展開する必要はありません
- 単一障害点はありません__HTMLTAG_105___
- Webhook よりも約 10 倍速い
3. CEL の基本
CEL は、シンプルで安全な式言語です (ループや副作用はありません)。
___コードブロック_0___4. AdmissionPolicy 構造の検証
___コードブロック_1___5. AdmissionPolicyBinding
の検証中 ___コードブロック_2___6.共通ポリシー
6.1 「最新」タグが付いたブロック画像
___コードブロック_3___6.2 必要なリソース制限
___コードブロック_4___6.3 ラベルが必要
___コードブロック_5___6.4 レプリカの制限
___コードブロック_6___6.5 権限昇格の防止__HTMLTAG_128___ ___コードブロック_7___
7.パラメータを含むポリシー
___コードブロック_8___8.比較: ValidatingAdmissionPolicy と OPA/ゲートキーパー
___コードブロック_9___OPA/ゲートキーパーは、 の場合に引き続き必要です: 変更ポリシー (フィールドの自動挿入) が必要な場合、CEL サポートよりも複雑なポリシー ロジックが必要な場合、または変更 Webhook が必要な場合。
概要
- ValidatingAdmissionPolicy GA K8s 1.30: 組み込み、Webhook は不要
- CEL: ポリシー ロジック用の安全な式言語
- アクティブ化するにはバインディングが必要です: ValidatingAdmissionPolicyBinding
- アクション: 拒否、監査、警告
- パラメータ (ConfigMap) を使用してポリシーを再利用
- OPA/ゲートキーパー: 変化する複雑な rego ロジックには引き続き必要