Helm 圖表支援掃描器元件的水平 Pod 自動調整 (HPA),可根據 CPU 和記憶體使用率自動調整掃描器 Pod 的數量。
自動調整功能在與適當的資源請求和限制結合使用時效果最佳。監控您的工作負載模式以確定最佳調整閾值。
自動調整規模的先決條件
-
Metrics Server:必須在您的叢集中部署 Kubernetes Metrics Server,才能讓 HPA 收集 CPU 和記憶體指標。如果尚未安裝,請使用以下命令進行部署:
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
驗證 Metrics Server 是否正在運行:kubectl get deployment metrics-server -n kube-system kubectl top nodes # This should return node metrics
-
資源請求:掃描器 pod 必須定義 CPU 和記憶體資源請求(預設已包含在此圖表中)。
預設自動調整設定
自動調整功能預設為關閉。以下設定已在
values.yaml
中配置:掃描器自動調整 (
scanner.autoscaling
):- 已啟動:
false
(自動調整大小預設為關閉) - minReplicas:
1
(掃描器 Pod 的最小數量) - maxReplicas:
5
(掃描器 Pod 的最大數量) - 目標CPU使用率百分比:
80
(觸發擴展的目標CPU使用率) - 目標記憶體使用率百分比:
80
(觸發擴展的目標記憶體使用率)
啟用自動調整規模
您可以在安裝期間使用
--set
標誌啟用自動擴展。您也可以通過覆蓋自定義values.yaml
文件中的值來啟用自動擴展:# Example: Enable autoscaling with custom thresholds scanner: autoscaling: enabled: true minReplicas: 2 maxReplicas: 10 targetCPUUtilizationPercentage: 70 targetMemoryUtilizationPercentage: 80
或者使用 Helm 命令列:
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
監控自動調整
您可以使用以下方式監控 HPA 狀態:
# Check HPA status kubectl get hpa -n visionone-filesecurity # Get detailed HPA information kubectl describe hpa -n visionone-filesecurity