使用 Helm 安装 AppScan 360°
💡 最佳实践:建议在每次进行全新安装或重大升级之前,运行 AppScan 360 Setup Assistant,以确保环境准备就绪并防止安装失败。
除了设置 AppScan 360° 环境的要求之外,AppScan 360° 的 Helm 安装还需要持久、可靠的互联网连接。系统必须能够定期从 HCL Harbor 下载 Helm 图表。
- 验证您是否有稳定且持久的互联网连接,以便从 GitHub 下载 Helm 图表以及从 HCL Harbor 获取 Docker 映像和 Helm 包。
- 配置文件可用并且命名正确。
安装 helmfile
- 下载 helmfile 二进制文件:
wget -O helmfile.tar.gz $(curl -s https://api.github.com/repos/helmfile/helmfile/releases/latest | grep browser_download_url | grep linux_amd64.tar.gz | cut -d '"' -f 4) - 解压缩归档:
tar -xvzf helmfile.tar.gz - 将 helmfile 二进制文件移动到适当的本地目录。例如,
usr/local/bin/。sudo mv helmfile /usr/local/bin/ - 向该文件授予可执行许可权:
sudo chmod +x /usr/local/bin/ sudo chmod +x /usr/local/bin/helmfile - 验证安装:
helmfile --version注: 始终验证您使用的是否为预期版本,以确保部署的一致性。如果 Helm 升级到版本 4,则 Helmfile 二进制文件也必须更新到最新版本。
设置 Harbor 连接
- 使用
cli-secret中定义的username和password进行 Docker 登录:docker login hclcr.io - 为
docker/config.json文件设置环境变量:export HCLCR_USERNAME=<harbor-username> export HCLCR_PASSWORD=<harbor-password/cli-secret> - 设置用于 base64 编码的环境变量:
export AS360_KNI_JSON_CONFIG_AS_BASE64="<base64-value-of-docker-config.json>"
设置 GitHub 存储库
git clone https://github.com/HCL-TECH-SOFTWARE/AppScan-360-Helm-FilesAppScan-360-Helm-Files
├── Copy Artifacts
│ ├── artifactList.txt # List of images/charts to sync
│ ├── copy-artifacts.sh # The synchronization script
├── Helm.d
│ ├── helmfile-ASCP.yaml.gotmpl
│ ├── helmfile-ASRA.yaml.gotmpl
│ ├── helmfile-SCA.yaml.gotmpl
│ ├── helmfile-DTCS.yaml.gotmpl
│ └── helmFileCustomization
│ └── singular-singular.clusterKit-Sample.yaml # Main config file
├── helmfile.yaml.gotmpl
└── README.md安装 AppScan 360°
AppScan-360-Helm-Files) 中,运行:helmfile sync包括软件组成分析 (SCA)
includeSCA=true helmfile syncincludeSCA=true helmfile destroyexport SCA_AUTOUPDATER_REGISTRY_USERNAME=<HCL_HARBOR_USERNAME>
export SCA_AUTOUPDATER_REGISTRY_PASSWORD=<HCL_HARBOR_PASSWORD>Dast Template Converter Service (DTCS)
缺省情况下,DTCS 与 AppScan360 其他组件一起安装。
如果客户不想安装 Dast 技术,则可通过以下命令跳过此组件。
excludeDTCS=true helmfile syncexcludeDTCS=true helmfile destroy统一命名空间支持
helmfile -n hcl-appscan-as360 sync要从统一命名空间中卸载helmfile -n hcl-appscan-as360 destroy使用 Git 标记和归档文件的版本支持
AppScan 360° 支持使用 Git 标记和归档文件进行版本控制安装。git clone
https://github.com/HCL-TECH-SOFTWARE/AppScan-360-Helm-Files.gitX.X.X 是特定的版本号,请执行以下操作:git clone --branch vX.X.X
https://github.com/HCL-TECH-SOFTWARE/AppScan-360-Helm-Files.gitX.X.X 是特定的版本号,请执行以下操作:wget https://github.com/HCL-TECH-SOFTWARE/AppScan-360-Helm-Files/archive/refs/tags/vX.X.X.zipX.X.X 是特定的版本号,请执行以下操作:unzip AppScan-360-Helm-Files-vX.X.X.zip或者tar -xvzf AppScan-360-Helm-Files-vX.X.X.tar.gz对 Helm 安装进行故障诊断
- 发行版名称:
组件 发行版名称 命名空间 AppScan 360° 平台 appscan360-ascphcl-appscan-ascpAppScan Remediation Advisories asrahcl-appscan-asra软件组成分析 (SCA)(可选) scaserviceshcl-appscan-sca -
No state file found状态文件必须命名为helmfile.d/*。- 浏览至
AppScan-360-Helm-Files -> helm.d - 运行
run helmfile sync
- 浏览至
-
./helmfile.yaml: in .helmfiles[0]: in helm.d/helmfile-ASCP.yaml: failed processing release appscan360-ascp: values file matching "helmFileCustomizations/singular-singular.clusterKit.yaml" does not exist in "."缺少属性文件 (
singular-singular.clusterKit.yaml)。验证该文件是否位于正确的位置,然后重试。 -
Failed to pull helm-packages or docker images缺少 Docker 登录,或缺少
HCLCR_USERNAME和HCLCR_PASSWORD环境变量。验证登录信息,然后重试。 -
Failed to get pull secret缺少
.docker/config.json文件,或未定义具有适当值的AS360_KNI_JSON_CONFIG_AS_BASE64。验证登录信息,然后重试。