- Información general
- Requisitos
- Instalación
- Preguntas y respuestas: plantillas de implementación
- Descargar los paquetes de instalación
- parámetros de install-uipath.sh
- Habilitar el complemento de alta disponibilidad (HAA) de Redis para el clúster
- Archivo de configuración de Document Understanding
- Inclusión de un nodo agente dedicado compatible con GPU
- Conexión de la aplicación Task Mining
- Añadir un nodo agente dedicado a Task Mining
- Después de la instalación
- Administración de clústeres
- Supervisión y alertas
- Migración y actualización
- Configuración específica del producto
- Buenas prácticas y mantenimiento
- Solución de problemas
- Cómo solucionar los problemas de los servicios durante la instalación
- Cómo desinstalar el clúster
- Cómo limpiar los artefactos sin conexión para mejorar el espacio en disco
- How to disable TLS 1.0 and 1.1
- Cómo habilitar el registro de Istio
- Cómo limpiar manualmente los registros
- Cómo limpiar los registros antiguos almacenados en el depósito sf-logs
- Cómo depurar instalaciones de Automation Suite fallidas
- Cómo deshabilitar la descarga de la suma de comprobación TX
- No se puede ejecutar una instalación sin conexión en el sistema operativo RHEL 8.4
- Error al descargar el paquete
- La instalación sin conexión falla porque falta un binario
- Problema de certificado en la instalación sin conexión
- Error de validación de la cadena de conexión SQL
- Fallo tras la actualización del certificado
- Automation Suite requiere que Backlog_wait_time se establezca 1
- No se puede iniciar la sesión después de la migración
- Establecer un intervalo de tiempo de espera para los portales de gestión
- Actualizar las conexiones del directorio subyacente
- kinit: no se puede encontrar la KDC para el territorio <AD Domain> mientras se obtienen las credenciales iniciales
- kinit: keytab no contiene claves adecuadas para *** mientras se obtienen las credenciales iniciales
- La operación GSSAPI ha fallado con un error: se ha suministrado un código de estado no válido (las credenciales del cliente han sido revocadas).
- Inicio de sesión fallido para el usuario <ADDOMAIN><aduser>. Razón: cuenta deshabilitada.
- Alarma recibida por trabajo de actualización Kerberos-tgt fallido
- Proveedor SSPI: servidor no encontrado en la base de datos de Kerberos
- Fallo en la obtención de la imagen de Sandbox
- Los pods no se muestran en la interfaz de usuario de ArgoCD
- Fallo de la sonda Redis
- El servidor RKE2 no se inicia
- Secreto no encontrado en el espacio de nombres UiPath
- ArgoCD entra en estado de progreso tras la primera instalación
- Inconsistencia inesperada, ejecuta fsck manualmente
- Falta el operador de Self-heal y el repositorio de Sf-k8-utils
- MongoDB o aplicaciones empresariales degradadas después de la restauración del clúster
- Servicios en mal estado después de la restauración o reversión del clúster
- Document Understanding no se encuentra en la barra izquierda de Automation Suite
- Estado fallido al crear una sesión de etiquetado de datos
- Estado fallido al intentar implementar una habilidad ML
- El trabajo de migración falla en ArgoCD
- El reconocimiento de la escritura manual con el extractor de formularios inteligente no funciona
- Uso de la herramienta de diagnóstico de Automation Suite
- Uso del paquete de soporte de Automation Suite
- Explorar registros
Visión general de los certificados
For details on the certificates you must provide, see Certificate requirements.
Comprender el funcionamiento de los certificados de confianza
La comunicación entre productos dentro de Automation Suite se realiza a través del FQDN del cluster. Los productos no pueden utilizar URL internas para comunicarse entre sí. Por ejemplo, Orchestrator puede conectarse a Identity Server para la autenticación de usuarios a través de https://automationsuite.mycompany.com/identity.
Aunque dos productos diferentes de Automation Suite deben utilizar el FQDN del clúster, también pueden contener varios microservicios. Estos microservicios pueden utilizar URL internas para comunicarse entre sí.
Entender cómo funciona la comunicación
El siguiente diagrama explica cómo el cliente se conecta a un servicio y cómo se realiza la autenticación a través del Identity Service.
-
El cliente establece una conexión con el servicio mediante URL, es decir, Orchestrator, Apps, Insights, etc., utilizando la siguiente URL:
https://automationsuite.mycompany.com/myorg/mytenant/service_. -
Istio intercepta la llamada, y basándose en la ruta de
service_, reenvía la llamada al servicio específico. -
El servicio llama a Identity Server para autenticar la solicitud entrante del robot a través de
https://automationsuite.mycompany.com/myorg/mytenant/identity_. -
Istio intercepta la llamada, y basándose en la ruta
identity_, reenvía la petición a Identity Server. -
Identity Server devuelve la respuesta con el resultado a Istio.
-
Istio devuelve la respuesta al servicio.Como la llamada se realiza mediante el protocolo HTTPS, Istio devuelve la respuesta con el certificado TLS para que la conexión sea segura. Si el servicio confía en el certificado del servidor devuelto por Istio, aprueba la respuesta. De lo contrario, el servicio rechaza la respuesta.
-
El servicio prepara la respuesta y la devuelve a Istio.
-
Istio reenvía la solicitud al cliente.Si la máquina del cliente confía en el certificado, la solicitud completa tiene éxito. De lo contrario, la solicitud fallará.
Comprender cómo se comunican los robots y Orchestrator
Esta sección describe un escenario en el que un robot intenta conectarse a Orchestrator en Automation Suite. El siguiente diagrama explica cómo el robot se conecta a Orchestrator y cómo se realiza la autenticación a través del Identity Server.
-
UiPath Robot realiza una conexión con Orchestrator utilizando la siguiente URL:
https://automationsuite.mycompany.com/myorg/mytenant/orchestrator_ -
Istio intercepta la llamada, y, según la ruta
orchestrator_, la reenvía al servicio Orchestrator -
El servicio Orchestrator llama a Identity Server para autenticar la solicitud entrante del robot a través de
https://automationsuite.mycompany.com/myorg/mytenant/identity_. -
Istio intercepta la llamada, y basándose en la ruta
identity_, reenvía la petición a Identity Server. -
Identity Server devuelve la respuesta con el resultado a Istio.
-
Istio devuelve la respuesta a Orchestrator. Como la llamada se realiza mediante el protocolo HTTPS, Istio devuelve la respuesta con el certificado TLS para que la conexión sea segura. Si Orchestrator confía en el certificado del servidor devuelto por Istio, también aprueba la respuesta. De lo contrario, Orchestrator rechaza la respuesta.
-
Orchestrator prepara la respuesta y la devuelve a Istio.
-
Istio reenvía la solicitud al robot. Si la máquina del robot confía en el certificado, la solicitud completa tiene éxito. De lo contrario, la solicitud fallará.
Comprender la arquitectura de contenedores relacionada con los certificados
Nivel de contenedor
En este ejemplo, el contenedor tiene su propio sistema operativo (RHEL OS), y Service puede representar un Orchestrator que se ejecuta sobre RHEL OS.
Cada sistema operativo tiene su propio almacén de certificados. En el caso de RHEL OS, el almacén de confianza de certificados se encuentra en /etc/pki/ca-trust/ca/.
Esta ruta es donde RHEL OS almacena todos los certificados. Cada contenedor tendrá su propio almacén de confianza de certificados. Como parte de la configuración de Automation Suite, inyectamos el certificado de cadena completo que contiene el certificado raíz, todos los certificados intermedios, así como el certificado de hoja, y los almacenamos en esta ruta. Dado que los servicios confían en los certificados raíz e intermedio, confían automáticamente en cualquier otro certificado creado por los certificados raíz e intermedio.
Nivel de Pod
En Automation Suite se ejecutan cientos de contenedores.Añadir manualmente certificados para cada uno de estos contenedores para todos los servicios sería una tarea exigente. Sin embargo, Automation Suite incluye un volumen compartido y un contenedor Init cert-trustor para ayudar en esta tarea. Init es un contenedor especializado que se ejecuta antes de los contenedores de aplicaciones en un Pod, y su ciclo de vida termina tan pronto como completa su trabajo.
En el siguiente ejemplo, el servicio Orchestrator se ejecuta en un pod. Como recordatorio, un pod puede contener más de un contenedor. En este pod, inyectamos un contenedor Init más llamado Cert-trustor.Este contenedor contendrá el certificado raíz, los certificados intermedios y el certificado hoja.
El volumen compartido se adjunta tanto al contenedor cert-trustor como al contenedor de servicios de Orchestrator. Tiene la misma ruta que el almacén de confianza de certificados RHEL OS: /etc/pki/ca-trust/ca/source/anchors.
Antes de que Orchestrator pueda ejecutarse, Cert-trustor realiza un trabajo que añadirá los certificados en el volumen compartido en la ubicación /etc/pki/ca-trust/ca/source/anchors y finaliza.
Los certificados estarán disponibles para el servicio de Orchestrator a través del volumen compartido.
Inventario de todos los certificados en Automation Suite
Certificados generados durante la instalación
Como parte de la instalación de Automation Suite, se generan los siguientes certificados:
-
Self-signed certificate generated at the time of installation, which is valid for 3 months. You must replace the self-signed certificate with a domain certificate post-installation. See Managing certificates.
-
Identity Server certificate for signing JWT tokens used in authentication. If the certificate for signing the JWT token is not provided, Automation Suite uses the currently configured TLS certificate (can be the self-signed one or customer provided one), which expired in 90 days. If you want to have your own certificate for signing identity token, you can configure using the instructions in Managing certificates.
-
Certificado interno para MongoDB generado a través del gestor de certificados. Las versiones 2021.10.3 y anteriores de Automation Suite proporcionan un certificado interno para MongoDB que es válido durante 90 días. A partir de la versión 2021.10.4, los certificados son válidos durante 3 años y se actualizan automáticamente.
For more details, see MongoDB manual certificate update for Apps users.
-
Los certificados RKE2 generados caducan de forma predeterminada tras 12 meses. Si los certificados ya han caducado o caducan en menos de 90 días, se rotan al reiniciar RKE2.
Certificados adicionales
- Si está activado, el protocolo de autenticación SAML2 puedes utilizar un certificado de servicio.
- If you configure Active Directory using a username and password, LDAPS (LDAP Over SSL) is optional. If you opt for LDAPS, you must provide a certificate. This certificate will be added into Automation Suite’s Trusted Root Certification Authorities. For details, see Microsoft documentation.
Este certificado se añadirá a las Autoridades de Certificación Raíz de Confianza de Automation Suite.
Comprender cómo funciona la actualización/rotación de certificados
Instalación en línea
Los certificados se almacenan en dos lugares:
istio-ingressgateway-certsenistio-systemuipathespacio de nombres
Para actualizar el certificado dentro de los espacios de nombres istio-system y uipath, debe ejecutar el comando sudo ./configureUiPathAS.sh tls-cert update.
Los pods solo pueden acceder a los secretos en su espacio de nombres. Por ejemplo, los pods que se ejecutan en el espacio de nombres uipath no pueden acceder a los secretos almacenados en el espacio de nombres istio-system. Por lo tanto, los certificados se copian en ambos espacios de nombres.
Para el espacio de nombres uipath, montamos los certificados en los pods que los necesitan y reiniciamos los pods para que puedan utilizar los nuevos certificados.
Para las instalaciones de evaluación de un solo nodo, la actualización reducirá los pods. Todos los pods se apagarán y reiniciarán. Esta operación causará tiempo de inactividad.
En el caso de las instalaciones de producción multinodo preparados para HA, la actualización se realiza mediante el método de implementación continua. Si los microservicios tienen dos pods para fines de alta disponibilidad, la actualización eliminará uno de los pods, y aparecerá una nueva versión del pod. Una vez que el nuevo se inicie con éxito, se eliminará el antiguo. Habrá un breve período de inactividad mientras el antiguo pod no haya sido eliminado.
Instalación sin conexión
Además de los certificados específicos de una instalación en línea, un despliegue fuera de línea tienes dos lugares adicionales donde se utilizan rootCA.crt y tls.crt. Los certificados se utilizan en ArgoCD y Docker Registry, y se almacenan en los espacios de nombres de Docker y ArgoCD.
Puedes verificar los secretos utilizando el siguiente comando :
# For docker registry
kubectl -n docker-registry get secrets docker-registry-tls -o yaml
# For Argocd
argocd cert list --cert-type https
# For docker registry
kubectl -n docker-registry get secrets docker-registry-tls -o yaml
# For Argocd
argocd cert list --cert-type https
- Comprender el funcionamiento de los certificados de confianza
- Entender cómo funciona la comunicación
- Comprender cómo se comunican los robots y Orchestrator
- Comprender la arquitectura de contenedores relacionada con los certificados
- Nivel de contenedor
- Nivel de Pod
- Inventario de todos los certificados en Automation Suite
- Certificados generados durante la instalación
- Certificados adicionales
- Comprender cómo funciona la actualización/rotación de certificados
- Instalación en línea
- Instalación sin conexión