环境与配置管理60 条

OPA Gatekeeper

Kubernetes 准入控制侧的 OPA 集成:ConstraintTemplate 定义规则模板,Constraint 声明适用范围与动作(deny/dryrun)。

CI/CD 与发布速查开发更新于 2026-10-12
模型ConstraintTemplate(Rego 模板)+ Constraint(实例与匹配范围)
模式enforcementAction:deny / dryrun / warn
审计存量资源审计(audit)周期性扫描并给出违规清单

Constraint 示例

Constraint 示例
apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sRequiredLabels
metadata:
  name: require-team-label
spec:
  enforcementAction: dryrun
  match:
    kinds:
      - apiGroups: ["apps"]
        kinds: ["Deployment"]
上线策略先 dryrun 收集违规面:批量存量问题直接 deny 会把发布流程卡死。

易错点

  • deny 前未过 dryrun:存量资源与常规发布被拦,先观察再收紧
  • 模板更新未回滚兼容:约束依赖模板字段,灰度发布策略变更

数据来源与参考

  • Gatekeeper 文档(open-policy-agent)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌