部署配置参数
可以按以下方式定制 AppScan 360° Static Analysis 环境:
全局参数
| 参数 | 描述 | 缺省值 |
|---|---|---|
global.workload.mainContainer.image.registry |
从中拉取 AppScan 360° Static Analysis 图像的注册表 | hclcr.io |
global.workload.mainContainer.image.repository |
用于找到 AppScan 360° Static Analysis 图像的存储库路径。 | appscan360-sast/sast-service |
global.workload.mainContainer.image.tag |
AppScan 360° Static Analysis 图像的版本。 | 1.1.0 |
global.workload.mainContainer.image.pullPolicy |
从注册表中拉取 AppScan 360° Static Analysis 图像的策略。 | IfNotPresent |
global.storage.pvc.storageClassName |
存储提供程序类名。由部署脚本配置。 | local-path |
global.storage.pvc.accessModes |
存储卷的访问许可权数组。 | ReadWriteMany |
global.storage.pvc.storage |
AppScan 360° Static Analysis 数据卷的存储分配。 | 200Gi |
global.storage.pvclogs.storage |
AppScan 360° Static Analysis 日志卷的存储分配。 | 10Gi |
global.ca.root.serverCertificate |
用于签署 AppScan 360° Static Analysis 组件的 CA 证书。由部署脚本配置。 | |
global.ca.root.serverKey |
用于签署 AppScan 360° Static Analysis 组件的专用密钥。由部署脚本配置。 | |
global.ingress.ingressClassName |
要用于 AppScan 360° Static Analysis 入口的入口控制器类名。 | |
global.ingress.additionalAnnotations |
要在 AppScan 360° Static Analysis 入口中配置的注释列表。 | |
common.ingress.hostname |
用于访问 SAppScan 360° Static Analysis 入口的完全限定域名 (FQDN)。 | sast.example.com |
common.auth.token |
用于在 AppScan 360° Static Analysis 中配置授权的持有者令牌。由部署脚本配置。 | |
common.configMap.LOG_LEVEL |
每个 AppScan 360° Static Analysis 组件的基础微服务的日志级别 | 信息 |
common.configMap.SCAN_ARTIFACTS_AGE_IN_DAYS |
从 AppScan 360° Static Analysis 存储中删除扫描工件之前保留这些工件的天数。 | 10 |
common.configMap.ASCP_SERVER_HOST |
要与之集成的 ASCP 服务器的主机名。由部署脚本配置。 | |
common.configMap.ASCP_SERVER_PORT |
ASCP 服务器的端口。 | 443 |
common.configMap.ASCP_SERVICE_HOST |
ASCP 服务器的 agents-api 服务主机名。 | <ASCP_SERVER_HOST> |
common.configMap.ASCP_SERVICE_PORT |
ASCP 服务器的 agents-api 服务端口。 | 5000 |
通用参数
以下参数可用于单独定制每个 AppScan 360° Static Analysis 组件。
要为特定组件配置参数,请在参数前加上组件名称作为前缀。例如,要配置
gateway 组件的参数 <>.common.workload.mainContainer.resources.requests.cpu:gateway.common.workload.mainContainer.resources.requests.cpu=2
| 参数 | 描述 | 选项 | 缺省 |
|---|---|---|---|
<>.common.configMap |
每个组件的基础微服务支持的可配置参数列表。 | LOG_LEVEL,组件基础微服务的日志级别。 | 信息 |
<>.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 | 2吉字节 |
| preparer、analyzer | 16吉字节 | ||
<>.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 | 4吉字节 |
| preparer、analyzer | 28吉字节 | ||
<>.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 |
用于访问 RabbitMQ 管理门户网站入口的完全限定域名 (FQDN)。 | rabbitmq.sast.example.com |
rabbitmq.resources.requests.cpu |
组件所需的最小 CPU 数。 | 1 |
rabbitmq.resources.requests.memory |
组件所需的最小内存量 (RAM)。 | 2吉字节 |
rabbitmq.resources.limits.cpu |
组件所需的最大 CPU 数。 | 2 |
rabbitmq.resources.limits.memory |
组件所需的最大内存量 (RAM)。 | 4吉字节 |
要查看完整列表:
- 如果从 HCL Harbour 安装,请浏览到以下路径,以获得配置参数和关联值
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