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

为 uipathctl 创建的工作负载配置资源请求和限制

当 uipathctl 创建的工作负载无法计划或完成时,如何调整 CPU 和内存请求和限制。

描述

运行 uipathctl 命令时,由该命令创建的 Kubernetes 工作负载可能会由于其 CPU 或内存要求而失败。

您可能会遇到以下任一症状:

  • Pod 保持 Pending 状态,并且其事件包含 Insufficient cpuInsufficient memory
  • Pod 以 OOMKilled 状态终止。
  • 工作负载受限于 CPU,或在命令超时前无法完成。
  • 准入策略拒绝 Pod,因为其资源请求或限制不符合命名空间中配置的 ResourceQuotaLimitRange 要求。

此问题可能会影响 uipathctl 创建的用于先决条件检查、运行状况检查、支持包生成、迁移、Helm 操作和升级的工作负载。

解决方案

首先,识别受影响的 Pod 并检查其事件:

kubectl get pods -A
kubectl describe pod <pod-name> -n <namespace>
kubectl get pods -A
kubectl describe pod <pod-name> -n <namespace>

根据报告的情况:

  • 对于 OOMKilled,请增加内存限制。如果必须在具有更多可用内存的节点上计划 Pod,则同时增加内存请求。
  • 对于具有 PendingInsufficient cpuInsufficient memory Pod,仅在工作负载可以在保证容量较低的情况下安全运行时减少请求。否则,请添加集群容量。
  • 对于配额或限制范围错误,请指定符合目标命名空间中配置策略的请求和限制。
  • 对于速度慢或 CPU 节流的工作负载,请增加 CPU 限制。

您可以更改 input.json 中的资源要求,也可以针对单个命令覆盖资源要求。

在 input.json 中配置资源要求

uipathctl 将其工作负载分组为以下资源类别:

等级运营默认请求 (CPU/内存)默认限制 (CPU/内存)
diagnostic运行状况检查和只读验证探测器50m / 64Mi250m / 256Mi
operational先决条件检查、支持捆绑包、Helm 操作和身份数据迁移1m / 1k2 / 2Gi
workload对象存储、PVC 和 MongoDB 迁移,以及升级文件服务器250m / 512Mi2 / 2Gi

要更改使用 Automation Suite 配置的命令的默认值,请将 workload_resources 添加到 input.json。例如,要增加可用于数据量大的迁移工作负载的资源,请使用以下配置:

{
  "workload_resources": {
    "workload": {
      "requests": {
        "cpu": "500m",
        "memory": "1Gi"
      },
      "limits": {
        "cpu": "2",
        "memory": "4Gi"
      }
    }
  }
}
{
  "workload_resources": {
    "workload": {
      "requests": {
        "cpu": "500m",
        "memory": "1Gi"
      },
      "limits": {
        "cpu": "2",
        "memory": "4Gi"
      }
    }
  }
}

您可以独立配置 diagnosticoperationalworkload 类。您也可以仅指定要更改的值。任何省略 CPU 或内存的值都将保留其默认值。

请求不能超过其相应的限制。使用标准 Kubernetes 资源数量,例如对于 CPU,使用 500m1,对于内存,使用 256Mi1Gi

单个命令的覆盖资源要求

对于公开 --probe-cpu--probe-memory 选项的命令,您可以覆盖该命令创建的帮助程序 Pod 的资源要求。例如:

uipathctl health check --probe-cpu 500m --probe-memory 512Mi
uipathctl health check --probe-cpu 500m --probe-memory 512Mi

每个选项都可设置指定资源的请求和限制。如果仅指定一个选项,则其他资源将保留其有效值。

这些选项可用于以下命令:

  • uipathctl health check
  • uipathctl health test
  • uipathctl health diagnose
  • uipathctl config add-host-admin
  • uipathctl config enable-basic-auth
  • uipathctl service aicenter sync-skills
  • uipathctl service aicenter sync-skill-status
  • uipathctl service orchestrator notifications-migration start

当两种配置方法都适用时,uipathctl 将按以下顺序解析值,后一个值优先:

  1. 内置默认值。
  2. workload_resources 或所应用的集群配置中的 input.json 值。
  3. --probe-cpu--probe-memory 命令行选项。

更新资源要求后,请再次运行受影响的命令,并确认 uipathctl 创建的工作负载已成功启动。

设置允许完成工作负载的最小请求和限制。请求过高可能会阻止计划,而限制过低可能会导致限制或终止。

  • 描述
  • 解决方案
  • 在 input.json 中配置资源要求
  • 单个命令的覆盖资源要求

此页面有帮助吗?

连接

需要帮助? 支持

想要了解详细内容? UiPath Academy

有问题? UiPath 论坛

保持更新