UiPath Documentation
automation-suite
2.2510
true
Linux 版 Automation Suite 安装指南
重要 :
请注意,此内容已使用机器翻译进行了部分本地化。 新发布内容的本地化可能需要 1-2 周的时间才能完成。

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

有关配置符合 OCI 的注册表以存储容器映像和 Helm 图表以在 Automation Suite 中进行离线安装的参考。

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

确保运行目标安装程序/opt/UiPathAutomationSuite/latest/installer中存在的脚本。

备注:

您必须选择以下选项之一才能设置符合 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 GB。提取所需的存储容量约为 200 GB, /var/tmp必须为 256 GB。
备注:

建议从管理计算机或 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 GB 可用磁盘空间用于 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 脚本不会对注册表执行身份验证。假定您已通过注册表的身份验证。

下表描述了mirror-registry.sh脚本的标志和环境变量。

标记环境变量描述
--images-manifestIMAGES_MANIFEST必填项。映像清单文件的路径。
--helm-charts-manifestHELM_CHARTS_MANIFEST必填项。Helm 图表清单文件的路径。
--target-registry-urlTARGET_REGISTRY_URL必填。传递目标注册表的 URL。
--source-registry-urlSOURCE_REGISTRY_URL可选。 传递源注册表的 URL。 默认为registry.uipath.com

要将 Automation Suite 映像上传到注册表,请执行以下操作:

  1. 通过运行以下命令,确保您具有执行 Shell 脚本的必要权限:

    chmod +x mirror-registry.sh
    
    chmod +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
    
    备注:

    对于需要使用项目的注册表(例如 Hub),请确保将项目名称附加到命令中包含的目标注册表 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 GB 的可用磁盘空间,用于在将容器推送到远程注册表之前在本地加载容器。如果您需要更改默认路径,请更新/etc/containers/storage.conf文件中的graphRoot变量。

例如,您可以使用sudo nano /etc/containers/storage.conf编辑storage.conf ,将graphRoot更改为新路径,然后使用podman info命令验证路径是否已更新。

  • 按照官方 Podman 文档中的说明设置TMP_DIR环境变量。此变量指定在拉取和构建操作期间下载的容器映像的临时存储,这对于在/var/tmp受限时避免空间不足错误至关重要。
  • 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 脚本不会对注册表执行身份验证。假定您已通过注册表的身份验证。

下表描述了hydrate-registry.sh脚本的可用标志。

标记描述
--offline-bundle-path必填。离线捆绑包的路径。
--target-registry-url必填。传递目标注册表的 URL。
--extract-path用于解压缩离线捆绑包的位置。该位置可以是/var/lib/containers自定义位置。确保您至少具有 100 GB 的存储空间。建议使用 256 GB 的存储空间。

将 Automation Suite 映像上传到注册表:

  1. 通过运行以下命令,确保我们具有执行 Shell 脚本的必要权限:

    chmod +x hydrate-registry.sh
    chmod +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
    
备注:

对于需要使用项目的注册表(例如 Hub),请确保将项目名称附加到命令中包含的目标注册表 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 GB 的额外容量,才能用作注册表的后端。通常建议将其放置在/uipath装载点上。

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

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

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

安装临时注册表

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

./bin/uipathctl registry install-temp-registry -i /opt/UiPathAutomationSuite/latest/installer/cluster_config.json
./bin/uipathctl registry install-temp-registry -i /opt/UiPathAutomationSuite/latest/installer/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 图表结合使用:

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

    ./bin/uipathctl rke2 registry hydrate-registry /opt/UiPathAutomationSuite/latest/installer/cluster_config.json
    ./bin/uipathctl rke2 registry hydrate-registry /opt/UiPathAutomationSuite/latest/installer/cluster_config.json
    
    备注:

    如果您在运行上述命令时遇到内存问题,请使用--serial选项来防止出现内存不足问题:

    ./bin/uipathctl rke2 registry hydrate-registry /opt/UiPathAutomationSuite/latest/installer/cluster_config.json --serial
    ./bin/uipathctl rke2 registry hydrate-registry /opt/UiPathAutomationSuite/latest/installer/cluster_config.json --serial
    
    备注:

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

    1. 下载 docker-image.jsonversions.json 文件,然后执行以下步骤:

      1. 将目录更改为安装文件夹:
      cd "${INSTALLER_PATH}"
      cd "${INSTALLER_PATH}"
      
      1. 创建 docker-image.jsonhelm-charts.json 文件的备份:
      cp versions/docker-images.json versions/docker-images.json.bak
      cp versions/helm-charts.json versions/helm-charts.json.bak
      cp versions/docker-images.json versions/docker-images.json.bak
      cp versions/helm-charts.json versions/helm-charts.json.bak
      
      1. 将下载的 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.json
      cp <PATH_OF_PATCH_VERSION_docker-images.json> versions/docker-images.json
      cp <PATH_OF_PATCH_VERSION_versions.json> versions/helm-charts.json
      
    2. 通过运行以下命令,从临时注册表中为内部注册表设定种子:

      ./bin/uipathctl rke2 registry hydrate-registry /opt/UiPathAutomationSuite/latest/installer/cluster_config.json
      ./bin/uipathctl rke2 registry hydrate-registry /opt/UiPathAutomationSuite/latest/installer/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.json
      cp versions/docker-images.json.bak versions/docker-images.json
      cp versions/helm-charts.json.bak versions/helm-charts.json
      
  3. 如果您使用的是 Document Understanding 新式项目,请种子dumodernexperience捆绑包。有关详细信息,请参阅离线捆绑包安装

  • --offline-bundle :包含as-fs.tar.gz在服务器节点上的位置的文件路径。
  • -i--input :必填。cluster_config.json 文件的接收路径。

此页面有帮助吗?

连接

需要帮助? 支持

想要了解详细内容? UiPath Academy

有问题? UiPath 论坛

保持更新