OPA Gatekeeper

用 Rego 写 K8s 准入策略:表达力最强,学习曲线也最陡。

把 Open Policy Agent 接进 Kubernetes 准入链:ConstraintTemplate 用 Rego 定义「怎么判」,Constraint 用普通 YAML 声明「判哪些资源、参数是什么」。这个两层结构让写模板的人和用模板的人可以分开。配合 audit 循环,它还能报告**已经存在**的违规对象,而不只是拦新建的。CNCF 项目。

License
Apache-2.0
语言
Go
自托管
Helm Chart · K8s 清单
上游托管版
无
分类
准入与策略
仓库
github.com/open-policy-agent/gatekeeper
上游文档
文档官网

上游活跃度

2026-08-23 抓取 · 数据来自 open-policy-agent/gatekeeper (github)
star4,267
最近提交2026-08-21
最新版本v3.23.02026-07-09

数字由构建期抓取,非实时;star 数不同代码托管平台之间不可直接比较。

运行依赖

  • 集群 webhook 可达;策略要引用其他对象时需开启数据同步(replicate)

上手前注意

  • Rego 是一门真正要学的语言 —— 只是想禁掉 latest tag、要求 resources 的话,Kyverno 的成本低得多
  • 同样在 API 请求路径上:failurePolicy 与超时决定了它故障时集群是「拒绝一切」还是「放行一切」
  • 策略要跨对象判断(如「同 namespace 不能有重复 Ingress host」)必须先把相关资源同步进它的缓存,这一步常被漏掉

同类工具(准入与策略)