Das Helm-Chart unterstützt Horizontal Pod Autoscaling (HPA) für die Scanner-Komponente,
um die Anzahl der Scanner-Pods basierend auf der CPU- und Speicherauslastung automatisch
zu skalieren.
Autoskalierung funktioniert am besten, wenn sie mit geeigneten Ressourcenanforderungen
und -grenzen kombiniert wird. Überwachen Sie Ihre Arbeitslastmuster, um optimale Skalierungsschwellenwerte
zu bestimmen.
Voraussetzungen für die automatische Skalierung
-
Metrics Server: Der Kubernetes Metrics Server muss in Ihrem Cluster bereitgestellt werden, damit HPA CPU- und Speichermetriken sammeln kann. Falls er noch nicht installiert ist, stellen Sie ihn bereit mit:
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
Überprüfen Sie, ob der Metrics Server läuft:kubectl get deployment metrics-server -n kube-system kubectl top nodes # This should return node metrics
-
Ressourcenanforderungen: Die Scanner-Pods müssen über definierte CPU- und Speicherressourcenanforderungen verfügen (die standardmäßig in diesem Diagramm enthalten sind).
Standardmäßige Autoskalierungseinstellungen
Autoskalierung ist standardmäßig deaktiviert. Die folgenden Einstellungen sind im
values.yaml konfiguriert:Scanner-Autoskalierung (
scanner.autoscaling):- aktiviert:
false(Autoskalierung ist standardmäßig deaktiviert) - minReplicas:
1(minimale Anzahl von Scanner-Pods) - maxReplicas:
5(maximale Anzahl von Scanner-Pods) - Ziel-CPU-Auslastungsprozentsatz:
80(Ziel-CPU-Auslastung zur Auslösung der Skalierung) - Ziel-Speicherauslastungsprozentsatz:
80(Ziel-Speicherauslastung zur Auslösung der Skalierung)
Automatische Skalierung aktivieren
Sie können die automatische Skalierung während der Installation aktivieren, indem
Sie die
--set-Flags verwenden. Sie können die automatische Skalierung auch aktivieren, indem Sie
die Werte in Ihrer benutzerdefinierten values.yaml-Datei überschreiben:# Example: Enable autoscaling with custom thresholds
scanner:
autoscaling:
enabled: true
minReplicas: 2
maxReplicas: 10
targetCPUUtilizationPercentage: 70
targetMemoryUtilizationPercentage: 80
Oder durch die Verwendung der Helm-Befehlszeile:
helm install my-release visionone-filesecurity/visionone-filesecurity \ -n visionone-filesecurity \ --set scanner.autoscaling.enabled=true \ --set scanner.autoscaling.maxReplicas=10 \ --set scanner.autoscaling.targetCPUUtilizationPercentage=70
Automatische Skalierung überwachen
Sie können den HPA-Status überwachen mit:
# Check HPA status kubectl get hpa -n visionone-filesecurity # Get detailed HPA information kubectl describe hpa -n visionone-filesecurity
