使用 Helm 安装 AppScan 360°

除了设置 AppScan 360° 环境的要求之外,AppScan 360° 的 Helm 安装还需要持久、可靠的互联网连接。系统必须能够定期从 HCL Harbour 下载 Helm 图表。

在使用 Helm 安装 AppScan 360° 之前:
  • 验证您是否有稳定且持久的互联网连接,以便从 GitHub 下载 Helm 图表以及从 HCL Harbor 获取 Docker 映像和 Helm 包。
  • 配置文件可用并且命名正确

安装 helmfile

要安装 helmfile,请执行以下操作:
  1. 下载 helmfile 二进制文件:
    wget https://github.com/helmfile/helmfile/releases/download/v0.169.1/helmfile_0.169.1_linux_amd64.tar.gz
  2. 解压可下载的文件:
    tar -xvzf helmfile_0.169.1_linux_amd64.tar.gz
  3. 将 helmfile 二进制文件移动到适当的本地目录。
    例如,usr/local/bin/
    sudo mv helmfile /usr/local/bin/
  4. 向该文件授予可执行许可权:
    sudo chmod +x /usr/local/bin/helmfile
  5. 验证安装:
    helmfile --version

设置 Harbor 连接

要设置与 Harbor 的连接,请执行以下任一操作:
  • 使用 cli-secret 中定义的 usernamepassword 进行 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 存储库

AppScan 360° Helm 的存储库托管在专用 GitHub 服务器上。克隆位于 https://github.com/HCL-TECH-SOFTWARE/ 的相应存储库,以正确填充本地存储库:
git clone --branch main https://github.com/HCL-TECH-SOFTWARE/AppScan-360-Helm-Files.git
克隆后,验证本地存储库是否具有以下结构:
AppScan-360-Helm-Files
├── Helm.d
│   ├── helmfile-ASCP.yaml
│   ├── helmfile-ASRA.yaml
│   └── helmFileCustomization
│       ├── clusterKit.yaml
│       ├── singular-singular.clusterKit-Sample.yaml
│       └── siteKit.yaml
└── helmfile.yaml

安装 AppScan 360°

从已克隆的资源库 (AppScan-360-Helm-Files) 中,运行:
helmfile sync

对 Helm 安装进行故障诊断

  • No state file found

    状态文件必须命名为 helmfile.d/*
    1. 浏览至 AppScan-360-Helm-Files -> helm.d
    2. 运行 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_USERNAMEHCLCR_PASSWORD 环境变量。验证登录信息,然后重试。

  • Failed to get pull secret

    缺少 .docker/config.json 文件,或未定义具有适当值的 AS360_KNI_JSON_CONFIG_AS_BASE64。验证登录信息,然后重试。