automation-suite
2023.10
false
UiPath logo, featuring letters U and I in white
Linux 版 Automation Suite 安装指南
Last updated 2024年12月3日

为离线安装配置符合 OCI 的注册表

在离线安装中,您需要一个符合 OCI(开放容器计划)的注册表来存储容器映像和部署 Helm 图表。如果您执行在线安装,请跳过此步骤。

备注:

您必须选择以下选项之一才能设置符合 OCI 的注册表:

将 Automation Suite 工件上传到符合 OCI 的外部注册表

有两种方法可以将 Automation Suite 工件上传到外部符合 OCI 的注册表:

下表比较了将工件上传到注册表的两个选项,以便您可以选择适合您需求的选项:

选项 A:镜像注册表

选项 B:结合使用注册表

将工件从 UiPath™ 注册表复制到任何目标注册表。

使用离线 tarball 包解压缩工件并将其上传到目标注册表。

需要 Docker 和 Helm 工具。

需要 Podman 和 Helm 工具。

需要访问互联网,才能将工件从 UiPath™ 注册表复制到目标注册表。

只需访问互联网即可将离线 tarball 下载到跳转服务器。上传 tarball 不需要访问互联网。

在复制方法期间需要临时空间来缓存图像。此空间通常在 Docker 安装期间配置。默认位置为 /var/lib/docker

需要临时空间以提取 tarball,也需要临时空间以供 Podman 加载图像。

必须在结合使用步骤中提供 tarball 提取的位置。 Podman 位置可以是/var/tmp ,该位置必须有足够的可用存储空间。
/var/lib/docker目录所需的存储容量约为 128 GiB。
提取所需的存储容量约为 200 GiB,/var/tmp 必须为 256 GiB。
注意:建议从管理计算机或 Jump Box 执行镜像或结合使用操作,而不要使用服务器节点。

选项 A:将 UiPath™ 注册表镜像到您的注册表。

此方法需要跳转机能够访问互联网,您可以使用该跳转机将 Automation Suite 工件上传到符合 OCI 的注册表中。

镜像 UiPath™ 注册表的先决条件

要镜像 UiPath™ 注册表,您需要执行以下操作:

  • 运行 Linux 发行版的虚拟机(推荐)或笔记本电脑(不推荐);

  • 使用私有注册表进行身份验证的 Docker 客户端;

  • Helm 3.8 或更高版本通过私有注册表进行身份验证;

  • as-images.txt;
  • as-helm-charts.txt;
  • mirror-registry.sh;
  • registry.uipath.com 的出站连接;
  • 在上传容器映像和图表的计算机上,/var/lib/docker 分区下有 128 GiB 可用磁盘空间用于 Docker。
安装 Docker 和 Helm

您必须在计划将 Automation Suite 容器映像和图表上传到注册表的计算机上安装 Docker 和 Helm,并对其进行身份验证。

  • 要下载 Docker 二进制文件,请参阅官方文档

  • 要对 Docker 注册表进行身份验证,请参阅官方文档。或者,您可以通过将示例凭据替换为实际的注册表凭据,从而使用以下命令:

    docker login my.registry.io:443 --username "admin" --password "secret"docker login my.registry.io:443 --username "admin" --password "secret"
  • 要下载 Helm 二进制文件,请参阅官方文档

  • 要对 Helm 注册表进行身份验证,请参阅官方文档。或者,您可以通过将示例凭据替换为实际的注册表凭据,从而使用以下命令:

    helm registry login my.registry.io:443 --username "admin" --password "secret"helm registry login my.registry.io:443 --username "admin" --password "secret"
下载 as-images.txt
要下载 as-images.txt,请参阅下载安装捆绑包
下载 as-helm-charts.txt
要下载 as-helm-charts.txt,请参阅下载安装捆绑包
下载可选的 Document Understanding 捆绑包

要下载可选的 Document Understanding 捆绑包,请参阅 Document Understanding 文档

下载 mirror-registry.sh
要下载 mirror-registry.sh 脚本,请参阅下载安装包

将 Automation Suite 映像上传到注册表

mirror-registry.sh 脚本需要目标为源注册表(默认为 registry.uipath.com)和目标注册表的出站连接。
备注:
mirror-registry.sh 脚本不会对注册表执行身份验证。假定您已通过注册表的身份验证。

标记

环境变量

描述

--images-manifest

IMAGES_MANIFEST

必填项。映像清单文件的路径。

--helm-charts-manifest

HELM_CHARTS_MANIFEST

必填项。Helm 图表清单文件的路径。

--target-registry-url

TARGET_REGISTRY_URL

必填。传递目标注册表的 URL。

--source-registry-url

SOURCE_REGISTRY_URL

可选。传递源注册表的 URL;默认值为 registry.uipath.com
要将 Automation Suite 映像上传到注册表,请执行以下操作:
  1. 通过运行以下命令,确保您具有执行 Shell 脚本的必要权限:

    chmod +x mirror-registry.shchmod +x mirror-registry.sh
  2. 如要将 Automation Suite 映像上传到注册表,请运行以下命令:
    ./mirror-registry.sh --target-registry-url my.registry.io:443 --source-registry-url registry.uipath.com --images-manifest /home/myuser/as-images.txt --helm-charts-manifest /home/myuser/as-helm-charts.txt./mirror-registry.sh --target-registry-url my.registry.io:443 --source-registry-url registry.uipath.com --images-manifest /home/myuser/as-images.txt --helm-charts-manifest /home/myuser/as-helm-charts.txt
    注意:对于需要使用项目的注册表(例如 Harbor),请确保将项目名称附加到命令中包含的目标注册表 URL 后,如以下示例所示:
    ./mirror-registry.sh --target-registry-url my.registry.io:443/myproject --source-registry-url registry.uipath.com --images-manifest /home/myuser/as-images.txt --helm-charts-manifest /home/myuser/as-helm-charts.txt./mirror-registry.sh --target-registry-url my.registry.io:443/myproject --source-registry-url registry.uipath.com --images-manifest /home/myuser/as-images.txt --helm-charts-manifest /home/myuser/as-helm-charts.txt 

选项 B:结合使用离线捆绑包和注册表

此方法仅需要跳转计算机能够访问互联网,即可下载离线捆绑包。捆绑包可用后,您可以在未连接互联网的情况下将其上传到符合 OCI 的注册表。

备注:

此方法可能还需要计算机上有额外的空间来解压缩并上传到注册表。 此外,此方法可能比镜像方法需要更长时间。

结合使用注册表的先决条件

要结合使用注册表,您需要以下内容:

  • 与在笔记本电脑上运行脚本相比,推荐使用运行 Linux 发行版的虚拟机;
  • 能够下载并复制离线捆绑包或以某种方式将离线捆绑包传播到虚拟机;
  • Helm 3.8 或更高版本通过私有注册表进行身份验证;
  • 安装、配置 Podman 并使用私有注册表进行身份验证;
  • /var/lib/containers 下的 Podman 需要 150 GiB 的可用磁盘空间,用于在将容器推送到远程注册表之前在本地加载容器。您可以通过在 podman info 命令的输出中更新图形根路径的位置来更改默认路径。
  • 按照官方 Podman 文档中的说明设置TMP_DIR环境变量。
  • as.tar.gz
安装 Podman 和 Helm

您必须确保在计划将 Automation Suite 容器映像和图表上传到注册表的计算机上安装 Podman 和 Helm 并进行身份验证。

  • 要下载 Podman 二进制文件,请参阅官方文档
  • 要对 Podman 注册表进行身份验证,请参阅官方文档。或者,您可以通过将示例凭据替换为实际的注册表凭据,从而使用以下命令:
    podman login my.registry.io:443 --username "admin" --password "secret"podman login my.registry.io:443 --username "admin" --password "secret"
  • 要下载 Helm 二进制文件,请参阅官方文档
  • 要对 Helm 注册表进行身份验证,请参阅官方文档。或者,您可以通过将示例凭据替换为实际的注册表凭据,从而使用以下命令:
    helm registry login my.registry.io:443 --username "admin" --password "secret"helm registry login my.registry.io:443 --username "admin" --password "secret"
下载 as.tar.gz
要下载 as.tar.gz,请参阅下载安装捆绑包
下载可选的 Document Understanding 捆绑包

要下载可选的 Document Understanding 捆绑包,请参阅 Document Understanding 文档

下载 validate-registry.sh
要下载 hydrate-registry.sh 脚本,请参阅下载安装包

将 Automation Suite 映像上传到注册表

要将 Automation Suite 映像上传到注册表,请使用 hydrate-registry.sh 脚本。
hydrate-registry.sh 脚本不需要出站连接,目标注册表除外。
备注:
hydrate-registry.sh 脚本不会对注册表执行身份验证。假定您已通过注册表的身份验证。

标记

描述

--offline-bundle-path

必填。离线捆绑包的路径。

--target-registry-url

必填。传递目标注册表的 URL。

--extract-path

用于解压缩离线捆绑包的位置。该位置可以是 /var/lib/containers自定义位置。确保您至少具有 100 GiB 的存储空间。建议使用 256 GiB 的存储空间。
将 Automation Suite 映像上传到注册表:
  1. 通过运行以下命令,确保我们具有执行 Shell 脚本的必要权限:

    chmod +x hydrate-registry.shchmod +x hydrate-registry.sh
  2. 通过运行以下命令,将 Automation Suite 映像上传到注册表:

    ./hydrate-registry.sh --target-registry-url my.registry.io:443 --offline-bundle-path ./as.tar.gz --extract-path /extract/to/path./hydrate-registry.sh --target-registry-url my.registry.io:443 --offline-bundle-path ./as.tar.gz --extract-path /extract/to/path
注意:对于需要使用项目的注册表(例如 Harbor),请确保将项目名称附加到命令中包含的目标注册表 URL 后,如以下示例所示:
./hydrate-registry.sh --target-registry-url my.registry.io:443/myproject --offline-bundle-path ./as.tar.gz --extract-path /extract/to/path./hydrate-registry.sh --target-registry-url my.registry.io:443/myproject --offline-bundle-path ./as.tar.gz --extract-path /extract/to/path
对于 Document Understanding 离线捆绑包,请确保命令中包含--extract-path ,如以下示例所示:
./hydrate-registry.sh  --target-registry-url my.registry.io:443 --optional-bundle-path ./dusemistructured-2023.10.0.tar.gz --extract-path /tmp./hydrate-registry.sh  --target-registry-url my.registry.io:443 --optional-bundle-path ./dusemistructured-2023.10.0.tar.gz --extract-path /tmp

为符合 OCI 的外部注册表配置证书

要正确配置符合 OCI 的外部注册表,您必须更新计划安装 Automation Suite 的所有计算机的信任存储。 有关如何在安装后执行此步骤的说明,请参阅管理证书

为此,请执行以下步骤:

  1. 将 CA 文件添加到 /etc/pki/ca-trust/source/anchors/ 位置。
  2. 运行 update-ca-trust 以更新操作系统的信任存储。更新信任存储区后,提取的证书文件将合并到 /etc/pki/ca-trust/extracted/ca-bundle.trust.crt 中。
备注:
您必须在 Automation Suite 安装期间提供 CA 证书。您必须在 cluster_config.json 文件的 registry_ca_cert 参数中提供证书。有关详细信息,请参阅符合外部 OCI 的注册表配置

配置临时 Docker 注册表

备注:

仅对于使用集群内注册表的离线安装,才需要执行此步骤。如果您执行使用符合 OCI 的外部注册表的离线安装或在线安装,则可以跳过此步骤。

您必须仅在一个服务器节点上执行此步骤。您必须确保节点具有 512 GiB 的额外容量,才能用作注册表的后端。通常建议将其放置在 /uipath 装载点上。

仅在安装或升级期间才需要临时 Docker 注册表。安装或升级成功后,您就不再需要使用临时注册表,并应将其卸载。

设置临时注册表的先决条件

要设置临时注册表,您需要以下内容:

安装临时注册表

要在其中一个节点上安装临时 Docker 注册表,请运行以下命令:

./configureUiPathAS.sh registry install-temp-registry -i cluster_config.json./configureUiPathAS.sh registry install-temp-registry -i cluster_config.json

标记

描述

-i|--input

可选。接受 cluster_config.json 的路径。仅在更改默认注册表端口和文件路径时才需要。
默认情况下,临时注册表安装在计算机的 30070 端口上,并使用 /uipath/data/registry 文件路径。您必须在负载均衡器和安装临时 Docker 注册表的节点上打开端口 30070
备注:

负载均衡器后端池必须专门以托管临时 Docker 注册表的节点为目标。

如果要更改默认的临时注册表端口和文件路径,则必须更新 cluster_config.json 文件,如以下示例所示:
{
  "infra": {
    "tmp_docker_registry": {
      "node_port": "<new port number>",
      "file_path": "/uipath/data/registry"
    }
  }
}{
  "infra": {
    "tmp_docker_registry": {
      "node_port": "<new port number>",
      "file_path": "/uipath/data/registry"
    }
  }
}

结合使用临时注册表

在结合临时注册表之前,必须安装 Podman。如果您已经验证并安装了所需的 RPM 包,则系统会自动安装 Podman。否则,必须手动安装 Podman,然后再继续配置临时 Docker 注册表以进行离线安装。

安装临时注册表后,请执行以下步骤:
  1. 通过运行以下命令,将临时注册表与容器映像和 Helm 图表结合使用:

    ./configureUiPathAS.sh registry hydrate-temp-registry --offline-bundle /uipath/tmp/as-fs.tar.gz -i cluster_config.json./configureUiPathAS.sh registry hydrate-temp-registry --offline-bundle /uipath/tmp/as-fs.tar.gz -i cluster_config.json
  2. 通过运行以下命令,从临时注册表中为内部注册表设定种子。如果您应用补丁,请执行以下说明中描述的步骤。
    ./configureUiPathAS.sh registry seed-internal-registry -i cluster_config.json./configureUiPathAS.sh registry seed-internal-registry -i cluster_config.json
    备注:

    如果您要将补丁应用于现有的 Automation Suite 版本,请执行以下步骤。 这不适用于 LTS 或 CU。

    有关如何应用 Automation Suite 修补程序的更多详细信息,请参阅应用补丁

    1. 下载 docker-image.jsonversions.json 文件,然后执行以下步骤:
      1. 将目录更改为安装文件夹:

        cd "${INSTALLER_PATH}"cd "${INSTALLER_PATH}"
      2. 创建 docker-image.jsonhelm-charts.json 文件的备份:
        cp versions/docker-images.json versions/docker-images.json.bak
        cp versions/helm-charts.json versions/helm-charts.json.bakcp versions/docker-images.json versions/docker-images.json.bak
        cp versions/helm-charts.json versions/helm-charts.json.bak
      3. 将下载的 docker-images.jsonversions.json 文件复制到安装程序文件夹:
        cp <PATH_OF_PATCH_VERSION_docker-images.json> versions/docker-images.json
        cp <PATH_OF_PATCH_VERSION_versions.json> versions/helm-charts.jsoncp <PATH_OF_PATCH_VERSION_docker-images.json> versions/docker-images.json
        cp <PATH_OF_PATCH_VERSION_versions.json> versions/helm-charts.json
    2. 通过运行以下命令,从临时注册表中为内部注册表设定种子:

      ./configureUiPathAS.sh registry seed-internal-registry -i cluster_config.json./configureUiPathAS.sh registry seed-internal-registry -i cluster_config.json
    3. docker-image.jsonhelm-charts.json 还原为原始文件:
      cp versions/docker-images.json.bak versions/docker-images.json
      cp versions/helm-charts.json.bak versions/helm-charts.jsoncp versions/docker-images.json.bak versions/docker-images.json
      cp versions/helm-charts.json.bak versions/helm-charts.json

标记

描述

--offline-bundle

包含 as-fs.tar.gz 在服务器节点上的位置的文件路径。

-i|--input

可选。cluster_config.json 文件的接收路径。仅在更改默认的 Docker 注册表端口和文件路径时才需要。

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。