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