- Vue d'ensemble (Overview)
- Glossaire
- Produits Automation Suite
- Architecture multi-nœuds et considération de conception
- Sécurité et conformité
- Présentation des certificats
- Prérequis
- Modèles de déploiement
- Manuel : Préparation de l'installation
- Manuel : Préparation de l'installation
- Étape 2 : configurer le registre compatible OCI pour les installations hors ligne
- Étape 3 : configurer le magasin d’objets externe
- Étape 4 : Configuration de High Availability Add-on
- Étape 5 : configurer les bases de données SQL
- Étape 7 : configurer le DNS
- Étape 8 : configuration des disques
- Étape 9 : configurer les paramètres au niveau du noyau et du système d’exploitation
- Étape 10 : configuration des ports de nœud
- Étape 11 : appliquer divers paramètres
- Étape 12 : Valider et installer les packages RPM requis
- Étape 13 : génération du fichier cluster_config.json
- Exemple Cluster_config.json
- Configuration générale
- Configuration du profil
- Configuration du certificat
- Configuration de la base de données
- Configuration du magasin d'objets externe
- Configuration d'URL pré-signée
- Configuration d'ArgoCD
- Configuration de l'authentification Kerberos
- Configuration du registre externe compatible OCI
- Disaster Recovery : configurations actif/passif et actif/actif
- Configuration de High Availability Add-on
- Configuration spécifique à Orchestrator
- Configuration spécifique à Insights
- Configuration spécifique à Process Mining
- Configuration spécifique à Document Understanding
- Configuration spécifique à Automation Suite Robots
- Configuration de la surveillance
- Facultatif : configuration du serveur proxy
- Facultatif : Activation de la résilience aux échecs locaux dans un cluster en mode production multi-nœuds compatible haute disponibilité
- Facultatif : Transmettre le fichier personnalisé resolv.conf
- Facultatif : augmentation de la tolérance aux pannes
- Ajout d'un nœud d'agent dédié avec prise en charge GPU
- Ajout d'un nœud d'agent dédié pour les Automation Suite Robots
- Étape 15 : configuration du registre Docker temporaire pour les installations hors ligne
- Étape 16 : validation des prérequis de l’installation
- Exécution de uipathctl
- Manuel : Exécution de l'installation
- Post-installation
- Administration du cluster
- Gestion des produits
- Premiers pas avec le portail d'administration du cluster
- Migration de Redis de High Availability Add-on externe vers un une version externe de High Availability Add-on
- Migration des données entre les librairies
- Migration d'un magasin d'objets intégré au cluster vers un magasin d'objets externe
- Migration du registre intégré au cluster vers un registre externe compatible OCI
- Basculer manuellement vers le cluster secondaire dans une configuration actif/passif
- Disaster Recovery : exécution d'opérations post-installation
- Conversion d'une installation existante en configuration multi-sites
- Recommandations pour mettre à niveau un déploiement actif/passif ou actif/actif
- Recommandations pour sauvegarder et restaurer un déploiement actif/passif ou actif/actif
- Mise à l'échelle d'un déploiement à nœud unique (évaluation) vers un déploiement multi-nœuds (HA)
- Surveillance et alerte
- Migration et mise à niveau
- Migration entre les clusters Automation Suite
- Mettre à niveau Automation Suite
- Téléchargement des packages d'installation et obtention de l'ensemble des fichiers sur le premier nœud de serveur
- Récupération de la dernière configuration appliquée à partir du cluster
- Mise à jour de la configuration du cluster
- Configuration du registre compatible OCI pour les installations hors ligne
- Exécution de la mise à niveau
- Exécution d'opérations post-mise à niveau
- Configuration spécifique au produit
- Configuration avancée d'Orchestrator
- Configuration des paramètres d'Orchestrator
- Configuration des paramètres d'application
- Configuration de la taille maximale de la requête
- Remplacement de la configuration du stockage au niveau du cluster
- Configuration de NLog
- Enregistrement des journaux du robot dans Elasticsearch
- Configuration des magasins d'informations d'identification
- Configuration de la clé de chiffrement par locataire
- Nettoyer la base de données Orchestrator
- Ignorer l’installation de la bibliothèque hôte
- Rotation des informations d’identification de stockage d’objets blob
- Désactivation de l'utilisation d'URL pré-signées lors du téléchargement de données vers le stockage Amazon S3
- Configuration de la sécurité de l'application de processus
- Configurer une authentification Kerberos avec l’authentification MSSQL de base pour Process Mining
- Bonnes pratiques et maintenance
- Résolution des problèmes
- Comment résoudre les problèmes des services lors de l'installation
- Comment réduire les autorisations d’un répertoire de sauvegarde NFS
- Comment désinstaller le cluster
- Comment nettoyer les artefacts hors ligne pour améliorer l'espace disque
- Comment effacer les données Redis
- Comment activer la journalisation Istio
- Comment nettoyer manuellement les journaux
- Sortie de Ceph du mode lecture seule
- Comment nettoyer les anciens journaux stockés dans le compartiment sf-logs
- Comment désactiver les journaux de diffusion pour AI Center
- Comment déboguer les installations d'Automation Suite ayant échoué
- Comment supprimer des images de l’ancien programme d’installation après la mise à niveau
- Comment désactiver le déchargement de la somme de contrôle txt
- Comment définir manuellement le niveau de journalisation d’ArgoCD sur Info
- Comment augmenter le stockage d’AI Center
- Comment générer la valeur pull_secret_value encodée pour les registres externes
- Comment résoudre les chiffrements faibles dans TLS 1.2
- Comment vérifier la version TLS
- Comment travailler avec les certificats
- Comment planifier la sauvegarde et la restauration des données Ceph
- Comment collecter les données d'utilisation de DU avec le magasin d'objets intégré au cluster (Ceph)
- Comment installer RKE2 SELinux dans des environnements isolés
- Comment nettoyer les anciennes sauvegardes différentielles sur un serveur NFS
- Comment déployer Insights dans un cluster compatible FIPS
- Comment migrer vers cgroup v2
- Comment récupérer l'authentification Kerberos après le redémarrage d'une machine virtuelle
- Comment transmettre une image Docker locale au registre intégré au cluster
- Comment exclure des compartiments de la sauvegarde
- Erreur lors du téléchargement du bundle
- L'installation hors ligne échoue en raison d'un fichier binaire manquant
- Disque Azure non marqué comme SSD
- Échec après la mise à jour du certificat
- Erreurs de validation du certificat TLS
- L'antivirus provoque des problèmes d'installation
- Automation Suite ne fonctionne pas après la mise à niveau du système d'exploitation
- Automation Suite requiert que backlog_wait_time soit défini sur 0
- L'installation du registre temporaire échoue sur RHEL 8.9
- Problème de redémarrage fréquent dans les déploiements d'espace de noms uipath lors des installations hors ligne
- Paramètres DNS non respectés par CoreDNS
- L’amorçage du registre intégré au cluster échoue en raison d’une mémoire insuffisante
- Les vérifications des prérequis échouent lorsque les projets modernes Document Understanding sont activés et qu’AI Center est désactivé
- Échec de la mise à niveau en raison d’un Ceph défectueux
- La mise à niveau échoue en raison d’objets classiques dans la base de données Orchestrator
- Cluster Ceph trouvé dans un état dégradé après une mise à niveau côte à côte
- La mise à niveau du service échoue pour Apps
- Délais d'attente de mise à niveau sur place
- La mise à niveau échoue dans les environnements hors ligne
- Le pod d'instantané-contrôleur-crds dans l'état CrashLoopBackOff après la mise à niveau
- La mise à niveau échoue en raison du remplacement des tailles de PVC Insights
- Échec de la mise à niveau en raison d’un nom d’hôte en majuscules
- Définition d'un délai d'expiration pour les portails de gestion
- L'authentification ne fonctionne pas après la migration
- kinit : Impossible de trouver le KDC pour le domaine <AD Domain> lors de l'obtention des informations d'identification initiales
- Kinit : Keytab ne contient aucune clé appropriée pour *** lors de l'obtention des informations d'identification initiales
- L'opération GSSAPI a échoué en raison d'un code de statut non valide
- Alarme reçue pour l'échec de la tâche Kerberos-tgt-update
- Fournisseur SSPI : serveur introuvable dans la base de données Kerberos
- La connexion a échoué pour l'utilisateur AD en raison d'un compte désactivé
- Échec de connexion à ArgoCD
- Impossible d'obtenir l'image du bac à sable
- Les pods ne s'affichent pas dans l'interface utilisateur ArgoCD
- Échec de la sonde Redis
- Le serveur RKE2 ne démarre pas
- ArgoCD passe à l'état Progression (Progressing) après la première installation
- Pod de serveur ArgoCD dans CrashLoopBackOff
- Atténuation manuelle de la politique réseau ArgoCD
- Métriques Ceph-rook manquantes dans les tableaux de bord de surveillance
- Discordance dans les erreurs signalées lors des vérifications de l'intégrité des diagnostics
- Configurer les requêtes et les limites de ressources pour les charges de travail créées par uipathctl
- Aucun problème sain en amont
- Démarrage de Redis bloqué par un antivirus
- Les pods AI Center et Document Understanding ne démarrent pas avec la vérification du certificat TLS activée
- Fluentd n’exporte pas les journaux dans les environnements IPv6
- Studio Desktop ne peut pas charger les connecteurs et activités Integration Service
- Document Understanding n'est pas affiché sur la barre de gauche d'Automation Suite
- État Échec (Failed) lors de la création d'une session de labellisation des données
- État Échec (Failed) lors de la tentative de déploiement d'une compétence ML
- La tâche de migration échoue dans ArgoCD
- La reconnaissance de l'écriture manuscrite avec l'Extracteur de formulaires intelligents (Intelligent Form Extractor) ne fonctionne pas
- Exécution de la haute disponibilité avec Process Mining
- Échec de l’ingestion de Process Mining lors de la connexion à l’aide de Kerberos
- Impossible de se connecter à la base de données AutomationSuite_ProcessMining_Authentication à l'aide d'une chaîne de connexion au format pyodbc
- L'installation d'airflow échoue avec sqlalchemy.exc.ArgumentError: impossible d'analyser l'URL rfc1738 de la chaîne ''
- Comment ajouter une règle de table d'adresse IP pour utiliser le port SQL Server 1433
- Le certificat Automation Suite n'est pas approuvé depuis le serveur sur lequel CData Sync est en cours d'exécution
- Process Mining ne parvient pas à se charger après sa désactivation et sa réactivation
- Exécution de l'outil de diagnostic
- Utilisation du pack d'assistance Automation Suite
- Explorer les journaux
Considérations relatives à l'architecture multi-nœuds et à la conception pour Automation Suite sous Linux avec Kubernetes.
Le schéma d'architecture suivant décrit un déploiement d'Automation Suite sur Linux avec Kubernetes installé sur six machines, un équilibreur de charge et le stockage de données. Il existe plusieurs types de machines : trois nœuds de serveur, deux nœuds d'agent et un nœud d'agent spécialisé.
Nœuds de serveur
Les nœuds de serveur hébergent le plan de contrôle Kubernetes, qui contrôle l'ensemble du cluster Kubernetes. Dans un déploiement multi-nœuds standard, un nombre impair de nœuds de serveur est nécessaire, le nombre minimum de serveurs étant de trois. Cette restriction est due au composant etcd , qui fait partie du plan de contrôle Kubernetes. Pour plus de détails, consultez la documentation etcd.
Pour la même raison, la majorité des nœuds de serveur doivent être disponibles à tout moment pour maintenir le cluster en bonne santé.
Ces nœuds hébergent également les composants qui nécessitent un stockage de données sur les nœuds, tels que Prometheus, le magasin d'objets intégré au cluster Ceph, UiPath Insights et le registre Docker intégré au cluster.
Nœuds d'agent
Les nœuds d’agent sont parfois appelés nœuds de travail. Ces nœuds ont pour objectif d’héberger les services UiPath® ainsi que d’autres fonctionnalités partagées de la suite. Comme aucun disque de données n’est rattaché à ces nœuds, ils ne peuvent pas héberger les composants nécessitant un stockage sur disque.
Les nœuds d'agent n'imposent aucune restriction sur le nombre de nœuds disponibles à un moment donné. Tant que le cluster résultant a une capacité suffisante pour héberger tous les pods des nœuds perdus, le cluster fonctionnera comme prévu sans aucune interruption.
Nœuds d'agents spécialisés
Ces nœuds sont les nœuds d’agent spéciaux dédiés à des tâches spécifiques, tel que le nœud Automation Suite Robots pour l’exécution des Robots et le nœud GPU pour le modèle Document Understanding. Vous ne pouvez pas héberger d’autres services UiPath® sur ces nœuds.
Load balancer
L'équilibreur de charge, qui est installé en dehors d'Automation Suite, sert de point d'entrée pour accéder aux applications hébergées sur le cluster Automation Suite. L'équilibreur de charge doit être soumis à la tolérance aux pannes des nœuds. Tous les nœuds de serveur doivent être configurés sur l'équilibreur de charge, mais les nœuds d'agent peuvent également être configurés de manière facultative. Cependant, des nœuds d'agent spécialisés ne sont pas nécessaires.
Lorsque les robots tentent d'accéder à Orchestrator, l'appel arrive sur l'équilibreur de charge, puis est transmis à l'un des nœuds disponibles. Chaque nœud héberge également le composant de mise en réseau appelé Istio, qui est un service Mesh qui agit également comme un équilibreur de charge. Lorsque l'appel est reçu par Istio exécuté sur le nœud, il tente de localiser l'instance Orchestrator sur l'ensemble du cluster. Une fois qu'il est trouvé, il redirige l'appel vers cette instance.
Comment concevoir votre déploiement
Plus de machines plus petites ou moins de machines plus grandes ?
Cela dépend entièrement de vous, les deux options ayant leurs propres avantages et inconvénients. Un nombre plus élevé de machines plus petites offre une meilleure résilience à la tolérance aux pannes de nœud par rapport à un plus petit nombre de machines plus volumineuses. Dans le même temps, elle introduit également des frais généraux de gestion supplémentaires.
Par exemple, si votre cluster Automation Suite nécessite un processeur virtuel 96, vous pouvez opter pour l'une des options suivantes :
-
Option 1 : 6 machines de 16 VCPU chacune.
- Impact : la perte d'une machine ne réduit la capacité du cluster que de 16 processeurs virtuels, et n'a donc un impact sur les services que si le cluster résultant n'a pas la capacité d'héberger tous les pods. Cependant, la gestion de 6 machines implique un effort plus important.
-
Option 2 : 3 machines de 32 VCPU chacune
- Impact : la perte d'une machine réduit la capacité du cluster de 32 vCPU, ce qui a un impact majeur sur Automation Suite. Cependant, la gestion de 3 machines implique un effort moindre.
Pour conclure, la conception du déploiement dépend de l'objectif. Si l'objectif est une meilleure tolérance aux pannes, mieux vaut opter pour des machines plus petites. Cependant, si l'objectif est de réduire les frais généraux de gestion, un plus petit nombre de machines plus volumineuses serait préférable.
Tous les nœuds de serveur au lieu des nœuds d'agent ?
Le fait d'opter pour tous les nœuds de serveur au lieu des nœuds d'agent dépend de votre RTO ou RPO.
Par exemple, supposons que votre installation Automation Suite ait besoin de 80 processeurs virtuels. Vous pouvez parvenir à cette configuration comme suit :
-
Option 1 : 5 machines serveur avec 16 vCPU chacune. Dans cette configuration, vous pouvez perdre au maximum 2 nœuds de serveur.
- Recommandé si vous visez la résilience à la perte de données. Même si 2 nœuds de serveur sont perdus, les données seront intactes et pourront être recréées à partir des répliques restantes.
-
Option 2 : 3 nœuds de serveur et les 2 nœuds d'agent avec 16 VCPU chacun. Ici, vous pouvez perdre 1 nœud de serveur et les deux nœuds d'agent, soit un total de 3 machines.
- Recommandé si vous visez la résilience à la disponibilité des nœuds. Même sans 3 machines, le cluster sera toujours disponible avec une capacité limitée, et une fois les nœuds rétablis, l'intégralité du cluster sera récupérée. Cependant, cette configuration est davantage sujette à la perte de données en raison du stockage lié aux nœuds du serveur. Si 2 nœuds de serveur sont entièrement perdus, il peut être difficile de reconstruire les données sans les restaurer à partir de la sauvegarde.