Kyverno: Seu aliado ideal para governança e políticas no Kubernetes
No mundo das aplicações modernas, onde escalabilidade e portabilidade estão fortemente ligadas à arquitetura de containers — e, consequentemente, ao Kubernetes — garantir a segurança e a conformidade dos clusters tornou-se essencial. À medida que as suas aplicações crescem e os ambientes se tornam mais complexos, a necessidade de uma forma eficiente e flexível de aplicar políticas torna-se cada vez mais crítica. É nesse cenário que o Kyverno se destaca, emergindo como um aliado poderoso — e, para muitos, a solução perfeita — para orquestrar políticas dentro do ecossistema Kubernetes. O que é o Kyverno? Kyverno é uma ferramenta de política de código aberto para Kubernetes que permite definir, gerenciar e aplicar políticas operacionais e de segurança nos clusters. Ao contrário de outros mecanismos que exigem linguagens específicas de domínio (DSL), o Kyverno utiliza as configurações YAML nativas do Kubernetes, tornando mais fácil para equipes DevOps e engenheiros de plataforma escreverem regras sem precisar aprender uma nova linguagem. Por que o Kyverno se destaca como o aliado ideal? Simplicidade Declarativa: As políticas são definidas usando arquivos YAML — a mesma linguagem usada para descrever recursos no Kubernetes. Poder e Flexibilidade: Apesar da simplicidade, o Kyverno oferece recursos robustos: Validação: Impede a criação ou atualização de recursos fora do padrão. Mutação: Altera ou insere configurações em tempo de criação/atualização. Geração: Cria recursos automaticamente com base em gatilhos. Políticas como Código: As políticas podem ser versionadas e integradas ao seu pipeline CI/CD, promovendo automação e governança contínua. Testabilidade: Ferramentas nativas permitem validar políticas antes da aplicação real em produção. Observabilidade: Logs e relatórios claros sobre políticas aplicadas, violadas e o motivo. Integração nativa com Kubernetes: Kyverno funciona como um Admission Controller dinâmico, sem necessidade de componentes externos adicionais. Como instalar o Kyverno A instalação pode ser feita rapidamente com o Helm ou aplicando os manifests diretamente. Usando Helm helm repo add kyverno https://kyverno.github.io/kyverno/ helm repo update helm install kyverno kyverno/kyverno --namespace kyverno --create-namespace Usando kubectl kubectl create namespace kyverno kubectl apply -f https://raw.githubusercontent.com/kyverno/kyverno/main/config/install.yaml Depois da instalação verifique os seus pods kyverno kubectl get pods -n kyverno Alguns casos de usos - exemplos Validação de Política A validação da política garante que os recursos do Kubernetes estejam em conformidade com os requisitos predefinidos de segurança e conformidade. Exemplo: Permitindo apenas imagens de registries confiáveis apiVersion: kyverno.io/v1 kind: ClusterPolicy metadata: name: restrict-image-registries spec: validationFailureAction: Enforce rules: - name: check-image-registry match: resources: kinds: - Pod validate: message: "Somente imagens de registry confiáveis." pattern: spec: containers: - image: "registry-confiável.com/*" Auditoria e Conformidade O Kyverno ajuda as organizações a atender aos requisitos de conformidade e segurança, auditando recursos Kubernetes e garantindo que sigam as melhores práticas. Ele permite que administradores apliquem padrões como benchmarks CIS, estruturas de segurança NIST e requisitos GDPR. Exemplo: Auditando Configurações do Istio Gateway apiVersion: kyverno.io/v1 kind: ClusterPolicy metadata: name: audit-istio-gateway spec: validationFailureAction: Audit rules: - name: enforce-https-gateway match: resources: kinds: - Gateway validate: message: "Todo Istio Gateways devem ser HTTPS." pattern: spec: servers: - port: name: "https" Conclusão O Kyverno é uma ferramenta poderosa para garantir a segurança, conformidade e governança no Kubernetes. Com sua abordagem simples e flexível, ele facilita a aplicação de políticas, a automação de processos e a auditoria de recursos, permitindo que as equipes de DevOps e administradores cumpram requisitos rigorosos sem complicação. Ao adotar o Kyverno, as organizações podem reforçar a segurança, aumentar a confiabilidade e garantir a conformidade com as melhores práticas e padrões do setor. Para mais informações sobre políticas acesse Kyverno documentação

No mundo das aplicações modernas, onde escalabilidade e portabilidade estão fortemente ligadas à arquitetura de containers — e, consequentemente, ao Kubernetes — garantir a segurança e a conformidade dos clusters tornou-se essencial.
À medida que as suas aplicações crescem e os ambientes se tornam mais complexos, a necessidade de uma forma eficiente e flexível de aplicar políticas torna-se cada vez mais crítica. É nesse cenário que o Kyverno se destaca, emergindo como um aliado poderoso — e, para muitos, a solução perfeita — para orquestrar políticas dentro do ecossistema Kubernetes.
O que é o Kyverno?
Kyverno é uma ferramenta de política de código aberto para Kubernetes que permite definir, gerenciar e aplicar políticas operacionais e de segurança nos clusters. Ao contrário de outros mecanismos que exigem linguagens específicas de domínio (DSL), o Kyverno utiliza as configurações YAML nativas do Kubernetes, tornando mais fácil para equipes DevOps e engenheiros de plataforma escreverem regras sem precisar aprender uma nova linguagem.
Por que o Kyverno se destaca como o aliado ideal?
- Simplicidade Declarativa: As políticas são definidas usando arquivos YAML — a mesma linguagem usada para descrever recursos no Kubernetes.
-
Poder e Flexibilidade: Apesar da simplicidade, o Kyverno oferece recursos robustos:
- Validação: Impede a criação ou atualização de recursos fora do padrão.
- Mutação: Altera ou insere configurações em tempo de criação/atualização.
- Geração: Cria recursos automaticamente com base em gatilhos.
- Políticas como Código: As políticas podem ser versionadas e integradas ao seu pipeline CI/CD, promovendo automação e governança contínua.
- Testabilidade: Ferramentas nativas permitem validar políticas antes da aplicação real em produção.
- Observabilidade: Logs e relatórios claros sobre políticas aplicadas, violadas e o motivo.
- Integração nativa com Kubernetes: Kyverno funciona como um Admission Controller dinâmico, sem necessidade de componentes externos adicionais.
Como instalar o Kyverno
A instalação pode ser feita rapidamente com o Helm ou aplicando os manifests diretamente.
Usando Helm
helm repo add kyverno https://kyverno.github.io/kyverno/
helm repo update
helm install kyverno kyverno/kyverno --namespace kyverno --create-namespace
Usando kubectl
kubectl create namespace kyverno
kubectl apply -f https://raw.githubusercontent.com/kyverno/kyverno/main/config/install.yaml
Depois da instalação verifique os seus pods kyverno
kubectl get pods -n kyverno
Alguns casos de usos - exemplos
Validação de Política
A validação da política garante que os recursos do Kubernetes estejam em conformidade com os requisitos predefinidos de segurança e conformidade.
Exemplo: Permitindo apenas imagens de registries confiáveis
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: restrict-image-registries
spec:
validationFailureAction: Enforce
rules:
- name: check-image-registry
match:
resources:
kinds:
- Pod
validate:
message: "Somente imagens de registry confiáveis."
pattern:
spec:
containers:
- image: "registry-confiável.com/*"
Auditoria e Conformidade
O Kyverno ajuda as organizações a atender aos requisitos de conformidade e segurança, auditando recursos Kubernetes e garantindo que sigam as melhores práticas. Ele permite que administradores apliquem padrões como benchmarks CIS, estruturas de segurança NIST e requisitos GDPR.
Exemplo: Auditando Configurações do Istio Gateway
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: audit-istio-gateway
spec:
validationFailureAction: Audit
rules:
- name: enforce-https-gateway
match:
resources:
kinds:
- Gateway
validate:
message: "Todo Istio Gateways devem ser HTTPS."
pattern:
spec:
servers:
- port:
name: "https"
Conclusão
O Kyverno é uma ferramenta poderosa para garantir a segurança, conformidade e governança no Kubernetes. Com sua abordagem simples e flexível, ele facilita a aplicação de políticas, a automação de processos e a auditoria de recursos, permitindo que as equipes de DevOps e administradores cumpram requisitos rigorosos sem complicação. Ao adotar o Kyverno, as organizações podem reforçar a segurança, aumentar a confiabilidade e garantir a conformidade com as melhores práticas e padrões do setor.
Para mais informações sobre políticas acesse Kyverno documentação