【カイバーノ】

Kyverno とは?

💡 Kubernetesの門番。YAMLで書いたルールが、クラスタへの入り口を守る。
📌 このページのポイント
Kyverno — KubernetesのPolicyエンジン kubectl apply リソース Kyverno Admission Webhook ポリシー評価 Validate / Mutate / Generate ❌ 拒否 Kubernetes API Server ✅ ClusterPolicy (YAML) ・ラベル必須チェック ・リミット自動付与 ・NetworkPolicy自動生成
Kyvernoがリソース作成を検証・変換・制御するイメージ
ひよこ ひよこ

KyvernoってKubernetesの何かなの?

ペンギン先生 ペンギン先生

KubernetesのPolicyエンジンだよ。クラスタに入ってくるリソースを「このルールに合わなければ拒否」「足りない設定は自動補完」みたいに管理できるんだ。

ひよこ ひよこ

ルールってどうやって書くの?

ペンギン先生 ペンギン先生

YAMLで書けるのが特徴だよ。OPA/GatekeeperはRegoという専用言語が必要だったけど、KyvernoはKubernetesYAMLと同じ感覚でポリシーを記述できるんだ。

ひよこ ひよこ

具体的にどんなことができるの?

ペンギン先生 ペンギン先生

3種類の使い方があるよ。①バリデーション:ルールに合わないリソースを拒否、②ミューテーション:自動的に設定を追加・変更、③ジェネレーション:新しいリソースを自動生成、という感じだね。

ひよこ ひよこ

たとえばどんなポリシーを作るの?

ペンギン先生 ペンギン先生

「すべてのDeploymentにリソースリミットを必ず設定させる」とか「Namespaceを作ったら自動的にNetworkPolicyも生成する」とかだよ。セキュリティ要件やベストプラクティスを自動強制できるんだ。

ひよこ ひよこ

OPA/Gatekeeperとどっちを使えばいいの?

ペンギン先生 ペンギン先生

シンプルなKubernetesポリシー管理ならKyvernoが学習コストが低くておすすめだよ。一方でOPA/Gatekeeperは汎用的でKubernetes以外にも使えるから、複雑なロジックや多システムへの適用ならGatekeeperという選択もあるね。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Kyverno」って出てきたら「KubernetesYAMLポリシーエンジン」と思えればだいたいOK!
📖 おまけ:英語の意味
「Kyverno」 = 統治する(ギリシャ語由来)
💬 ギリシャ語で「統治する・管理する」を意味する語が由来で、Kubernetesの名前の由来(操舵手)とも同じルーツだよ。
← 用語集にもどる