Goldilocks

Zweck

Goldilocks unterstützt bei der Ermittlung von CPU- und Memory-Requests für Kubernetes Workloads.

Dabei werden Empfehlungen des Kubernetes Vertical Pod Autoscaler (VPA) ausgewertet und über ein Web-Dashboard dargestellt.

Architektur

Goldilocks besteht aus:

  • Goldilocks Controller

  • Vertical Pod Autoscaler (VPA)

  • Dashboard

Workload
    |
    v
Vertical Pod Autoscaler
    |
    v
Goldilocks Dashboard

Verwendung

Namespaces können durch Labeling für Goldilocks aktiviert werden.

Beispiel:

kubectl label namespace paperless-ngx \
  goldilocks.fairwinds.com/enabled=true

Anschließend erstellt Goldilocks automatisch VPA-Ressourcen und zeigt Empfehlungen für:

  • CPU Requests

  • CPU Limits

  • Memory Requests

  • Memory Limits

an.

Betrieb

Pods prüfen

kubectl get pods -n goldilocks

Logs anzeigen

kubectl logs -n goldilocks \
  deployment/goldilocks-controller

Dashboard Port Forward

kubectl port-forward \
  -n goldilocks \
  deployment/goldilocks-dashboard \
  8080:80