Kubernetes Meetup Tokyo #42 で利用したスライドです。
Kubernetes における Policy as Code の実装として最も広く使われているツールは Open Policy Agent (OPA) とその Kubernetes アダプタである Gatekeeper です。OPA は CNCF Graduated に位置付けられおり、デファクトスタンダードであると言えます。しかし OPA は記述言語として Rego を採用しており、学習コストの高さは否めません。
一方、OPA 以外のポリシエンジンとしては、Kyverno が CNCF Sandbox に登録されています。OPA と異なり Kyverno ではポリシの記述に YAML を用いるため学習コストは低いですが、その分、表現力に劣ります。
これらのツールに対して今回紹介する Kubewarden では、ポリシとして WebAssembly を採用しているため、WebAssembly が出力できる任意のプログラミング言語でロジックを実装することが可能です。また Kuberwarden でコンパイルしたポリシは、Docker Hub や AWS Elastic Container Registry のような OCI レジストリを用いて配布することもできます。
イベント概要:https://k8sjp.connpass.com/event/214286/
録画:https://youtu.be/FBnPVkxZFK4?t=7859