- Información general
- Requisitos
- Preinstalación
- Preparar la instalación
- Descarga de los paquetes de instalación
- Configurar el registro compatible con OCI
- Conceder permisos de instalación
- Instalar y configurar la malla de servicio
- Instalar y configurar la herramienta GitOps
- Instalar el operador de secretos externos en Kubernetes
- Aplicar configuraciones varias
- Ejecutar uipathctl
- Instalación
- Después de la instalación
- Migración y actualización
- Supervisión y alertas
- Administración de clústeres
- Configuración específica del producto
- Configuración avanzada de Orchestrator
- Configurar parámetros de Orchestrator
- Configurar AppSettings
- Configurar el tamaño máximo de la solicitud
- Anular la configuración de almacenamiento a nivel de clúster
- Configurar NLog
- Guardar los registros del robot en Elasticsearch
- Configurar almacenes de credenciales
- Configurar clave de cifrado por tenant
- Limpiar la base de datos de Orchestrator
- Omitir la instalación de la biblioteca de host
- Ai Trust Layer
- Solución de problemas
- Error de aprovisionamiento de AI Center después de actualizar a 2023.10 o posterior
- Volúmenes de Insights creados en dos zonas diferentes después de la migración
- La actualización falla debido a los tamaños de PVC de Insights anulados
- Los componentes de copia de seguridad de Velero permanecen después de actualizar en AKS desde Automation Suite 2024.10.x
- La configuración de la copia de seguridad no funciona debido a un fallo en la conexión a Azure Government
- Los pods en el espacio de nombres de UiPath se atascaban al habilitar los taints de nodo personalizados
- No se puede iniciar Automation Hub y Apps con la configuración de proxy
- La copia de seguridad de Velero falla con el error de validación fallida
- Solución de problemas de secretos externos
- Solución de problemas de Temporal como servicio
- Los pods de AI Center y Document Understanding no se inician con la verificación del certificado TLS habilitada
- Errores de validación del certificado TLS
- Fluentd no exporta registros en entornos IPv6
- Studio Desktop no puede cargar conectores y actividades de Integration Service
- Mitigación manual de Política de red de ArgoCD (GHSA-47m3-95c7-g2g8)
- Configurar solicitudes de recursos y límites para cargas de trabajo creadas por uipathctl
Gestionar el clúster en ArgoCD
Utiliza ArgoCD para gestionar las implementaciones de clústeres de Automation Suite en EKS/AKS.
Información general
ArgoCD es una herramienta declarativa de entrega continua de GitOps para Kubernetes. Está diseñado como un controlador de Kubernetes que supervisa continuamente las aplicaciones en ejecución de UiPath® y comprueba el estado actual con el estado de destino deseado como se especifica en el registro de Docker. Para obtener más información, consulta la documentación de ArgoCD.
Los administradores pueden tener una descripción general del clúster, las configuraciones, el estado de las aplicaciones y el estado, todo a través de una simple IU o CLI. ArgoCD viene con su propio Redis incluido de código abierto, que admite configuraciones HA y no HA.
Automation Suite utiliza ArgoCD en los siguientes escenarios:
- Instalar y actualizar los componentes de Fabric y los servicios básicos de UiPath®.
- Automatizar la implementación de los estados de aplicación deseados en los entornos de destino especificados. ArgoCD sigue el patrón de GitOps de usar repositorios de Git / helm como fuente de verdad para definir el estado de la aplicación deseado.
- Realizar un seguimiento del estado de la instalación. Si la instalación falló en un punto específico y la reanuda después de un tiempo, ArgoCD omite todos los pasos que ya están sincronizados y reanuda desde el punto en el que falló.
- Autocuración de las aplicaciones. Si elimina por error cualquiera de los objetos, los manifiesto se sincronizarán automáticamente.
Escenarios de solo lectura de ArgoCD
Puedes utilizar la cuenta de ArgoCD en los siguientes escenarios de solo lectura:
- Visualizar todas tus aplicaciones, pods y servicios en una interfaz sencilla
- Supervisar el estado de todas tus aplicaciones, pods y servicios
- Identificar rápidamente los problemas en su implementación
- Resincronizando tu aplicación en tu clúster
Escenarios avanzados de ArgoCD
You must not modify any other settings or parameters except for the ones listed in this section.
You can use the ArgoCD admin account in the following advanced scenarios:
- Cambiar parámetros solo con fines de depuración; por ejemplo, deshabilitar la autocuración;
- Eliminar pods;
- Solución de problemas;
- Gestionar la configuración personalizada de Orchestrator; por ejemplo, configurar la clave de cifrado por tenant;
- Actualización de las cadenas de conexión a la base de datos;
- Sincronizando aplicaciones.
Nota:
Asegúrate de consultar la documentación de UiPath® adecuada antes de eliminar o cambiar la configuración avanzada en la interfaz de usuario.
Acceder a ArgoCD
ArgoCD admite dos métodos de autenticación:
- nombre de usuario y contraseña : método de autenticación predeterminado;
- SSO - recommended authentication method. You can enable SSO authentication post-installation. For details, refer to Enabling SSO for ArgoCD.
Username and password authentication
Accessing the ArgoCD admin account
Para acceder a la cuenta de administrador de ArgoCD usando nombre de usuario y contraseña, siga los siguientes pasos:
-
Accede a la siguiente URL:
https://alm.${CONFIG_CLUSTER_FQDN}. -
Enter the following username: admin.
-
Accede a la contraseña:
kubectl get secret -n argocd argocd-initial-admin-secret -o jsonpath='{.data.password}' | base64 -dkubectl get secret -n argocd argocd-initial-admin-secret -o jsonpath='{.data.password}' | base64 -d -
Introduzca su contraseña.
Importante:You must use the ArgoCD admin account only for advanced scenarios. It can cause disruptive action on the cluster if not used with caution.
SSO authentication
Para acceder a ArgoCD usando SSO, siga los siguientes pasos:
- Selecciona el botón SSO en la página de inicio de sesión de ArgoCD.
- Introduce las credenciales de dominio de tu empresa.
Habilitación de SSO para ArgoCD
Información general
Para habilitar la autenticación SSO, debes utilizar la herramienta de línea de comandos uipathctl.
Preparing the configuration files
Debes generar el archivo RBAC antes de habilitar SSO para ArgoCD.
The RBAC file
El archivo RBAC contiene reglas de acceso.
Para obtener más información sobre las definiciones de roles integradas, consulta la documentación de ArgoCD.
For details on the ArgoCD account types and their permissions, refer to Managing the cluster in ArgoCD.
Recomendamos utilizar estos roles al definir tus grupos, pero puedes crear tu propio conjunto de permisos.
Configuring the RBAC file
-
Cree un archivo con el nombre
policy.csvejecutando el siguiente comando:uipathctl config argocd generate-rbacuipathctl config argocd generate-rbac -
Agregue el siguiente contenido al archivo
policy.csvy guárdelo:p, role:uipath-sync, applications, get, */*, allow p, role:uipath-sync, applications, sync, */*, allow g, argocdro, role:uipath-syncp, role:uipath-sync, applications, get, */*, allow p, role:uipath-sync, applications, sync, */*, allow g, argocdro, role:uipath-sync -
Asocia tus grupos RBAC con el rol de administrador integrado y el rol de solo lectura de UiPath® argocdro , anexando las siguientes líneas al archivo
policy.csvRBAC:g, <your_ldap_readonly_group_name>, role:uipath-sync g, <your_ldap_admin_group_name>, role:adming, <your_ldap_readonly_group_name>, role:uipath-sync g, <your_ldap_admin_group_name>, role:admin -
Guarde el archivo RBAC
policy.csvactualizado. -
Crea una nueva sección llamada
policy.defaulten el mapa de configuraciónargo-cd-rbac-cm, después de la secciónpolicy.csv, como se muestra en el siguiente ejemplo:policy.csv: | p, role:org-admin, applications, *, /, allow p, role:org-admin, clusters, get, *, allow p, role:org-admin, repositories, get, *, allow p, role:org-admin, repositories, create, *, allow p, role:org-admin, repositories, update, *, allow p, role:org-admin, repositories, delete, *, allow g, "694afc07-6767-8998-bf84-ab80b53379df", role:org-admin # (azure group assigned to role) policy.default: role:readonlypolicy.csv: | p, role:org-admin, applications, *, /, allow p, role:org-admin, clusters, get, *, allow p, role:org-admin, repositories, get, *, allow p, role:org-admin, repositories, create, *, allow p, role:org-admin, repositories, update, *, allow p, role:org-admin, repositories, delete, *, allow g, "694afc07-6767-8998-bf84-ab80b53379df", role:org-admin # (azure group assigned to role) policy.default: role:readonly -
Para configurar SSO con OIDC, consulta la documentación de ArgoCD.
Ejemplo
Si tu grupo LDAP para administradores de ArgoCD es Administradores y el grupo LDAP para usuarios de solo lectura de ArgoCD es Lectores, el archivo RBAC debe ser similar al del siguiente ejemplo:
p, role:uipath-sync, applications, get, */*, allow
p, role:uipath-sync, applications, sync, */*, allow
g, argocdro, role:uipath-sync
g, Readers, role:uipath-sync
g, Administrators, role:admin
p, role:uipath-sync, applications, get, */*, allow
p, role:uipath-sync, applications, sync, */*, allow
g, argocdro, role:uipath-sync
g, Readers, role:uipath-sync
g, Administrators, role:admin
Para casos de uso más avanzados, el siguiente ejemplo muestra el archivo RBAC predeterminado:
# Built-in policy which defines two roles: role:readonly and role:admin,
# and additionally assigns the admin user to the role:admin role.
# There are two policy formats:
# 1. Applications, logs, and exec (which belong to a project):
# p, <user/group>, <resource>, <action>, <project>/<object>
# 2. All other resources:
# p, <user/group>, <resource>, <action>, <object>
p, role:readonly, applications, get, */*, allow
p, role:readonly, certificates, get, *, allow
p, role:readonly, clusters, get, *, allow
p, role:readonly, repositories, get, *, allow
p, role:readonly, projects, get, *, allow
p, role:readonly, accounts, get, *, allow
p, role:readonly, gpgkeys, get, *, allow
p, role:readonly, logs, get, */*, allow
p, role:admin, applications, create, */*, allow
p, role:admin, applications, update, */*, allow
p, role:admin, applications, delete, */*, allow
p, role:admin, applications, sync, */*, allow
p, role:admin, applications, override, */*, allow
p, role:admin, applications, action/*, */*, allow
p, role:admin, applicationsets, get, */*, allow
p, role:admin, applicationsets, create, */*, allow
p, role:admin, applicationsets, update, */*, allow
p, role:admin, applicationsets, delete, */*, allow
p, role:admin, certificates, create, *, allow
p, role:admin, certificates, update, *, allow
p, role:admin, certificates, delete, *, allow
p, role:admin, clusters, create, *, allow
p, role:admin, clusters, update, *, allow
p, role:admin, clusters, delete, *, allow
p, role:admin, repositories, create, *, allow
p, role:admin, repositories, update, *, allow
p, role:admin, repositories, delete, *, allow
p, role:admin, projects, create, *, allow
p, role:admin, projects, update, *, allow
p, role:admin, projects, delete, *, allow
p, role:admin, accounts, update, *, allow
p, role:admin, gpgkeys, create, *, allow
p, role:admin, gpgkeys, delete, *, allow
p, role:admin, exec, create, */*, allow
g, role:admin, role:readonly
g, admin, role:admin
# Built-in policy which defines two roles: role:readonly and role:admin,
# and additionally assigns the admin user to the role:admin role.
# There are two policy formats:
# 1. Applications, logs, and exec (which belong to a project):
# p, <user/group>, <resource>, <action>, <project>/<object>
# 2. All other resources:
# p, <user/group>, <resource>, <action>, <object>
p, role:readonly, applications, get, */*, allow
p, role:readonly, certificates, get, *, allow
p, role:readonly, clusters, get, *, allow
p, role:readonly, repositories, get, *, allow
p, role:readonly, projects, get, *, allow
p, role:readonly, accounts, get, *, allow
p, role:readonly, gpgkeys, get, *, allow
p, role:readonly, logs, get, */*, allow
p, role:admin, applications, create, */*, allow
p, role:admin, applications, update, */*, allow
p, role:admin, applications, delete, */*, allow
p, role:admin, applications, sync, */*, allow
p, role:admin, applications, override, */*, allow
p, role:admin, applications, action/*, */*, allow
p, role:admin, applicationsets, get, */*, allow
p, role:admin, applicationsets, create, */*, allow
p, role:admin, applicationsets, update, */*, allow
p, role:admin, applicationsets, delete, */*, allow
p, role:admin, certificates, create, *, allow
p, role:admin, certificates, update, *, allow
p, role:admin, certificates, delete, *, allow
p, role:admin, clusters, create, *, allow
p, role:admin, clusters, update, *, allow
p, role:admin, clusters, delete, *, allow
p, role:admin, repositories, create, *, allow
p, role:admin, repositories, update, *, allow
p, role:admin, repositories, delete, *, allow
p, role:admin, projects, create, *, allow
p, role:admin, projects, update, *, allow
p, role:admin, projects, delete, *, allow
p, role:admin, accounts, update, *, allow
p, role:admin, gpgkeys, create, *, allow
p, role:admin, gpgkeys, delete, *, allow
p, role:admin, exec, create, */*, allow
g, role:admin, role:readonly
g, admin, role:admin
Habilitación de SSO para ArgoCD
Después de preparar el archivo RBAC, puedes habilitar SSO para ArgoCD:
-
Añade las siguientes líneas al archivo
input.json:{ "fabric": { "argocd_rbac_config_file": "/path/to/policy.csv" } }{ "fabric": { "argocd_rbac_config_file": "/path/to/policy.csv" } } -
Para permitir que el instalador de Automation Suite genere la configuración, ejecuta el siguiente comando.
uipathctl prereq create input.json --versions versions.jsonuipathctl prereq create input.json --versions versions.jsonFor details, refer to Generating configurations automatically.
-
Para comprobar los requisitos previos en función de las entradas que configuraste en
input.json, ejecuta el siguiente comando.uipathctl prereq run input.json --versions versions.jsonuipathctl prereq run input.json --versions versions.jsonFor details, refer to Checking the prerequisites.
-
Aplica la configuración ejecutando el siguiente comando:
uipathctl manifest apply input.json --versions versions.jsonuipathctl manifest apply input.json --versions versions.json