檢視次數:
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