UiPath Documentation
automation-suite
2.2510
true
Guía de instalación de Automation Suite en Linux
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.

Configurar solicitudes de recursos y límites para cargas de trabajo creadas por uipathctl

Cómo ajustar las solicitudes y límites de CPU y memoria cuando las cargas de trabajo creadas por uipathctl no se programan o no se completan.

Descripción

Al ejecutar un comando uipathctl, una carga de trabajo de Kubernetes creada por el comando puede fallar debido a sus requisitos de CPU o memoria.

Puedes encontrar uno de los siguientes síntomas:

  • El pod permanece en el estado Pending y sus eventos contienen Insufficient cpu o Insufficient memory.
  • El pod se termina con el estado OOMKilled.
  • La carga de trabajo está limitada por la CPU o no se completa antes de que se agote el tiempo de espera del comando.
  • Una política de admisión rechaza el pod porque sus solicitudes de recursos o límites no cumplen con un ResourceQuota o LimitRange configurado en el espacio de nombres.

El problema puede afectar a las cargas de trabajo creadas por uipathctl utilizadas para comprobaciones de requisitos previos, comprobaciones de estado, generación de paquetes de soporte, migraciones, operaciones de Helm y actualizaciones.

Solución

Primero, identifica el pod afectado e inspecciona sus eventos:

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

Dependiendo de la condición notificada:

  • Para OOMKilled, aumente el límite de memoria. Aumenta también la solicitud de memoria si el pod debe programarse en un nodo con más memoria disponible.
  • Para un pod Pending con Insufficient cpu o Insufficient memory, reduce la solicitud solo si la carga de trabajo puede ejecutarse de forma segura con menos capacidad garantizada. De lo contrario, añade capacidad del clúster.
  • Para errores de cuota o rango límite, especifica solicitudes y límites que cumplan con la política configurada en el espacio de nombres de destino.
  • Para cargas de trabajo lentas o con CPU limitada, aumenta el límite de CPU.

Puedes cambiar los requisitos de recursos en input.json o anularlos para un solo comando.

Configurar los requisitos de recursos en input.json

uipathctl agrupa sus cargas de trabajo en las siguientes clases de recursos:

ClaseOperacionesSolicitudes predeterminadas (CPU/memoria)Límites predeterminados (CPU/memoria)
diagnosticComprobaciones de estado y sondeos de validación de solo lectura50m / 64Mi250m / 256Mi
operationalComprobaciones de requisitos previos, paquetes de soporte, operaciones de Helm y migración de datos de identidad1m / 1k2 / 2Gi
workloadMigraciones de almacén de objetos, PVC y MongoDB, y el servidor de archivos de actualización250m / 512Mi2 / 2Gi

Para cambiar los valores predeterminados de los comandos que utilizan la configuración de Automation Suite, añade workload_resources a input.json. Por ejemplo, para aumentar los recursos disponibles para cargas de trabajo de migración con muchos datos, utiliza la siguiente configuración:

{
  "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"
      }
    }
  }
}

Puedes configurar las clases diagnostic, operational y workload de forma independiente. También puedes especificar solo los valores que deseas cambiar. Cualquier valor de CPU o memoria omitido conserva su valor predeterminado.

Las solicitudes no pueden superar sus límites correspondientes. Utiliza cantidades de recursos estándar de Kubernetes, como 500m o 1 para CPU y 256Mi o 1Gi para memoria.

Anular los requisitos de recursos para un solo comando

Para los comandos que exponen las opciones --probe-cpu y --probe-memory, puedes anular los requisitos de recursos del pod de ayudante creado por ese comando. Por ejemplo:

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

Cada opción establece tanto la solicitud como el límite para el recurso especificado. Si especificas solo una opción, el otro recurso conserva su valor efectivo.

Las opciones están disponibles para los siguientes comandos:

  • 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

Cuando se aplican ambos métodos de configuración, uipathctl resuelve los valores en el siguiente orden, donde el último valor tiene prioridad:

  1. El valor predeterminado integrado.
  2. El valor workload_resources en input.json o la configuración del clúster aplicada.
  3. La opción de línea de comandos --probe-cpu o --probe-memory.

Después de actualizar los requisitos de recursos, vuelve a ejecutar el comando afectado y confirma que la carga de trabajo creada por uipathctl se inicia correctamente.

Establece las solicitudes y límites más pequeños que permitan completar la carga de trabajo. Las solicitudes demasiado altas pueden impedir la programación, mientras que los límites demasiado bajos pueden provocar la limitación o la finalización.

  • Descripción
  • Solución
  • Configurar los requisitos de recursos en input.json
  • Anular los requisitos de recursos para un solo comando

¿Te ha resultado útil esta página?

Conectar

¿Necesita ayuda? Soporte

¿Quiere aprender? UiPath Academy

¿Tiene alguna pregunta? Foro de UiPath

Manténgase actualizado