部署配置參數

AppScan 360° 靜態分析 環境可以如下自訂:
  1. yaml 格式建立配置檔。例如 values.yaml
  2. 在配置檔中列出自訂參數。

    廣域常見RabbitMQ 特定參數如下表所述。

  3. 使用 -f(含有 sast-service.sh 指令碼)選項指定配置檔的路徑名稱。例如,當配置檔命名為 values.yaml 時:
    > cat values.yaml 
    global: 
        storage: 
            pvc: 
                storage: 100Gi 
        ingress: 
            ingressClassName: nginx.

廣域參數

參數 說明 預設值
global.workload.mainContainer.image.registry 用來提取 AppScan 360° 靜態分析 映像的登錄 hclcr.io
global.workload.mainContainer.image.repository 尋找 AppScan 360° 靜態分析 映像的存放庫路徑。 appscan360-sast/sast-service
global.workload.mainContainer.image.tag AppScan 360° 靜態分析 映像的版本。 1.1.0
global.workload.mainContainer.image.pullPolicy 從登錄提取 AppScan 360° 靜態分析 映像的原則。 IfNotPresent
global.storage.pvc.storageClassName 儲存提供者類別名稱。由部署指令碼配置。 local-path
global.storage.pvc.accessModes 儲存磁碟區的存取許可權陣列。 ReadWriteMany
global.storage.pvc.storage AppScan 360° 靜態分析 資料磁碟區的儲存空間配置。 200Gi
global.storage.pvclogs.storage AppScan 360° 靜態分析 日誌磁碟區的儲存空間配置。 10Gi
global.ca.root.serverCertificate CA 憑證以簽署 AppScan 360° 靜態分析 元件。由部署指令碼配置。
global.ca.root.serverKey 用於簽署 AppScan 360° 靜態分析 元件的私密金鑰。由部署指令碼配置。
global.ingress.ingressClassName 用於 AppScan 360° 靜態分析 輸入的控制器類別名稱。
global.ingress.additionalAnnotations 輸入時要在 AppScan 360° 靜態分析 中配置的註釋清單。
common.ingress.hostname 完整網域名稱 (FQDN),以存取 SAppScan 360° 靜態分析 輸入。 sast.example.com
common.auth.token AppScan 360° 靜態分析 配置授權的 Bearer 記號。由部署指令碼配置。
common.configMap.LOG_LEVEL 每個 AppScan 360° 靜態分析 元件的基礎微服務記錄層級 INFO
common.configMap.SCAN_ARTIFACTS_AGE_IN_DAYS 在將掃描構件從 AppScan 360° 靜態分析 儲存位置移除之前,保留這些構件的天數。 10
common.configMap.ASCP_SERVER_HOST 要整合的 ASCP 伺服器主機名稱。由部署指令碼配置。
common.configMap.ASCP_SERVER_PORT ASCP 伺服器的埠。 443
common.configMap.ASCP_SERVICE_HOST ASCP 伺服器的代理程式 - API 服務主機名稱。 <ASCP_SERVER_HOST>
common.configMap.ASCP_SERVICE_PORT ASCP 伺服器的代理程式 - API 服務埠。 5000

常用參數

下列參數可分別用於自訂每個 AppScan 360° 靜態分析 元件。

若要設定特定元件的參數,請在參數前加上元件名稱。例如,若要配置 gateway 元件的 <>.common.workload.mainContainer.resources.requests.cpu 參數:
gateway.common.workload.mainContainer.resources.requests.cpu=2
參數 說明 選項 預設
<>.common.configMap 針對每個元件的基礎微服務所支援的可設定參數清單。 LOG_LEVEL,基本元件微服務的日誌層級。 INFO
<>.common.secrets 每個元件的基礎微服務所支援的可設定機密參數清單。 ASCP_AUTH_KEY,持有 ASCP 伺服器鑑別記號。適用於「ascp-adapter」。由部署指令碼配置。
<>.common.hpa.maxReplicaCount 可自動調整元件比例的備用資源數量上限。

ascp-adapter

preparer、analyzer

3

25

<>.common.workload.mainContainer.resources.requests.cpu 元件所需的最小 CPU 數量。

gateway、ascp-adapterscan-manager、workflow-manager

1
preparer、analyzer 2
<>.common.workload.mainContainer.resources.requests.memory 元件所需的最小記憶體量 (RAM)。 gateway、ascp-adapter、scan-manager、workflow-manager 2GB
preparer、analyzer 16GB
<>.common.workload.mainContainer.resources.limits.cpu 元件所需的最大 CPU 數量。 gateway、ascp-adapter、scan-manager、workflow-manager 2
preparer、analyzer 4
<>.common.workload.mainContainer.resources.limits.memory 元件所需的最大記憶體容量 (RAM)。 gateway、ascp-adapter、scan-manager、workflow-manager 4GB
preparer、analyzer 28GB
<>.common.workload.additionalLabels 要為元件配置的部署標籤清單。
<>.common.workload.additionalAnnotations 要為元件配置的部署註釋清單。
<>.common.workload.podLabels 要為元件配置的 pod 標籤清單。
<>.common.workload.podAdditionalAnnotations 要為元件配置的 pod 註釋清單。
<>.common.workload.additionalNodeSelector 要為元件配置的節點選取器清單。
<>.common.workload.additionalTolerations 為元件配置的容錯清單。
<>.common.metrics.port 存取元件 Prometheus 指標的連接埠。 9443
<>.common.metrics.path 存取元件 Prometheus 指標的 URL。 /actuator/prometheus

RabbitMQ

可自訂的 RabbitMQ 參數如下:

參數 說明 預設
rabbitmq.image.registry 用於提取 RabbitMQ 儲存器映像的登錄。 hclcr.io
rabbitmq.image.repository 尋找 RabbitMQ 儲存器映像的存放庫路徑。 appscan360-sast/sast-service
rabbitmq.image.tag RabbitMQ 儲存器映像的版本。 3.12.2-debian-11-r8
rabbitmq.auth.username 存取 RabbitMQ 的使用者名稱。 appscan
rabbitmq.auth.password 用來存取 RabbitMQ 的密碼。由部署指令碼配置。
rabbitmq.persistance.storageClass 在 RabbitMQ 中使用的儲存提供者類別名稱。由部署指令碼配置。
rabbitmq.ingress.enabled 輸入以存取 RabbitMQ 管理入口網站。 False
rabbitmq.ingress.hostname 完整網域名稱 (FQDN),以存取 RabbitMQ 管理入口網站輸入。 rabbitmq.sast.example.com
rabbitmq.resources.requests.cpu 元件所需的最小 CPU 數量。 1
rabbitmq.resources.requests.memory 元件所需的最小記憶體量 (RAM)。 2GB
rabbitmq.resources.limits.cpu 元件所需的最大 CPU 數量。 2
rabbitmq.resources.limits.memory 元件所需的最大記憶體容量 (RAM)。 4GB

若要查看完整清單:

  • 若從 HCL Harbor 安裝,請導覽至下列路徑,以取得配置參數及相關值的完整清單 Projects > appscan360-sast/sast-service/sast-service-core > values
  • 若要從封存檔安裝,values.yaml 檔案可在圖表資料夾(sast-service-base/helm/sast-service-core/values.yaml)中找到。

節點選取器配置

SAST 部署可配置為在符合準則的特定節點上執行元件的 pod。以下是與節點選取器配置相關的內容:
參數 說明
<>.common.workload.additionalNodeSelector 接受要安裝的節點標籤。選取器會挑選一個帶有提供標籤的節點。
rabbitmq.common.nodeSelector 接受要安裝 RabbitMQ 的節點標籤。選取器會挑選一個帶有提供標籤的節點。

例如:

  • 為節點儲存區建立名稱為 sastNodeType 的標籤,以及 sast-analyzer-node 的值。
  • 節點設定標籤後,便可將 pod 配置為要在相符的節點中建立。若要設定在節點中建立含標籤 sastNodeType=sast-analyzer-node的分析器元件 pod,請如下配置屬性:
      analyzer:
        common:
          workload:
            additionalNodeSelector:
              sastNodeType: sast-analyzer-node

範例 YAML 檔

global:
  storage:
    pvc:
      storage: 20G
    pvcLogs:
      storage: 2G
    ingress:
      additionalAnnotations:
        nginx.ingress.kubernetes.io/backend-protocol:HTTPS