Admission Webhook を実装する
証明書の作成
api-server から webhook へのリクエストは HTTPS のため、TLS証明書を作る必要がある
実際の運用では、 cert-manager とかで管理するのが良さそう
cert-manager のデプロイは kubebuilder が生成するマニフェストを参考にするのが良さそう?
とりあえず cfssl とかで作る
Mutating webhook のレスポンスとしては、JsonPatch を書く
kubewebhook
Mutation, Validation 部分の実装に集中できる
ただ、kubewebhook 自体の実装も大きくない。使わずに一から書いてもそれほど大変ではない
これ自体は Vault からシークレットを取得するためのもの
Mutating Webhook であり、実装もシンプルなので参考するのに良さそう
kubebuilder
kubebuilder にも Admission Webhook を実装する機能がある
ただこれは、カスタムリソースに対する Admission Webhook を実装するのを前提にしている気がする