- Vue d'ensemble (Overview)
- Prérequis
- Installation
- Questions et réponses : modèles de déploiement
- Configuration des machines
- Configuration du magasin d'objets externe
- Configuration d'un registre Docker externe
- 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é
- Disaster Recovery - Installation du cluster secondaire
- 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
- Ajout d'un nœud d'agent dédié pour Task Mining
- Connexion de l'application Task Mining
- Ajout d'un nœud d'agent dédié pour les Automation Suite Robots
- Post-installation
- Administration du cluster
- Gestion des produits
- Premiers pas avec le portail d'administration du cluster
- Migration d'un magasin d'objets d'un volume persistant vers des disques bruts
- Migration des données entre les librairies
- Migration d'un magasin d'objets intégré au cluster vers un magasin d'objets externe
- Basculer vers le cluster secondaire
- Disaster Recovery : exécution d'opérations post-installation
- Conversion d'une installation existante en configuration multi-sites
- Directives sur la mise à niveau d'un déploiement actif/passif
- Directives pour la sauvegarde et la restauration d'un déploiement actif/passif
- Surveillance et alerte
- Migration et mise à niveau
- Chemins de mise à niveau Automation Suite
- 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
- Exécution d'une seule migration de locataire
- Configuration spécifique au produit
- 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 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 définir manuellement le niveau de journalisation d’ArgoCD sur Info
- 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 travailler avec les certificats
- 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
- 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
- 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
- Nœud GPU affecté par l'indisponibilité des ressources
- Volume impossible à monter car il n'est pas prêt pour les charges de travail
- Échec de la collecte du journal du pack d'assistance
- Échec de la mise à niveau du nœud unique à l’étape Fabric
- Cluster défectueux après la mise à niveau automatisée à partir de la version 2021.10
- Échec de la mise à niveau en raison d’un Ceph défectueux
- RKE2 ne démarre pas en raison d'un problème d'espace
- Échec de la validation SQL lors de la mise à niveau
- Le pod d'instantané-contrôleur-crds dans l'état CrashLoopBackOff après 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
- É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
- 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
- Secret introuvable dans l'espace de noms UiPath
- ArgoCD passe à l'état Progression (Progressing) après la première installation
- Problèmes d'accès au compte ArgoCD en lecture seule
- Pods MongoDB en mode CrashLoopBackOff ou enregistrement PVC en attente après suppression
- Services défectueux après la restauration ou l'annulation du cluster
- Pods bloqués dans Init:0/X
- 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
- Échec de la configuration des alertes par e-mail après la mise à niveau
- Aucun problème sain en amont
- 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
- Échec du déploiement de la compétence ML en raison de l'expiration du jeton
- 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'adresses IP pour utiliser le port SQL Server 1433
- Utilisation de l'outil de diagnostic d'Automation Suite
- Utilisation du pack d'assistance Automation Suite
- Explorer les journaux
Présentation des certificats
Cette page décrit tous les certificats requis par une installation d'Automation Suite ainsi que le principe du processus de rotation des certificats.
For details on the certificates you must provide when replacing the self-signed certificates, see Certificate requirements.
Comprendre le fonctionnement des certificats de confiance
La communication interservices entre les produits au sein d'Automation Suite s'effectue via le nom de domaine complet du cluster. Les produits ne peuvent pas utiliser d'URL internes pour communiquer entre eux. Par exemple, Orchestrator peut se connecter à Identity Server pour l'authentification de l'utilisateur via https://automationsuite.mycompany.com/identity .
Bien que deux produits Automation Suite différents doivent utiliser le nom de domaine complet du cluster, ils peuvent également contenir plusieurs microservices. Ces microservices peuvent utiliser des URL internes pour communiquer entre eux.
Comprendre le fonctionnement de la communication
Le diagramme et le flux suivants expliquent comment le client se connecte à un service et comment l'authentification est effectuée via le service d'identité.
-
Le client établit une connexion avec le service à l'aide de l'URL, c'est-à-dire Orchestrator, Apps, Insights, etc. à l'aide de l'URL suivante :
https://automationsuite.mycompany.com/myorg/mytenant/service_. -
Istio intercepte l'appel et, en fonction du chemin d'accès de
service_, transfère l'appel au service spécifique. -
Le service appelle Identity Service pour authentifier la demande entrante du client via
https://automationsuite.mycompany.com/myorg/mytenant/identity_. -
Istio intercepte l'appel et, en fonction du chemin d'accès
identity_, transfère la demande au service d'identité. -
Identity Service renvoie la réponse avec le résultat à Istio.
-
Istio renvoie la réponse au service. Étant donné que l'appel est effectué à l'aide du protocole HTTPS, Istio renvoie la réponse avec le certificat TLS afin que la connexion soit sécurisée. Si le service approuve le certificat de serveur renvoyé par Istio, il approuve la réponse. Sinon, le service rejette la réponse.
-
Le service prépare la réponse et la renvoie à Istio.
-
Istio renvoie la demande au client. Si la machine cliente fait confiance au certificat, la totalité de la demande aboutit. Sinon, la requête échoue.
Comprendre la façon dont les robots et Orchestrator communiquent
Cette section décrit un scénario dans lequel un robot essaie de se connecter à Orchestrator dans Automation Suite. Le diagramme et le flux suivants expliquent comment le Robot se connecte à Orchestrator et comment l'authentification est effectuée via le serveur d'identité.
-
Le Robot établit une connexion avec Orchestrator à l'aide de l'URL suivante :
https://automationsuite.mycompany.com/myorg/mytenant/orchestrator_ -
Istio intercepte l'appel et, en fonction du chemin d'accès
orchestrator_, le transmet au service Orchestrator. -
Le service Orchestrator appelle Identity Server pour authentifier la demande entrante du robot via
https://automationsuite.mycompany.com/myorg/mytenant/identity_. -
Istio intercepte l'appel et, en fonction du chemin d'accès
identity_, transmet la demande au serveur d'identité. -
Identity Server renvoie la réponse avec les résultats à Istio.
-
Istio renvoie la réponse à Orchestrator. Étant donné que l'appel est effectué à l'aide du protocole HTTPS, Istio renvoie la réponse avec le certificat TLS, afin que la connexion soit sécurisée. Si Orchestrator approuve le certificat de serveur renvoyé par Istio, il approuve également la réponse. Sinon, Orchestrator rejette la réponse.
-
Orchestrator prépare la réponse et la renvoie à Istio.
-
Istio renvoie la demande au robot. Si la machine robot fait confiance au certificat, la totalité de la requête aboutit. Sinon, la requête échoue.
Comprendre l'architecture de conteneur liée aux certificats
Au niveau du conteneur
Dans cet exemple, le conteneur possède son propre système d'exploitation (RHEL OS), et le service peut représenter un Orchestrator s'exécutant sur RHEL OS.
Chaque système d'exploitation possède son propre magasin de certificats. Dans le cas du système d'exploitation RHEL, le magasin approuvé de certificats se trouve dans /etc/pki/ca-trust/ca/.
Ce chemin est l'endroit où RHEL OS stocke tous les certificats. Chaque conteneur aura son propre magasin de confiance de certificats. Dans le cadre de la configuration d'Automation Suite, nous injectons le certificat de chaîne complet qui contient le certificat racine, tous les certificats intermédiaires ainsi que le certificat feuille, et nous les stockons dans ce chemin. Étant donné que les services approuvent les certificats racine et intermédiaire, ils approuvent automatiquement tous les autres certificats créés par les certificats racine et intermédiaire.
Au niveau du pod
Des centaines de conteneurs sont exécutés dans Automation Suite. L'ajout manuel de certificats pour chacun de ces conteneurs pour tous les services serait une tâche exigeante. Cependant, Automation Suite inclut un volume partagé et un cert-trustor de conteneur Init pour vous aider dans cette tâche. Init est un conteneur spécialisé qui s'exécute avant les conteneurs d'applications dans un pod, et son cycle de vie se termine dès qu'il a terminé son travail.
Dans l'exemple suivant, le service Orchestrator s'exécute dans un pod. Pour rappel, un pod peut contenir plusieurs conteneurs. Dans ce pod, nous injectons un autre conteneur Init appelé Cert-trustor . Ce conteneur contiendra le certificat racine, les certificats intermédiaires et le certificat feuille.
Le volume partagé est attaché à la fois au conteneur Cert-Trustor et au conteneur de service Orchestrator. Il a le même chemin que le magasin d'approbation de certificat de système d'exploitation RHEL : /etc/pki/ca-trust/ca/source/anchors.
Avant qu'Orchestrator puisse s'exécuter, Cert-trustor exécute une tâche qui ajoute les certificats dans le volume partagé à l'emplacement /etc/pki/ca-trust/ca/source/anchors et se termine.
Les certificats seront disponibles pour le service Orchestrator via le volume partagé.
Inventaire de tous les certificats dans Automation Suite
Certificats générés lors de l'installation
Dans le cadre de l'installation d'Automation Suite, les certificats suivants sont générés :
- 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 (self-signed or customer-provided), which expires in 90 days. If you want to have your own certificate for signing identity tokens, see Managing certificates.
- Les certificats RKE2 sont générés et expirent par défaut dans 12 mois. Si les certificats ont déjà expiré ou s'ils expirent dans moins de 90 jours, ils sont alternés lorsque RKE2 est redémarré.
Certificats supplémentaires
- S'il est activé, le protocole d'authentification SAML2 peut utiliser un certificat de service.
- 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.
Comprendre le fonctionnement de la mise à jour/de la rotation des certificats
Installation en ligne
Les certificats sont stockés à deux endroits :
istio-ingressgateway-certsdansistio-systemuipathespace de noms
Pour mettre à jour le certificat dans les espaces de noms istio-system et uipath , vous devez exécuter la commande sudo ./configureUiPathAS.sh tls-cert update .
Les pods ne peuvent accéder qu'aux secrets qui se trouvent dans leur espace de noms. Par exemple, les pods s'exécutant dans l'espace de noms uipath ne peuvent pas accéder aux secrets stockés dans l'espace de noms istio-system . Par conséquent, les certificats sont copiés dans les deux espaces de noms.
Pour l'espace de noms uipath , nous montons les certificats sur les pods qui en ont besoin et redémarrons les pods afin qu'ils puissent utiliser les nouveaux certificats.
Pour les installations d'évaluation à nœud unique, la mise à jour réduira les pods. Tous les pods seront arrêtés et redémarrés. Cette opération entraînera un temps d'arrêt.
Pour les installations de production multi-nœuds compatibles haute disponibilité, la mise à jour s'effectue à l'aide de la méthode de déploiement progressif. Si les microservices ont deux pods à des fins de haute disponibilité, la mise à jour supprimera l'un des pods et une nouvelle version du pod apparaîtra. Une fois le nouveau démarré avec succès, l’ancien sera supprimé. Il y aura une brève période d'arrêt pendant que l'ancien pod n'est pas encore terminé.
Installation hors ligne
En plus des certificats spécifiques à une installation en ligne, un déploiement hors ligne comporte deux emplacements supplémentaires où rootCA.crt et tls.crt sont utilisés. Les certificats sont utilisés dans ArgoCD et le registre Docker, puis ils sont stockés dans les espaces de noms Docker et ArgoCD.
Vous pouvez vérifier les secrets à l'aide de la commande suivante :
# 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
- Comprendre le fonctionnement des certificats de confiance
- Comprendre le fonctionnement de la communication
- Comprendre la façon dont les robots et Orchestrator communiquent
- Comprendre l'architecture de conteneur liée aux certificats
- Au niveau du conteneur
- Au niveau du pod
- Inventaire de tous les certificats dans Automation Suite
- Certificats générés lors de l'installation
- Certificats supplémentaires
- Comprendre le fonctionnement de la mise à jour/de la rotation des certificats
- Installation en ligne
- Installation hors ligne