Kubernetes Kyverno

Bu sayfanın orijinal yazarı Guillaume

Tanım

Kyverno, organizasyonların Kubernetes altyapılarında politikaları tanımlamasını, uygulamasını ve denetlemesini sağlayan açık kaynaklı bir politika yönetim çerçevesidir. Kubernetes kümelerinin güvenliğini, uyumluluğunu ve yönetişimini yönetmek için ölçeklenebilir, genişletilebilir ve son derece özelleştirilebilir bir çözüm sunar.

Kullanım durumları

Kyverno, çeşitli kullanım durumlarında kullanılabilir, bunlar arasında:

  1. Ağ Politikası Uygulaması: Kyverno, podlar veya hizmetler arasında trafiği izin verme veya engelleme gibi ağ politikalarını uygulamak için kullanılabilir.

  2. Gizli Yönetimi: Kyverno, gizli bilgilerin belirli bir formatta veya konumda saklanmasını gerektiren gizli yönetim politikalarını uygulamak için kullanılabilir.

  3. Erişim Kontrolü: Kyverno, belirli kaynaklara erişim için kullanıcıların belirli rollere veya izinlere sahip olmasını gerektiren erişim kontrol politikalarını uygulamak için kullanılabilir.

Örnek: ClusterPolicy ve Policy

Diyelim ki birden fazla ad alanına sahip bir Kubernetes kümesine sahibiz ve default ad alanındaki tüm podların belirli bir etikete sahip olmasını gerektiren bir politikayı uygulamak istiyoruz.

ClusterPolicy

ClusterPolicy, genel politika niyetini tanımlayan yüksek seviyeli bir politikadır. Bu durumda, ClusterPolicy'miz şöyle görünebilir:

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

Bir pod default ad alanında app: myapp etiketi olmadan oluşturulduğunda, Kyverno isteği engelleyecek ve pod'un politika gereksinimlerini karşılamadığını belirten bir hata mesajı döndürecektir.

References

Last updated