Kubernetes 정책 엔진

Kubernetes 정책 엔진 An architecture diagram generated by Archify. API 서버 · kube-apiserver · Kubernetes API API 서버 kube-apiserver 어드미션 웹훅 · Admission Webhook · Kubernetes API 어드미션 웹훅 Admission Webhook OPA Gatekeeper · 검증 · 변경 지원 · 정책 엔진 · Open Policy Agent OPA Gatekeeper 검증 · 변경 지원 Open Policy Agent Kyverno · 검증 · 변경 · 생성 지원 · 정책 엔진 · Kubernetes 네이티브 Kyverno 검증 · 변경 · 생성 지원 Kubernetes 네이티브 Kubewarden · 검증 · 변경 지원 · 정책 엔진 · WebAssembly 기반 Kubewarden 검증 · 변경 지원 WebAssembly 기반 ConstraintTemplate · Rego 언어 · 정책 정의 ConstraintTemplate Rego 언어 Constraint · 정책 인스턴스 · 정책 정의 Constraint 정책 인스턴스 ClusterPolicy / Policy · YAML 기반 · 정책 정의 ClusterPolicy / Policy YAML 기반 ClusterAdmissionPolicy · WebAssembly · 정책 정의 ClusterAdmissionPolicy WebAssembly 호출 처리 처리 처리 사용 사용 사용 사용 Kubernetes API 정책 엔진 정책 정의 Legend Kubernetes API 정책 정의 정책 엔진

OPA Gatekeeper

  • • ConstraintTemplate: 정책 논리를 정의하는 템플릿 (Rego)
  • • Constraint: ConstraintTemplate의 인스턴스로 특정 리소스에 정책 적용
  • • 어드미션 컨트롤러로 동작해 API 서버로 온 요청을 가로채 정책 적용

Kyverno · Kubewarden

  • • Kyverno: YAML 기반 ClusterPolicy/Policy — Rego를 배울 필요 없음
  • • Kyverno는 Verify Images, Clean Up 유형도 추가로 지원
  • • Kubewarden: 다양한 언어로 작성한 정책을 Wasm 모듈로 컴파일해 정책 서버에서 실행

정책 유형

  • • 검증(Validate): 리소스가 조건을 충족하는지 검증 — 세 엔진 모두
  • • 변경(Mutate): 리소스를 자동으로 수정 — 세 엔진 모두
  • • 생성(Generate): 리소스 생성 시 다른 리소스를 자동 생성 — Kyverno만