- Vue d'ensemble (Overview)
- Prérequis
- Installation
- Questions et réponses : modèles de déploiement
- Configuration des machines
- Configurer l'équilibreur de charge
- Configuration du DNS
- Configuration de Microsoft SQL Server
- Configuration des certificats
- Installation de production en ligne multi-nœuds compatible haute disponibilité
- Installation de production hors ligne multi-nœuds compatible haute disponibilité
- Téléchargement des packages d'installation
- install-uipath.sh parameters
- Activation du module complémentaire Redis High Availability Add-on pour le cluster
- Fichier de configuration de Document Understanding
- Ajout d'un nœud d'agent dédié avec prise en charge GPU
- Connexion de l'application Task Mining
- Ajout d'un nœud d'agent dédié pour Task Mining
- Post-installation
- Administration du cluster
- Gestion des produits
- Gérer le cluster dans ArgoCD
- Configuration du serveur NFS externe
- Automatisé : activation de la sauvegarde sur le cluster
- Automatisé : Désactivation de la sauvegarde sur le cluster
- Automatisé, en ligne : restauration du cluster
- Manuel, hors ligne : Restauration du cluster
- Manuel : Activation de la sauvegarde sur le cluster
- Manuel : Activation de la sauvegarde sur le cluster
- Manuel en ligne : Restauration du cluster
- Manuel, hors ligne : Restauration du cluster
- Configuration supplémentaire
- Migration d'un magasin d'objets d'un volume persistant vers des disques bruts
- Surveillance et alerte
- Migration et mise à niveau
- Automatisée : mise à niveau en ligne
- Automatisée : mise à niveau hors ligne
- Manuel : mise à niveau en ligne
- Manuel : mise à niveau hors ligne
- Annulation en cas d'erreur
- Migration d'un disque physique Longhorn vers LVM
- Migration de Canal vers Cilium CNI
- Rétrogradation de Ceph de la version 16.2.6 à la version 15.2.9
- Options de migration :
- Étape 1 : Déplacement des données d'organisation Identity d'installation autonome vers Automation Suite
- Étape 2 : Restauration de la base de données du produit autonome
- Étape 3 : Sauvegarder la base de données de la plate-forme dans Automation Suite
- Étape 4 : Fusion des organisations dans Automation Suite
- Étape 5 : Mise à jour des chaînes de connexion du produit migré
- Étape 6 : migration de la version autonome d’Insights
- Étape 7 : suppression du locataire par défaut
- B) Migration à locataire unique
- Configuration spécifique au produit
- Bonnes pratiques et maintenance
- Résolution des problèmes
- Comment résoudre les problèmes des services lors de l'installation
- 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
- 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 nettoyer automatiquement les instantanés Longhorn
- Comment désactiver le déchargement de la somme de contrôle txt
- Comment résoudre les chiffrements faibles dans TLS 1.2
- Impossible d'exécuter une installation hors ligne sur le système d'exploitation RHEL 8.4
- Erreur lors du téléchargement du bundle
- L'installation hors ligne échoue en raison d'un fichier binaire manquant
- Problème de certificat dans l'installation hors ligne
- La première installation échoue lors de la configuration de Longhorn
- Erreur de validation de la chaîne de connexion SQL
- Échec de la vérification des prérequis pour le module selinux iscsid
- Disque Azure non marqué comme SSD
- Échec après la mise à jour du certificat
- 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 1
- Volume impossible à monter car il n'est pas prêt pour les charges de travail
- RKE2 échoue lors de l'installation et de la mise à niveau
- Échec du chargement ou du téléchargement des données dans l'objectstore
- Le redimensionnement de la PVC ne répare pas Ceph
- Échec du redimensionnement du PVC objectstore
- Rook Ceph ou pod Looker bloqué dans l'état Init
- Erreur de pièce jointe du volume Ensembles d'états.
- Échec de la création de volumes persistants
- Correctif de récupération du stockage
- La sauvegarde a échoué en raison de l’erreur TropInstantanés (TooManySnapshots)
- Toutes les répliques Longhorn sont défaillantes
- Définition d'un délai d'expiration pour les portails de gestion
- Mettre à jour les connexions du répertoire sous-jacent
- Impossible de se connecter 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 de l'erreur suivante : un code d'état non valide a été fourni (les informations d'identification du client ont été révoquées).
- 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 <ADDOMAIN><aduser>.Raison : Le compte est 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
- Secret introuvable dans l'espace de noms UiPath
- Après l'installation initiale, l'application ArgoCD est passée à l'état Progression (Progressing)
- Pods MongoDB en mode CrashLoopBackOff ou enregistrement PVC en attente après suppression
- INCOHÉRENCE INATTENDUE ; EXÉCUTER fsck MANUELLEMENT
- MongoDB ou applications métier dégradées après la restauration du cluster
- L’opérateur d’auto-guérison et le référentiel Sf-k8-utils manquants
- Services défectueux après la restauration ou la restauration du cluster
- Le pod RabbitMQ est bloqué dans CrashLoopBackOff
- Prometheus en état CrashloopBackoff avec erreur de mémoire insuffisante (OOM)
- Métriques Ceph-rook manquantes dans les tableaux de bord de surveillance
- Les pods ne peuvent pas communiquer avec le nom de domaine complet dans un environnement proxy
- 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
- Utilisation de l'outil de diagnostic d'Automation Suite
- Utilisation de l'outil Automation Suite Support Bundle
- Explorer les journaux
Architecture de déploiement AWS
-
Pile principale ‑ point d'entrée principal :
- Pile de réseau
- Pile Uipath-sf
-
Pile configurable en détail :
- Pile de réseau
- Pile Uipath-sf
- Pile Uipath-sf
-
Uipath-sf :
- Pile SSL
- Pile de routage
- Pile de serveur
- Pile de base de données
- Pile de sauvegarde
- Pile de gestion
-
Fonctions Lambda (
AWS::Lambda::Function
) :FindAMIFunction
– pour trouver un ID d'AMI correspondant.CreateInputJsonFunction
– pour créer la configuration utilisée par le programme d'installation d'Automation Suite.ComputeResourceSizeFunction
– pour calculer la configuration matérielle minimale des instances EC2 requise, en fonction des services sélectionnés et du type de déploiement.
-
Rôles IAM (
AWS::IAM::Role
) pour que les fonctions Lamdda fournissent des autorisations minimales :FindAmiLambdaRole
CreateInputJsonLambdaRole
ComputeResourceSizeLambdaRole
-
Clés secrètes (
AWS::SecretsManager::Secret
) pour stocker les informations sensibles :RDSPassword
OrgSecret
PlatformSecret
Clé secrète ArgoCD
ArgoCdUserSecret
InputJsonSecret
KubeconfigSecret
- Pile SSL (facultatif)
- Pile de réseau (facultatif)
-
Pile de sauvegarde (facultatif) :
ClusterBackupStorage
(AWS::EFS::FileSystem
) ‑ Amazon Elastic File System utilisé pour stocker la sauvegarde.SharedStorageSecurityGroup
(AWS::EC2::SecurityGroup
) – Groupe de sécurité utilisé pour autoriser les connexions réseau NFS à partir des nœuds du cluster.SharedStorageMountTargetOne
(AWS::EFS::MountTarget
) – Ressource qui crée la cible de montage pour le système de fichiers EFS et le premier sous-réseau privé.SharedStorageMountTargetTwo
(AWS::EFS::MountTarget
) : Ressource qui crée la cible de montage pour le système de fichiers EFS et le deuxième sous-réseau privé.SharedStorageMountTargetThree
(AWS::EFS::MountTarget
) : Ressource facultative qui crée la cible de montage pour le système de fichiers EFS et le troisième sous-réseau privé.
-
Pile de la base de données(Database stack) :
RDSDBInstance
(AWS::RDS::DBInstance
) – L'instance de base de données Amazon RDS. L'UGS de la base de données estdb.m5.2xlarge
.DBSubnetGroup
(AWS::RDS::DBSubnetGroup
) – Groupe de sous-réseaux privé qui contient les sous-réseaux privés.DbSecurityGroup
(AWS::EC2::SecurityGroup
) – Groupe de sécurité permettant d'accéder à l'instance de base de données.
-
Pile de routage:REMARQUE: les piles Alb et Nlb sont des configurations qui s'excluent mutuellement
-
Pile Alb :
ExternalLoadBalancer
(AWS::ElasticLoadBalancingV2::LoadBalancer
) – Équilibreur de charge d'application utilisé pour distribuer le trafic Automation Suite. Il peut être interne ou connecté à Internet.ELBSecurityGroup
(AWS::EC2::SecurityGroup
) – Le groupe de sécurité appliqué à l'équilibreur de charge.HttpsTargetGroup
(AWS::ElasticLoadBalancingV2::TargetGroup
) – Le groupe cible de l'équilibreur de charge.HttpsListener
(AWS::ElasticLoadBalancingV2::Listener
) : L'écouteur de l'équilibreur de charge.
-
Pile Nlb :
ExternalLoadBalancer
(AWS::ElasticLoadBalancingV2::LoadBalancer
) : Équilibreur de charge réseau utilisé pour distribuer le trafic Automation Suite. Il peut être interne ou connecté à Internet.TcpTargetGroup
(AWS::ElasticLoadBalancingV2::TargetGroup
) – Le groupe cible de l'équilibreur de charge.TcpListener
(AWS::ElasticLoadBalancingV2::Listener
) : L'écouteur de l'équilibreur de charge.
KubeLoadBalancer
(AWS::ElasticLoadBalancingV2::LoadBalancer
) – Équilibreur de charge de réseau privé utilisé pour l'enregistrement des nœuds.KubeApiTcpTargetGroup
(AWS::ElasticLoadBalancingV2::TargetGroup
) – Le groupe cible pour le trafic d'enregistrement de nœud duKubeLoadBalancer
.KubeApiTcpListener
(AWS::ElasticLoadBalancingV2::Listener
) : L'écouteur pour le trafic d'enregistrement de nœud duKubeLoadBalancer
.Rke2RegistrationTcpTargetGroup
(AWS::ElasticLoadBalancingV2::TargetGroup
) – Le groupe cible pour le trafic d'enregistrement de nœud duKubeLoadBalancer
.Rke2RegistrationTcpListener
(AWS::ElasticLoadBalancingV2::Listener
) : L'écouteur pour le trafic d'enregistrement de nœud duKubeLoadBalancer
.RootRecordSet
(AWS::Route53::RecordSet
) – DNS. Un enregistrement pour le nom de domaine complet.SubdomainRecordSet
(AWS::Route53::RecordSet
) – DNS. Un enregistrement pour les sous-domaines du nom de domaine complet.
-
-
Pile de gestion (Management stack) :
LifecycleAutomationLogs
(AWS::Logs::LogGroup
) – Groupe de journaux pour la journalisation des événements de l'automatisation SSM.-
Documents SSM (
AWS::SSM::Document
) ensembles d'étapes utilisées pour permettre une suppression progressive des nœuds :ServerRemoveInstanceDocument
AgentRemoveInstanceDocument
UpdateAMIDocument
– Met à jour l'ID AMI des groupes Auto Scaling.
-
Hooks Autoscaling Lyfecycle (
AWS::AutoScaling::LifecycleHook
) qui nous permettent d'exécuter les documents SSM lorsqu'une instance EC2 reçoit un événement de terminaison d'instance :ServerAsgLifeCycleHookTerminating
AgentAsgLifeCycleHookTerminating
-
Règles d'événement (
AWS::Events::Rule
) qui déclenchent l'exécution des documents SSM :ServerTerminateEventRule
AgentTerminateEventRule
-
Rôles IAM (
AWS::IAM::Role
) nécessaires à l'exécution des documents SSM et à l'ajout de journaux au groupe de journaux :AutomationAssumeRole
EventsBridgeAssumeRole
- Pile de serveurs (server stack) :
-
ServerLaunchConfiguration
(AWS::EC2::LaunchTemplate
) – Configuration de l'instance EC2 pour les nœuds de serveur. Configuration du disque :- Disque du système d'exploitation – ugs gp2, capacité 128 Gio
- Disque de cluster – ugs gp2, capacité 300 Go
- Disque etcd – ugs io1, capacité 32 Gio
- Disque de données – ugs gp2, capacité 512 Go ou 2 To selon les services sélectionnés.
-
AgentLaunchConfiguration
(AWS::EC2::LaunchTemplate
) : Configuration de l'instance EC2 pour les nœuds agent. Configuration du disque :- Disque du système d'exploitation – ugs gp2, capacité 128 Gio
- Disque de cluster – ugs gp2, capacité 300 Go
GpuEnabledNode
(AWS::EC2::Instance
) – Nœud GPU facultatif. Il a la même configuration de disque qu'un agent.TaskMiningNode
(AWS::EC2::Instance
) - Nœud Task Mining facultatif. Déployé uniquement si le service Task Mining est sélectionné. Il a la même configuration de disque qu'un agent.BastionHost
(AWS::EC2::Instance
) – Instance EC2 facultative utilisée pour SSH avec des nœuds de cluster. Il a le type d'instancet3.large
et un disque gp2 de 200 Go.ServerAutoScalingGroup
(AWS::AutoScaling::AutoScalingGroup
) – Groupe Auto Scaling pour les serveurs.AgentAutoScalingGroup
(AWS::AutoScaling::AutoScalingGroup
) : Groupe Auto Scaling pour les agents.-
ServiceFabricIamRole
(AWS::IAM::Role
) facultatif qui dispose des autorisations pour :- écrire des journaux
- lire les configurations des instances EC2
- télécharger les ressources AWS Quickstart
- accéder au secret de configuration de l'installation d'Automation Suite
- accéder à la clé secrète de configuration du cluster kubeconfig
ServiceFabricSecurityGroup
(AWS::EC2::SecurityGroup
) – Groupe de sécurité permettant d'accéder aux applications UiPath.BastionSecurityGroup
(AWS::EC2::SecurityGroup
) – Groupe de sécurité facultatif permettant l'accès SSH à BastionAsgProcessModifierFunction
(AWS::Lambda::Function
) – Utilisé pour modifier les processus ASG lors de la création de la pile CF.AsgProcessModificationRole
(AWS::IAM::Role
) – Rôle IAM pour fournir des autorisations minimales pour leAsgProcessModifierFunction
-
Paramètres SSM (
AWS::SSM::Parameter
) :InstanceAMIIdSSMParameter
– Stocke l'ID AMI des nœuds.InstanceAMIImageNameSSMParameter
– Contient le nom de l'image utilisé au moment du déploiement ou mis à jour via leUpdateAMIDocument
.
-
Hooks Autoscaling Lyfecycle (
AWS::AutoScaling::LifecycleHook
) qui nous permettent de faire passer les instances EC2 à l'état EnService (InService) une fois le programme d'installation réussi :ServerAsgLifeCycleHookLaunching
AgentAsgLifeCycleHookLaunching
Le modèle calcule dynamiquement le matériel nécessaire au déploiement comme suit :
- Selon les services installés (sélection de produits de base ou complète), il définit les exigences minimales au niveau du cluster.
- Selon le profil de déploiement (profil à nœuds multiples ou à nœud unique), il définit la configuration minimale requise pour une seule machine virtuelle.
- Sélectionne les types d'instances en fonction de leur disponibilité dans la région que vous déployez et des exigences susmentionnées.
La table suivante montre les mappages entre le déploiement et les types d'instances possibles :
Type de déploiement |
Type d’instance |
---|---|
Nœud unique de base |
c5.4xlarge , c5a.4xlarge , m5.4xlarge , m5a.4xlarge |
Nœud unique complet |
c5a.8xlarge , c5.9xlarge , m5.8xlarge |
Multi-nœud de base |
c5.4xlarge , c5a.4xlarge , m5.4xlarge , m4.4xlarge |
Multi-nœud complet |
c5a.8xlarge , c5.9xlarge , m5.8xlarge , m5a.8xlarge |