19 de março de 20263 min de leitura

Governança Kubernetes: Escalando com Policy-as-Code via Kyverno

Dahu Kuang, Lei Hou, and Shuting Zhao

Cloud Native Computing Foundation

Panorama

O Kubernetes redefiniu a forma como empresas operam cargas de trabalho críticas. Contudo, à medida que a infraestrutura ganha escala e complexidade, desafios como segurança, conformidade e consistência operacional tornam-se gargalos. Em ambientes de produção, não é viável depender de aprovações manuais ou processos fora de fluxo; a governança deve estar integrada ao pipeline de CI/CD (DevSecOps).

Para times que buscam eficiência, o uso de Admission Controllers é o caminho natural. Mas a escolha do motor de regras faz toda a diferença: a transição entre segurança rígida e produtividade dos desenvolvedores exige uma abordagem nativa. O Kyverno surge não apenas como uma ferramenta, mas como uma estratégia para unificar o controle de políticas (Policy-as-Code) dentro do próprio ecossistema Kubernetes.

Por que o Kyverno?

A principal vantagem do Kyverno é sua natureza nativa. Ao utilizar CRDs (Custom Resource Definitions) padrão do Kubernetes, ele elimina a necessidade de aprender linguagens complexas como Rego. Isso reduz drasticamente a barreira de entrada para engenheiros de SRE e DevOps.

  • YAML nativo: As políticas são manifests, permitindo que a infraestrutura como código (IaC) seja gerenciada no Git. A expansão de bibliotecas CEL (Common Expression Language) permite lógica complexa sem perder a legibilidade.
  • Full Stack de Automação: Além de Validate, que bloqueia configurações inseguras, o Kyverno suporta Mutate (correções automáticas), Generate (criação automática de recursos anexos) e Cleanup (gestão de ciclo de vida).
  • Observabilidade: O alinhamento com especificações do Kubernetes Policy Working Group garante que a conformidade não seja uma "caixa preta", permitindo auditorias claras e integração com ferramentas de monitoramento de mercado.

Casos de uso práticos

O ecossistema Cloud Native tem adotado o Kyverno como padrão para governança. Abaixo, destacamos dois cenários críticos para operações brasileiras.

Screenshot do marketplace para deploy do Kyverno

Caso 1: Proteção contra exclusão (Deletion Protection)

Em ambientes críticos, deletar acidentalmente um banco de dados via CRD pode causar indisponibilidade severa. Com o Kyverno, criamos guardrails que exigem anotações específicas para operações de DELETE em recursos sensíveis:

apiVersion: policies.kyverno.io/v1alpha1
kind: ValidatingPolicy
metadata:
  name: protect-critical-database-deletion
spec:
  # ... (lógica de validação em CEL para impedir deletes não autorizados)

Caso 2: Mutação e Geração Automática

A automação é a chave para a estabilidade. O Kyverno possibilita que, ao criar um novo Namespace ou Pod, políticas de runAsNonRoot sejam injetadas automaticamente ou que um NetworkPolicy de default deny seja aplicado sem intervenção manual.

Caso 3: Inteligência AI-Driven no Ciclo de Segurança

A convergência de agentes de IA com o Kyverno transforma a segurança de "reativa" para "preditiva". A integração via MCP (Model Context Protocol) permite que agentes analisem infraestruturas multi-cluster em busca de riscos e sugiram ou apliquem correções via políticas do Kyverno de forma orquestrada.

Painel de agentes Kyverno em ação

Dashboard de compliance Kyverno

Conclusão

Segurança e agilidade não são forças excludentes se forem bem orquestradas. O Kyverno oferece a flexibilidade necessária para empresas brasileiras que crescem sobre Kubernetes, permitindo que times de SRE e Segurança estabeleçam padrões, automatizem o compliance e reduzam o risco de configurações incorretas sem criar atritos desnecessários com o time de desenvolvimento.


Artigo originalmente publicado por Dahu Kuang, Lei Hou, and Shuting Zhao, Kyverno Project Maintainers em Cloud Native Computing Foundation.

Gostou? Compartilhe:
Precisa de ajuda?Fale com nossos especialistas 👋
Avatar Walcew - Headset