Kubernetes Kyverno
Reading time: 1 minute
L'autore originale di questa pagina è Guillaume
Definizione
Kyverno è un framework open-source per la gestione delle politiche per Kubernetes che consente alle organizzazioni di definire, applicare e auditare le politiche su tutta la loro infrastruttura Kubernetes. Fornisce una soluzione scalabile, estensibile e altamente personalizzabile per gestire la sicurezza, la conformità e la governance dei cluster Kubernetes.
Casi d'uso
Kyverno può essere utilizzato in una varietà di casi d'uso, tra cui:
- Applicazione delle Politiche di Rete: Kyverno può essere utilizzato per applicare politiche di rete, come consentire o bloccare il traffico tra pod o servizi.
- Gestione dei Segreti: Kyverno può essere utilizzato per applicare politiche di gestione dei segreti, come richiedere che i segreti siano memorizzati in un formato o posizione specifici.
- Controllo degli Accessi: Kyverno può essere utilizzato per applicare politiche di controllo degli accessi, come richiedere agli utenti di avere ruoli o permessi specifici per accedere a determinate risorse.
Esempio: ClusterPolicy e Policy
Immaginiamo di avere un cluster Kubernetes con più namespace e vogliamo applicare una politica che richiede a tutti i pod nel namespace default
di avere un'etichetta specifica.
ClusterPolicy
Una ClusterPolicy è una politica di alto livello che definisce l'intento generale della politica. In questo caso, la nostra ClusterPolicy potrebbe apparire così:
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: require-label
spec:
rules:
- validate:
message: "Pods in the default namespace must have the label 'app: myapp'"
match:
any:
- resources:
kinds:
- Pod
namespaceSelector:
matchLabels:
namespace: default
- any:
- resources:
kinds:
- Pod
namespaceSelector:
matchLabels:
namespace: default
validationFailureAction: enforce
Quando un pod viene creato nel namespace default
senza l'etichetta app: myapp
, Kyverno bloccherà la richiesta e restituirà un messaggio di errore che indica che il pod non soddisfa i requisiti della policy.