【カイバーノ】

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の名前の由来(操舵手)とも同じルーツだよ。
← 用語集にもどる