- Información general
- Requisitos
- Plantillas de implementación
- Manual: preparar la instalación
- Manual: preparar la instalación
- Paso 2: configurar el registro compatible con OCI para las instalaciones sin conexión
- Paso 3: configurar el almacén de objetos externo
- Paso 4: configurar High Availability Add-on
- Paso 5: configurar las bases de datos SQL
- Paso 7: configurar el DNS
- Paso 8: configurar los discos
- Paso 9: configurar los ajustes a nivel de kernel y sistema operativo
- Paso 10: configurar los puertos de nodo
- Paso 11: aplicar ajustes varios
- Paso 12: Validar e instalar los paquetes RPM necesarios
- Paso 13: Generar cluster_config.json
- Ejemplo de Clúster_config.json
- Configuración general
- Configuración del perfil
- Configuración de certificados
- Configuración de la base de datos
- Configuración del almacén de objetos externo
- Configuración de URL prefirmada
- Configuración de ArgoCD
- Configuración de la autenticación Kerberos
- Configuración de registro externo compatible con OCI
- Disaster recovery: configuraciones activas/pasivas y activas/activas
- Configuración de High Availability Add-on
- Configuración específica de Orchestrator
- Configuración específica de Insights
- Process Mining-specific configuration
- Configuración específica de Document Understanding
- Automation Suite Robots-specific configuration
- Configuración de la supervisión
- Opcional: configurar el servidor proxy
- Opcional: habilitación de la resistencia a fallos de zona en un clúster multinodo de producción preparada para alta disponibilidad
- Opcional: pasar resolv.conf personalizado
- Optional: Increasing fault tolerance
- Inclusión de un nodo agente dedicado compatible con GPU
- Añadir un nodo agente dedicado a Automation Suite Robots
- Paso 15: configurar el registro temporal de Docker para las instalaciones sin conexión
- Paso 16: validar los requisitos previos para la instalación
- Ejecutar uipathctl
- Manual: realizar la instalación
- Después de la instalación
- Administración de clústeres
- Gestionar los productos
- Primeros pasos con el Portal de administración del clúster
- Migración de Redis desde un clúster a un High Availability Add-on externo
- Migrating data between objectstores
- Migrating in-cluster objectstore to external objectstore
- Migrar del registro en clúster a un registro externo compatible con OCI
- Cambiar manualmente al clúster secundario en una configuración activa/pasiva
- Disaster Recovery: realizar operaciones posteriores a la instalación
- Convertir una instalación existente en una configuración en varios sitios
- Directrices sobre la actualización de una implementación activa/pasiva o activa/activa
- Directrices sobre la copia de seguridad y restauración de una implementación activa/pasiva o activa/activa
- Escalar una implementación de nodo único (evaluación) a una implementación multinodo (HA)
- Supervisión y alertas
- Migración y actualización
- Migrar entre clústeres de Automation Suite
- Actualizar Automation Suite
- Descargar los paquetes de instalación y obtener todos los archivos del primer nodo del servidor
- Recuperar la última configuración aplicada del clúster
- Actualizar la configuración del clúster
- Configurar el registro compatible con OCI para las instalaciones sin conexión
- Ejecutar la actualización
- Realizar operaciones posteriores a la actualización
- 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
- Buenas prácticas y mantenimiento
- Solución de problemas
- Cómo solucionar los problemas de los servicios durante la instalación
- Cómo reducir los permisos para un directorio de copia de seguridad NFS
- Cómo desinstalar el clúster
- Cómo limpiar los artefactos sin conexión para mejorar el espacio en disco
- Cómo borrar datos de Redis
- Cómo habilitar el registro de Istio
- Cómo limpiar manualmente los registros
- Sacar a Ceph del modo solo lectura
- Cómo limpiar los registros antiguos almacenados en el depósito sf-logs
- Cómo deshabilitar los registros de transmisión para AI Center
- Cómo depurar instalaciones de Automation Suite fallidas
- Cómo eliminar imágenes del instalador antiguo después de la actualización
- Cómo deshabilitar la descarga de la suma de comprobación TX
- Cómo establecer manualmente el nivel de registro de ArgoCD en Info
- Cómo expandir el almacenamiento de AI Center
- Cómo generar el pull_secret_value codificado para registros externos
- Cómo abordar los cifrados débiles en TLS 1.2
- Cómo comprobar la versión de TLS
- Cómo trabajar con certificados
- Cómo programar la copia de seguridad y la restauración de datos de Ceph
- Cómo recopilar datos de uso de DU con el almacén de objetos en el clúster (Ceph)
- Cómo instalar RKE2 SELinux en entornos aislados
- Cómo limpiar copias de seguridad diferenciales antiguas en un servidor NFS
- Cómo implementar Insights en un clúster habilitado para FIPS
- Cómo migrar a cgroup v2
- Cómo recuperar la autenticación Kerberos después de reiniciar una máquina virtual
- Cómo enviar una imagen de Docker local al registro en el clúster
- Cómo excluir depósitos de la copia de seguridad
- Error al descargar el paquete
- La instalación sin conexión falla porque falta un binario
- Azure disk not marked as SSD
- Fallo tras la actualización del certificado
- Errores de validación del certificado TLS
- El antivirus causa problemas de instalación
- Automation Suite not working after OS upgrade
- Automation Suite requiere que backlog_wait_time se establezca en 0
- La instalación del registro temporal falla en RHEL 8.9
- Problema de reinicio frecuente en las implementaciones del espacio de nombres de uipath durante las instalaciones sin conexión
- Configuración de DNS no respetada por CoreDNS
- La propagación del registro en el clúster falla debido a la memoria insuficiente
- Las comprobaciones de requisitos previos fallan cuando los proyectos modernos de Document Understanding están habilitados y AI Center está deshabilitado
- Upgrade fails due to unhealthy Ceph
- La actualización falla debido a objetos clásicos en la base de datos de Orchestrator
- El clúster de Ceph se encuentra en un estado degradado tras una actualización en paralelo.
- La actualización del servicio falla para Apps
- Tiempos de actualización in situ
- La actualización falla en entornos sin conexión
- pod de snapshot-controller-crds en estado CrashLoopBackOff después de la actualización
- La actualización falla debido a los tamaños de PVC de Insights anulados
- Error de actualización debido a un nombre de host en mayúsculas
- Establecer un intervalo de tiempo de espera para los portales de gestión
- La autenticación no funciona tras la migración
- 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
- Error en la operación GSSAPI debido a un código de estado no válido
- Alarma recibida por un error en el trabajo de Kerberos-tgt-update
- Proveedor de SSPI: servidor no encontrado en la base de datos de Kerberos
- Error en inicio de sesión de un usuario AD debido a una cuenta deshabilitada
- ArgoCD login failed
- 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
- ArgoCD entra en estado de progreso tras la primera instalación
- Pod del servidor de repositorio de ArgoCD en CrashLoopBackOff
- Mitigación manual de Política de red de ArgoCD (GHSA-47m3-95c7-g2g8)
- Faltan métricas de Ceph-rook en los paneles de supervisión
- Falta de coincidencia en los errores informados durante las comprobaciones de estado de diagnóstico
- Configurar solicitudes de recursos y límites para cargas de trabajo creadas por uipathctl
- No hay problema ascendente en buen estado
- Inicio de Redis bloqueado por antivirus
- Los pods de AI Center y Document Understanding no se inician con la verificación del certificado TLS habilitada
- Fluentd no exporta registros en entornos IPv6
- Studio Desktop no puede cargar conectores y actividades de Integration Service
- 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
- Ejecutar alta disponibilidad con Process Mining
- La ingestión de Process Mining falló al iniciar sesión con Kerberos
- No se puede conectar a la base de datos AutomationSuite_ProcessMining_Warehouse utilizando una cadena de conexión en formato pyodbc
- La instalación de Airflow falla con sqlalchemy.exc.ArgumentError: no se pudo analizar la URL rfc1738 de la cadena ''
- Cómo añadir una regla de tabla de IP para utilizar el puerto 1433 de SQL Server
- El certificado de Automation Suite no es de confianza desde el servidor donde se ejecuta CData Sync
- Process Mining no se carga después de deshabilitarlo y volver a habilitarlo
- Ejecutar la herramienta de diagnóstico
- Uso del paquete de soporte de Automation Suite
- Explorar registros
Ejecuta la herramienta de diagnóstico de Automation Suite para generar un informe de estado del clúster e identificar problemas comunes en Automation Suite.
La herramienta de diagnóstico de Automation Suite ejecuta un conjunto de comprobaciones para generar un informe sobre el estado del clúster, que puedes analizar para identificar problemas y sus posibles causas. La herramienta te ayuda a encontrar incidencias comunes, como la pérdida de la conectividad de la base de datos o credenciales no válidas o caducadas.
La herramienta de diagnóstico de Automation Suite está disponible en uipathctl y uipathtools, y puedes descargarla en tu máquina de administración.
uipathtools es una herramienta CLI que contiene un subconjunto de uipathctl capacidades específicas para los comandos de mantenimiento. La herramienta es compatible con versiones anteriores y funciona con cualquiera de las versiones de Automation Suite compatibles. Recomendamos utilizar uipathtools como primer paso si tienes algún problema.
Validación rápida
Validación rápida
Los comandos check y test proporcionan información rápida sobre el estado del clúster sin ejecutar un análisis profundo.
checkse basa en el estado de salud y sincronización de ArgoCD y no modifica ningún estado del clústertestexamina las aplicaciones, la implementación o los pods y modifica temporalmente el estado del clúster para proporcionarte esa información.
Comprobación de estado
Para ejecutar una verificación de estado, usa uno de los siguientes comandos, dependiendo de la herramienta CLI que uses:
-
Si utilizas
uipathctl, ejecuta:./bin/uipathctl health check./bin/uipathctl health check -
Si utilizas
uipathtools, ejecuta:./bin/uipathtools health check./bin/uipathtools health check
Salida de muestra del informe generado:
INFO[0038] Found 3 pods for etcd
INFO[0038] Running the health command - [etcdctl endpoint health --endpoints https://localhost:2379 --cacert /var/lib/rancher/rke2/server/tls/etcd/server-ca.crt --cert /var/lib/rancher/rke2/server/tls/etcd/server-client.crt --key /var/lib/rancher/rke2/server/tls/etcd/server-client.key]
INFO[0039] No credentials provided for registry: registry.uipath.com
INFO[0039] Checking if pods for component argocd-server exist
INFO[0039] Checking if pods for component argocd-repo-server exist
INFO[0039] Found 2 pods for Istio
INFO[0039] Checking if pods for component argocd-application-controller exist
INFO[0039] Checking if pods for component redis-ha exist
INFO[0040] application actioncenter-actions has sync enabled
INFO[0040] application actioncenter-bupproxyservice has sync enabled
INFO[0040] application actioncenter-processes has sync enabled
INFO[0040] application ai-app-deployment has sync enabled
INFO[0040] application ai-appmanager-deployment has sync enabled
INFO[0040] application ai-deployer-deployment has sync enabled
INFO[0040] application ai-helper-deployment has sync enabled
INFO[0040] application ai-pkgmanager-deployment has sync enabled
INFO[0040] application ai-trainer-deployment has sync enabled
INFO[0040] application aievents-deploy has sync enabled
INFO[0040] application ailoadbalancer-cleanup has sync enabled
INFO[0040] application ailoadbalancer-service has sync enabled
INFO[0040] application aimetering has sync enabled
INFO[0040] application airflow-scheduler has sync enabled
INFO[0040] application airflow-statsd has sync enabled
INFO[0040] application airflow-webserver has sync enabled
INFO[0040] application aistorage has sync enabled
INFO[0040] application aistorage-cleanup has sync enabled
INFO[0040] application apps-designer has sync enabled
INFO[0040] application apps-runtime has sync enabled
INFO[0040] application apps-server has sync enabled
INFO[0040] application apps-signalr has sync enabled
INFO[0040] application asrobots has sync enabled
INFO[0040] application auth-dex has sync enabled
INFO[0040] application auth-oauth2-proxy has sync enabled
INFO[0040] application automationhub-ah-frontdoor-service has sync enabled
INFO[0040] application automationhub-ah-open-api-service has sync enabled
INFO[0040] application automationhub-ah-tenant-service has sync enabled
INFO[0040] application automationhub-ah-web-client has sync enabled
INFO[0040] application automationsolutions has sync enabled
INFO[0040] application datapipeline-api has sync enabled
INFO[0040] application dataservice-designer has sync enabled
INFO[0040] application dataservice-runtime has sync enabled
INFO[0040] application dataservice-taskrunner has sync enabled
INFO[0040] application du-aimodelhost-2404 has sync enabled
INFO[0040] application du-aimodelhost-classifier-2404 has sync enabled
INFO[0040] application du-annotations has sync enabled
INFO[0040] application du-annotations-background-tasks has sync enabled
INFO[0040] application du-app-service has sync enabled
INFO[0040] application du-audit-cleanup has sync enabled
INFO[0040] application du-audit-service has sync enabled
INFO[0040] application du-classifier has sync enabled
INFO[0040] application du-deployments has sync enabled
INFO[0040] application du-digitizer has sync enabled
INFO[0040] application du-digitizer-cleanup has sync enabled
INFO[0040] application du-digitizer-worker-deployment has sync enabled
INFO[0040] application du-document-processor-cleanup has sync enabled
INFO[0040] application du-document-processor-service has sync enabled
INFO[0040] application du-document-types-service has sync enabled
INFO[0040] application du-document-types-service-cleanup has sync enabled
INFO[0040] application du-documentmanager-dm has sync enabled
INFO[0040] application du-documents-service has sync enabled
INFO[0040] application du-documents-service-cleanup has sync enabled
INFO[0040] application du-extended-ocr has sync enabled
INFO[0040] application du-extended-ocr-proxy has sync enabled
INFO[0040] application du-framework has sync enabled
INFO[0040] application du-framework-cleanup has sync enabled
INFO[0040] application du-framework-worker has sync enabled
INFO[0040] application du-frontend has sync enabled
INFO[0040] application du-measure-service has sync enabled
INFO[0040] application du-ocr has sync enabled
INFO[0040] application du-provisioning has sync enabled
INFO[0040] application du-services-fe has sync enabled
INFO[0040] application du-services-ikc has sync enabled
INFO[0040] application du-ssde has sync enabled
INFO[0040] application du-training-classifier-2404 has sync enabled
INFO[0040] application du-training-service has sync enabled
INFO[0040] application du-training-service-cleanup has sync enabled
INFO[0040] application du-training-ssde-2404 has sync enabled
INFO[0040] application identity-service-api has sync enabled
INFO[0040] application identity-service-web has sync enabled
INFO[0040] application insights-insightsportal has sync enabled
INFO[0040] application insights-insightsprovisioning has sync enabled
INFO[0040] application notificationcoreworker has sync enabled
INFO[0040] application notificationserviceapi has sync enabled
INFO[0040] application orchestrator has sync enabled
INFO[0040] application platform-authorization-service has sync enabled
INFO[0040] application platform-license-accountant has sync enabled
INFO[0040] application platform-license-accountant-worker has sync enabled
INFO[0040] application platform-license-resource-manager has sync enabled
INFO[0040] application platform-license-resource-manager-worker has sync enabled
INFO[0040] application platform-location-service has sync enabled
INFO[0040] application platform-messagebus-service has sync enabled
INFO[0040] application platform-organization-management-service has sync enabled
INFO[0040] application platform-portal has sync enabled
INFO[0040] application platform-resource-catalog-service has sync enabled
INFO[0040] application process-mining has sync enabled
INFO[0040] application process-mining-dbt-exec has sync enabled
INFO[0040] application process-mining-frontend has sync enabled
INFO[0040] application process-mining-technology-webapi has sync enabled
INFO[0040] application process-mining-technology-workerservice has sync enabled
INFO[0040] application publishermetaservice has sync enabled
INFO[0040] application pushgateway-prometheus-pushgateway has sync enabled
INFO[0040] application reloader-reloader has sync enabled
INFO[0040] application robotube has sync enabled
INFO[0040] application studio-governance-api has sync enabled
INFO[0040] application studio-governance-web has sync enabled
INFO[0040] application testmanager has sync enabled
INFO[0040] application usergroupresolverworker has sync enabled
INFO[0040] application usersubscriptionservice has sync enabled
INFO[0040] application webhook-service has sync enabled
INFO[0040] Pod etcd-server0 is healthy
INFO[0040] Running the health command - [etcdctl endpoint health --endpoints https://localhost:2379 --cacert /var/lib/rancher/rke2/server/tls/etcd/server-ca.crt --cert /var/lib/rancher/rke2/server/tls/etcd/server-client.crt --key /var/lib/rancher/rke2/server/tls/etcd/server-client.key]
INFO[0041] Pod etcd-server1 is healthy
INFO[0041] Running the health command - [etcdctl endpoint health --endpoints https://localhost:2379 --cacert /var/lib/rancher/rke2/server/tls/etcd/server-ca.crt --cert /var/lib/rancher/rke2/server/tls/etcd/server-client.crt --key /var/lib/rancher/rke2/server/tls/etcd/server-client.key]
INFO[0042] Pod etcd-server2 is healthy
INFO[0044] Waited for job uipath-check/grafana-vj8m5-curl-podfzvvb to reach status COMPLETED, desiredStatus [COMPLETED] with message CompletionsReached
INFO[0044] status COMPLETED is contained in desiredStatus [COMPLETED]
INFO[0044] Querying for running pod in namespace uipath-check, and job.Name grafana-vj8m5-curl-podfzvvb
INFO[0060] Fetching from helm-credential URL in argocd namespace
INFO[0061] Fetching from helm-credential URL in argocd namespace
INFO[0064] There were errors when reading cluster config: cannot parse proxy enabled: strconv.ParseBool: parsing "": invalid syntax
Ran cluster/ checks...
Ran ACTIONCENTER checks...
✔ successful
Ran AICENTER checks...
✔ successful
Ran AIEVENTS checks...
✔ successful
Ran AIMETERING checks...
✔ successful
Ran AIRFLOW checks...
✔ successful
Ran ARGOCD checks...
✔ successful
Ran ASROBOTS checks...
✔ successful
Ran AUTOMATIONHUB checks...
✔ successful
Ran AUTOMATIONOPS checks...
✔ successful
Ran AUTOMATIONSOLUTIONS checks...
✔ successful
Ran BA checks...
✔ successful
Ran CERT-MANAGER checks...
✔ successful
Ran CILIUM checks...
✔ successful
Ran DATAPIPELINE-API checks...
✔ successful
Ran DATASERVICE checks...
✔ successful
Ran DOCUMENTUNDERSTANDING checks...
✔ successful
Ran ETCD checks...
✔ successful
Ran GATEKEEPER checks...
✔ successful
Ran GRAFANA checks...
✔ successful
Ran INSIGHTS checks...
✔ successful
Ran ISTIO checks...
✔ successful
Ran LOGGING checks...
✔ successful
Ran MAINTENANCE checks...
✔ successful
Ran NODE checks...
✔ successful
Ran NOTIFICATIONSERVICE checks...
✔ successful
Ran ORCHESTRATOR checks...
✔ successful
Ran PLATFORM checks...
✔ successful
Ran POD checks...
✔ successful
Ran PROCESSMINING checks...
✔ successful
Ran RELOADER checks...
✔ successful
Ran REPLICAS checks...
✔ successful
Ran ROBOTUBE checks...
✔ successful
Ran SFCORE checks...
✔ successful
Ran TESTMANAGER checks...
✔ successful
Ran WEBHOOK checks...
✔ successful
Checks complete!
INFO[0038] Found 3 pods for etcd
INFO[0038] Running the health command - [etcdctl endpoint health --endpoints https://localhost:2379 --cacert /var/lib/rancher/rke2/server/tls/etcd/server-ca.crt --cert /var/lib/rancher/rke2/server/tls/etcd/server-client.crt --key /var/lib/rancher/rke2/server/tls/etcd/server-client.key]
INFO[0039] No credentials provided for registry: registry.uipath.com
INFO[0039] Checking if pods for component argocd-server exist
INFO[0039] Checking if pods for component argocd-repo-server exist
INFO[0039] Found 2 pods for Istio
INFO[0039] Checking if pods for component argocd-application-controller exist
INFO[0039] Checking if pods for component redis-ha exist
INFO[0040] application actioncenter-actions has sync enabled
INFO[0040] application actioncenter-bupproxyservice has sync enabled
INFO[0040] application actioncenter-processes has sync enabled
INFO[0040] application ai-app-deployment has sync enabled
INFO[0040] application ai-appmanager-deployment has sync enabled
INFO[0040] application ai-deployer-deployment has sync enabled
INFO[0040] application ai-helper-deployment has sync enabled
INFO[0040] application ai-pkgmanager-deployment has sync enabled
INFO[0040] application ai-trainer-deployment has sync enabled
INFO[0040] application aievents-deploy has sync enabled
INFO[0040] application ailoadbalancer-cleanup has sync enabled
INFO[0040] application ailoadbalancer-service has sync enabled
INFO[0040] application aimetering has sync enabled
INFO[0040] application airflow-scheduler has sync enabled
INFO[0040] application airflow-statsd has sync enabled
INFO[0040] application airflow-webserver has sync enabled
INFO[0040] application aistorage has sync enabled
INFO[0040] application aistorage-cleanup has sync enabled
INFO[0040] application apps-designer has sync enabled
INFO[0040] application apps-runtime has sync enabled
INFO[0040] application apps-server has sync enabled
INFO[0040] application apps-signalr has sync enabled
INFO[0040] application asrobots has sync enabled
INFO[0040] application auth-dex has sync enabled
INFO[0040] application auth-oauth2-proxy has sync enabled
INFO[0040] application automationhub-ah-frontdoor-service has sync enabled
INFO[0040] application automationhub-ah-open-api-service has sync enabled
INFO[0040] application automationhub-ah-tenant-service has sync enabled
INFO[0040] application automationhub-ah-web-client has sync enabled
INFO[0040] application automationsolutions has sync enabled
INFO[0040] application datapipeline-api has sync enabled
INFO[0040] application dataservice-designer has sync enabled
INFO[0040] application dataservice-runtime has sync enabled
INFO[0040] application dataservice-taskrunner has sync enabled
INFO[0040] application du-aimodelhost-2404 has sync enabled
INFO[0040] application du-aimodelhost-classifier-2404 has sync enabled
INFO[0040] application du-annotations has sync enabled
INFO[0040] application du-annotations-background-tasks has sync enabled
INFO[0040] application du-app-service has sync enabled
INFO[0040] application du-audit-cleanup has sync enabled
INFO[0040] application du-audit-service has sync enabled
INFO[0040] application du-classifier has sync enabled
INFO[0040] application du-deployments has sync enabled
INFO[0040] application du-digitizer has sync enabled
INFO[0040] application du-digitizer-cleanup has sync enabled
INFO[0040] application du-digitizer-worker-deployment has sync enabled
INFO[0040] application du-document-processor-cleanup has sync enabled
INFO[0040] application du-document-processor-service has sync enabled
INFO[0040] application du-document-types-service has sync enabled
INFO[0040] application du-document-types-service-cleanup has sync enabled
INFO[0040] application du-documentmanager-dm has sync enabled
INFO[0040] application du-documents-service has sync enabled
INFO[0040] application du-documents-service-cleanup has sync enabled
INFO[0040] application du-extended-ocr has sync enabled
INFO[0040] application du-extended-ocr-proxy has sync enabled
INFO[0040] application du-framework has sync enabled
INFO[0040] application du-framework-cleanup has sync enabled
INFO[0040] application du-framework-worker has sync enabled
INFO[0040] application du-frontend has sync enabled
INFO[0040] application du-measure-service has sync enabled
INFO[0040] application du-ocr has sync enabled
INFO[0040] application du-provisioning has sync enabled
INFO[0040] application du-services-fe has sync enabled
INFO[0040] application du-services-ikc has sync enabled
INFO[0040] application du-ssde has sync enabled
INFO[0040] application du-training-classifier-2404 has sync enabled
INFO[0040] application du-training-service has sync enabled
INFO[0040] application du-training-service-cleanup has sync enabled
INFO[0040] application du-training-ssde-2404 has sync enabled
INFO[0040] application identity-service-api has sync enabled
INFO[0040] application identity-service-web has sync enabled
INFO[0040] application insights-insightsportal has sync enabled
INFO[0040] application insights-insightsprovisioning has sync enabled
INFO[0040] application notificationcoreworker has sync enabled
INFO[0040] application notificationserviceapi has sync enabled
INFO[0040] application orchestrator has sync enabled
INFO[0040] application platform-authorization-service has sync enabled
INFO[0040] application platform-license-accountant has sync enabled
INFO[0040] application platform-license-accountant-worker has sync enabled
INFO[0040] application platform-license-resource-manager has sync enabled
INFO[0040] application platform-license-resource-manager-worker has sync enabled
INFO[0040] application platform-location-service has sync enabled
INFO[0040] application platform-messagebus-service has sync enabled
INFO[0040] application platform-organization-management-service has sync enabled
INFO[0040] application platform-portal has sync enabled
INFO[0040] application platform-resource-catalog-service has sync enabled
INFO[0040] application process-mining has sync enabled
INFO[0040] application process-mining-dbt-exec has sync enabled
INFO[0040] application process-mining-frontend has sync enabled
INFO[0040] application process-mining-technology-webapi has sync enabled
INFO[0040] application process-mining-technology-workerservice has sync enabled
INFO[0040] application publishermetaservice has sync enabled
INFO[0040] application pushgateway-prometheus-pushgateway has sync enabled
INFO[0040] application reloader-reloader has sync enabled
INFO[0040] application robotube has sync enabled
INFO[0040] application studio-governance-api has sync enabled
INFO[0040] application studio-governance-web has sync enabled
INFO[0040] application testmanager has sync enabled
INFO[0040] application usergroupresolverworker has sync enabled
INFO[0040] application usersubscriptionservice has sync enabled
INFO[0040] application webhook-service has sync enabled
INFO[0040] Pod etcd-server0 is healthy
INFO[0040] Running the health command - [etcdctl endpoint health --endpoints https://localhost:2379 --cacert /var/lib/rancher/rke2/server/tls/etcd/server-ca.crt --cert /var/lib/rancher/rke2/server/tls/etcd/server-client.crt --key /var/lib/rancher/rke2/server/tls/etcd/server-client.key]
INFO[0041] Pod etcd-server1 is healthy
INFO[0041] Running the health command - [etcdctl endpoint health --endpoints https://localhost:2379 --cacert /var/lib/rancher/rke2/server/tls/etcd/server-ca.crt --cert /var/lib/rancher/rke2/server/tls/etcd/server-client.crt --key /var/lib/rancher/rke2/server/tls/etcd/server-client.key]
INFO[0042] Pod etcd-server2 is healthy
INFO[0044] Waited for job uipath-check/grafana-vj8m5-curl-podfzvvb to reach status COMPLETED, desiredStatus [COMPLETED] with message CompletionsReached
INFO[0044] status COMPLETED is contained in desiredStatus [COMPLETED]
INFO[0044] Querying for running pod in namespace uipath-check, and job.Name grafana-vj8m5-curl-podfzvvb
INFO[0060] Fetching from helm-credential URL in argocd namespace
INFO[0061] Fetching from helm-credential URL in argocd namespace
INFO[0064] There were errors when reading cluster config: cannot parse proxy enabled: strconv.ParseBool: parsing "": invalid syntax
Ran cluster/ checks...
Ran ACTIONCENTER checks...
✔ successful
Ran AICENTER checks...
✔ successful
Ran AIEVENTS checks...
✔ successful
Ran AIMETERING checks...
✔ successful
Ran AIRFLOW checks...
✔ successful
Ran ARGOCD checks...
✔ successful
Ran ASROBOTS checks...
✔ successful
Ran AUTOMATIONHUB checks...
✔ successful
Ran AUTOMATIONOPS checks...
✔ successful
Ran AUTOMATIONSOLUTIONS checks...
✔ successful
Ran BA checks...
✔ successful
Ran CERT-MANAGER checks...
✔ successful
Ran CILIUM checks...
✔ successful
Ran DATAPIPELINE-API checks...
✔ successful
Ran DATASERVICE checks...
✔ successful
Ran DOCUMENTUNDERSTANDING checks...
✔ successful
Ran ETCD checks...
✔ successful
Ran GATEKEEPER checks...
✔ successful
Ran GRAFANA checks...
✔ successful
Ran INSIGHTS checks...
✔ successful
Ran ISTIO checks...
✔ successful
Ran LOGGING checks...
✔ successful
Ran MAINTENANCE checks...
✔ successful
Ran NODE checks...
✔ successful
Ran NOTIFICATIONSERVICE checks...
✔ successful
Ran ORCHESTRATOR checks...
✔ successful
Ran PLATFORM checks...
✔ successful
Ran POD checks...
✔ successful
Ran PROCESSMINING checks...
✔ successful
Ran RELOADER checks...
✔ successful
Ran REPLICAS checks...
✔ successful
Ran ROBOTUBE checks...
✔ successful
Ran SFCORE checks...
✔ successful
Ran TESTMANAGER checks...
✔ successful
Ran WEBHOOK checks...
✔ successful
Checks complete!
De forma predeterminada, el comando health check comprueba el estado de todos los componentes. Sin embargo, también te permite comprobar estrictamente los componentes en los que estás interesado:
-
Si quieres excluir componentes de la ejecución, utiliza la marca
--excluded.Por ejemplo, si no quieres comprobar el estado de SQL, ejecuta el siguiente comando:
./bin/uipathctl health check --excluded SQL./bin/uipathctl health check --excluded SQLEl comando comprueba el estado de todos los componentes, excepto para SQL.
-
Si quieres incluir solo ciertos componentes en la ejecución, utiliza la marca
--included.Por ejemplo, si solo quieres comprobar el estado del DNS y el almacén de objetos, ejecuta el siguiente comando:
./bin/uipathctl health check --included DNS,OBJECTSTORAGE./bin/uipathctl health check --included DNS,OBJECTSTORAGE
Analizando los registros
-
Después de ejecutar una comprobación de estado, los registros muestran que falló la comprobación de estado de la aplicación Data Service.
❌ [DATASERVICE] ❌ [DATASERVICE_HEALTH] Application health check failed: health status is Progressing and sync status is Synced❌ [DATASERVICE] ❌ [DATASERVICE_HEALTH] Application health check failed: health status is Progressing and sync status is Synced -
Tras investigar más a fondo, queda claro que la aplicación Data Service falló porque los pods
dataservice-runtime-8f5bb7d56-v5krgydataservice-taskrunner-787df76c74-98h5lestán en estado fallido. Si sigue analizando, puede encontrar que falta eldataservice-external-storage-secret.❌ [POD] ✔ [LIST_NAMESPACES] Retrieved 25 namespaces to check pod health ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-runtime-8f5bb7d56-v5krg cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-runtime-8f5bb7d56-xs9t5 cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-taskrunner-787df76c74-98h5l cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found❌ [POD] ✔ [LIST_NAMESPACES] Retrieved 25 namespaces to check pod health ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-runtime-8f5bb7d56-v5krg cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-runtime-8f5bb7d56-xs9t5 cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-taskrunner-787df76c74-98h5l cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found -
Para solucionar este problema, asegúrate de proporcionar las credenciales correctas para el almacén de objetos en
cluster_config.json.
Test de salud
Para ejecutar una prueba de estado, usa uno de los siguientes comandos, en función de la herramienta CLI que utilices:
-
Si utilizas
uipathctl, ejecuta:./bin/uipathctl health test./bin/uipathctl health test -
Si utilizas
uipathtools, ejecuta:./bin/uipathtools health test./bin/uipathtools health test
De forma predeterminada, el comando health test ejecuta pruebas de estado en todos los componentes. Sin embargo, también te permite comprobar estrictamente los componentes en los que estás interesado:
-
Si quieres excluir componentes de la ejecución, utiliza la marca
--excluded.Por ejemplo, si no quieres comprobar el estado de SQL, ejecuta el siguiente comando:
./bin/uipathctl health test --excluded SQL./bin/uipathctl health test --excluded SQLEl comando comprueba el estado de todos los componentes, excepto para SQL.
-
Si quieres incluir solo ciertos componentes en la ejecución, utiliza la marca
--included.Por ejemplo, si solo quieres comprobar el estado del DNS y el almacén de objetos, ejecuta el siguiente comando:
./bin/uipathctl test --included DNS,OBJECTSTORAGE./bin/uipathctl test --included DNS,OBJECTSTORAGE
Si comparas la salida de los comandos check y test para la aplicación de Data Service, puedes ver que el primero valida el estado de la aplicación, mientras que el segundo comprueba el enrutamiento.
Problema conocido
Es posible que obtengas un mensaje de error similar al del siguiente ejemplo. Puede Actions ya que no se requiere ninguna acción por su parte.
E0621 23:32:56.426321 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
E0621 23:32:56.426392 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
E0621 23:32:56.444420 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
E0621 23:32:56.446150 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
E0621 23:32:56.513357 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
E0621 23:32:56.426321 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
E0621 23:32:56.426392 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
E0621 23:32:56.444420 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
E0621 23:32:56.446150 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
E0621 23:32:56.513357 24470 reflector.go:138] external/io_k8s_client_go/tools/cache/reflector.go:167: Failed to watch *v1.Pod: context deadline exceeded
Validación profunda
Validación profunda
El comando diagnose proporciona información detallada sobre el estado del clúster. Te ayuda a identificar problemas en todos los niveles, como SQL, almacén de objetos, nodo, secreto, Istio, redes, etc.
- Cubre los comandos
checkytest. - Ejecuta las comprobaciones de requisitos previos realizadas antes de la instalación de Automation Suite para validar los cambios en la configuración del entorno que se realizaron después de la instalación y que pueden ser la posible causa del problema.
- Se ejecuta en todos los nodos para recopilar cualquier problema específico del nodo, como la falta de disponibilidad de recursos, cualquier interferencia en la red, etc.
Para ejecutar una comprobación de diagnóstico, utiliza uno de los siguientes comandos, dependiendo de la herramienta CLI que utilices:
-
Si utilizas
uipathctl, ejecuta:./bin/uipathctl health diagnose cluster_config.json --versions versions/helm-charts.json./bin/uipathctl health diagnose cluster_config.json --versions versions/helm-charts.json -
Si utilizas
uipathtools, ejecuta:./bin/uipathtools health diagnose cluster_config.json --versions versions/helm-charts.json./bin/uipathtools health diagnose cluster_config.json --versions versions/helm-charts.json
La muestra anterior se recorta. Los registros reales tienen más información. Observará que el comando diagnose se ejecuta en varios niveles, como la infraestructura, las redes, el almacenamiento, los pods, los DNS, etc.
Analizando los registros
Hay dos posibles problemas que puedes observar en los registros anteriores:
-
Istio tiene una configuración incorrecta, lo que puede causar problemas para acceder a la plataforma Document Understanding:
❌ [ISTIO] ✔ [ISTIO_SYNC_STATUS] Istio sync is up-to-date ❌ [ISTIO_ENVOY_CONFIG_STATUS] Istio Envoy configs are not healthy: Error [IST0101] (VirtualService uipath/du-platform-vs) Referenced host:port not found: "aistorage:5000"❌ [ISTIO] ✔ [ISTIO_SYNC_STATUS] Istio sync is up-to-date ❌ [ISTIO_ENVOY_CONFIG_STATUS] Istio Envoy configs are not healthy: Error [IST0101] (VirtualService uipath/du-platform-vs) Referenced host:port not found: "aistorage:5000" -
El servicio de datos no está disponible. Consulta Ceph en el ejemplo de código.
❌ [DATASERVICE] ❌ [DATASERVICE_HEALTH] Application health check failed: health status is Progressing and sync status is Synced ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-runtime-8f5bb7d56-v5krg cannot mount volume: (combined from similar events): Unable to attach or mount volumes: unmounted volumes=[external-storage-creds], unattached volumes=[workload-socket is-secrets openssl istio-podinfo temp-location cert-location istio-data external-storage-creds workload-certs istio-envoy java domain-cert-config edk2 credential-socket tmp additional-ca-cert-config pem istiod-ca-cert istio-token app-secrets ceph-storage-creds]: timed out waiting for the condition ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-runtime-8f5bb7d56-xs9t5 cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-taskrunner-787df76c74-98h5l cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found❌ [DATASERVICE] ❌ [DATASERVICE_HEALTH] Application health check failed: health status is Progressing and sync status is Synced ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-runtime-8f5bb7d56-v5krg cannot mount volume: (combined from similar events): Unable to attach or mount volumes: unmounted volumes=[external-storage-creds], unattached volumes=[workload-socket is-secrets openssl istio-podinfo temp-location cert-location istio-data external-storage-creds workload-certs istio-envoy java domain-cert-config edk2 credential-socket tmp additional-ca-cert-config pem istiod-ca-cert istio-token app-secrets ceph-storage-creds]: timed out waiting for the condition ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-runtime-8f5bb7d56-xs9t5 cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found ❌ [CANNOT_MOUNT_VOLUME] Pod uipath/dataservice-taskrunner-787df76c74-98h5l cannot mount volume: MountVolume.SetUp failed for volume "external-storage-creds" : secret "dataservice-external-storage-secret" not found
Problemas conocidos
Es posible que obtengas un mensaje de error similar al del siguiente ejemplo. Puede Actions ya que no se requiere ninguna acción por su parte.
Servicios públicos adicionales
Facilidades adicionales
Todos los comandos de la herramienta de diagnóstico de Automation Suite (check, testy diagnose) admiten filtrado y formatos de salida adicionales.
La siguiente tabla describe los filtros disponibles para la herramienta de diagnóstico y proporciona ejemplos de uso.
| Filtros | Descripción | Usos |
|---|---|---|
--included | Lista separada por comas de los servicios para incluir en la validación | ./bin/uipathctl health diagnose cluster_config.json --versions versions/helm-charts.json --included ISTIO,INSIGHTS Este comando ejecuta el diagnóstico solo frente a Istio e Insights. |
--excluded | Lista separada por comas de los servicios para excluir de la validación | ./bin/uipathctl health test --excluded ISTIO,INSIGHTS Este comando ejecuta la prueba en todo el clúster, excepto Istio e Insights. |
Formato de salida
La herramienta de diagnóstico de Automation Suite puede generar informes en varios formatos: json, yaml, texty junit. Puedes pasar estos valores a cualquiera de los comandos a través de la --output . Estos formatos de salida son útiles cuando desea aprovechar estas herramientas para crear su propio marco de resolución de problemas sobre ellas.
Usos de ejemplo
| Uso | Ejemplo de resultado |
|---|---|
|
|
|
|
|
|
|
|
Leer informes de diagnóstico
Registros de INFO
Los registros de información en verde muestran que las comprobaciones requeridas han sido satisfactorias. Sin embargo, debe comprobar debidamente el uso del disco o de la memoria para evitar errores ocultos.
Mensajes de ADVERTENCIA
Aunque estos mensajes no indican un riesgo elevado, es posible que tenga que rectificarlos, ya que podrían afectar a algunos servicios en determinados escenarios.
Mensajes de ERROR
Debe solucionar los problemas indicados en estos mensajes, ya que afectan a algún servicio del clúster.
Servicio caído del servidor Rke2 o del agente Rke2
Si estos servicios no están operativos, significa que el nodo está inactivo. Intente reiniciar el servicio utilizando systemctl restart <service-name>, ya que esto debería solucionar el problema.
Tamaño del directorio ubicado en /var/lib
Tamaño del directorio ubicado en /var/lib ya que Kubernetes lo utiliza para almacenar sus datos. Si el directorio está lleno, pueden surgir varios problemas. Para evitar estos problemas, asegúrese de aumentar su tamaño.
Versión Rke2
El informe muestra la versión rke2 como referencia.
Presión del disco o presión de la memoria
En todos los nodos, se especifica si están bajo la presión del disco o de la memoria. Si esto sucede, las cargas de trabajo en estos nodos podrían empezar a presentar problemas. Compruebe si hay otros procesos en ejecución en estos nodos que estén consumiendo recursos y elimínelos si es el caso.
Estado de los servicios Ceph
Se utiliza Ceph como almacenamiento de objetos S3 para guardar registros y archivos de distintas aplicaciones. Es posible consultar el estado de sus servicios. Si no están operativos, es posible que deba reiniciarlos. Asegúrese de comprobar también si el disco que utiliza Ceph está lleno.
Puertos 443 y 31443
Los puertos 443 y 31443 deben estar abiertos en el nombre de host proporcionado. El informe indica si no están accesibles. Asegúrese de abrir los puertos apropiados si así se le indica.
Validez del certificado
La herramienta comprueba si el certificado cargado es válido para el nombre de host proporcionado y si este no ha caducado. Si el certificado no cumple estos criterios, aparecerán errores. Para evitarlo, asegúrese de comprobar el certificado cargado y cambiarlo en caso necesario.
GPU
Dado que algunos servicios requieren que la GPU esté presente en algunos nodos del clúster, la herramienta de diagnósticos de Automation Suite comprueba si hay nodos GPU e imprime el número de dichos nodos. Si cree que hay nodos GPU presentes, pero no aparecen aquí, significará que algo ha ido mal en la configuración de la GPU.
Registro de Docker
DockerRegistry es un componente importante que utilizan algunos servicios. Si está inactivo, debes investigar el problema y realizar un reinicio.
Servicios ArgoCD no operativos
ArgoCD es nuestra herramienta de gestión del ciclo de vida de las aplicaciones (ALM). Si cualquiera de sus servicios no está operativo, otras aplicaciones pueden quedar obsoletas o tener otros problemas. La recuperación de estos servicios es importante y puede requerir una mayor depuración.
Aplicaciones ArgoCD ausentes o degradadas
La herramienta de diagnósticos de Automation Suite muestra si las aplicaciones de ArgoCD faltan o están degradadas.
- Si faltan aplicaciones, vaya a la interfaz de usuario de ArgoCD y sincronícela.
- Si las aplicaciones están degradadas, es necesario realizar una depuración adicional para investigar los errores mostrados por ArgoCD.
- Validación rápida
- Validación rápida
- Comprobación de estado
- Test de salud
- Validación profunda
- Validación profunda
- Servicios públicos adicionales
- Facilidades adicionales
- Leer informes de diagnóstico
- Registros de INFO
- Mensajes de ADVERTENCIA
- Mensajes de ERROR
- Servicio caído del servidor Rke2 o del agente Rke2
- Tamaño del directorio ubicado en /var/lib
- Versión Rke2
- Presión del disco o presión de la memoria
- Estado de los servicios Ceph
- Puertos 443 y 31443
- Validez del certificado
- GPU
- Registro de Docker
- Servicios ArgoCD no operativos
- Aplicaciones ArgoCD ausentes o degradadas