Kubernetes Kyverno

Die oorspronklike skrywer van hierdie bladsy is Guillaume

Definisie

Kyverno is 'n oopbron, beleidsbestuurraamwerk vir Kubernetes wat organisasies in staat stel om beleids te definieer, af te dwing en te oudit oor hul hele Kubernetes-infrastruktuur. Dit bied 'n skaalbare, uitbreidbare en hoogs aanpasbare oplossing vir die bestuur van die sekuriteit, nakoming en bestuur van Kubernetes-klusters.

Gebruik gevalle

Kyverno kan in 'n verskeidenheid gebruik gevalle gebruik word, insluitend:

  1. Netwerkbeleid Afdoening: Kyverno kan gebruik word om netwerkbeleide af te dwing, soos om verkeer tussen pods of dienste toe te laat of te blokkeer.

  2. Geheimbestuur: Kyverno kan gebruik word om geheimbestuurbeleide af te dwing, soos om te vereis dat geheime in 'n spesifieke formaat of ligging gestoor moet word.

  3. Toegangsbeheer: Kyverno kan gebruik word om toegangsbeheerbeleide af te dwing, soos om te vereis dat gebruikers spesifieke rolle of toestemmings moet hê om toegang tot sekere hulpbronne te verkry.

Voorbeeld: ClusterPolicy en Beleid

Kom ons sê ons het 'n Kubernetes-kluster met verskeie namespaces, en ons wil 'n beleid afdwing wat vereis dat alle pods in die default namespace 'n spesifieke etiket moet hê.

ClusterPolicy

'n ClusterPolicy is 'n hoëvlakbeleid wat die algehele beleidsintensie definieer. In hierdie geval kan ons ClusterPolicy soos volg lyk:

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

Wanneer 'n pod in die default naamruimte geskep word sonder die etiket app: myapp, sal Kyverno die versoek blokkeer en 'n foutboodskap teruggee wat aandui dat die pod nie aan die beleidsvereistes voldoen nie.

References

Last updated