- Démarrage
- Prérequis
- Prérequis matériels
- Prérequis logiciels
- Serveur Web sur une seule machine (Web Server on a Single Machine)
- Déploiement multinœud
- Haute disponibilité (High Availability)
- Récupération d'urgence (Disaster Recovery) - Active/Passive
- Récupération d'urgence (Disaster Recovery) - Deux centres de données actifs (Two Active Data Centers)
- Déploiement dans le cloud (Deployment in the Cloud)
- Meilleures pratiques
- Installation
- Mise à jour en cours
- Serveur d'identité
- Module complémentaire haute disponibilité
Prérequis à l'installation
- Système d'exploitation Windows Server - version minimale requise : 2012 R2. Pour obtenir les autres versions prises en charge, consultez la section Prérequis logiciels.
- Windows PowerShell - version minimale requise : 5.1. Pour télécharger Windows PowerShell version 5.1, visitez ce lien et installez Windows Management Framework 5.1. Pour obtenir de l'aide supplémentaire, consultez la documentation d'installation de Windows PowerShell 5.1.
- .NET Framework : version minimale requise : 4.7.2 Pour savoir quelle version de .NET est installée sur votre ordinateur, veuillez consulter Trouver la version installée de .NET.
- IIS (IIS) :version minimale requise : 8. Elle fait partie du rôle Web Server (IIS) (Web Server (IIS) role) et est automatiquement activée par le script
InstallRolesAndFeatures.ps1
fourni, disponible ici. -
Module IIS ASP.NET Core - version minimum 3.1.x, disponible iciPour le télécharger, assurez-vous de cliquer sur Bundle d'hébergement (Hosting Bundle), comme illustré dans l'image suivante.
Remarque : Seul le module Core est requis et peut être installé sans aucune exécution à l'aide du paramètreOPT_NO_RUNTIME=1
de la ligne de commande. - Réécriture d'URL (URL Rewrite) : version minimale requise
2.1
. permet au site Web de rediriger les appels vers HTTPS (https://servername
), au lieu de HTTP (http://servername
). Téléchargez et installez Réécriture d'URL (URL Rewrite) en accédant à ce lien. - Rôles et fonctionnalités du serveur. Nous fournissons un script PowerShell qui ajoute automatiquement les rôles et fonctionnalités nécessaires à un ou plusieurs serveurs d'applications. La liste de rôles et de fonctionnalités est présentée dans la section Rôles et fonctionnalités du serveur (Server Roles and Features). Notez que ce chapitre est fourni à titre informatif uniquement.
- Extension Web Deploy (Web-Deploy extension) - version minimale requise : 3.6, version 64 bits. Notez que cela est uniquement nécessaire pour les installations du script PowerShell, telles que celle d'Azure. Permet de déployer un site Web. Téléchargez et installez l'extension Web Deploy 3.6 en accédant à ce lien.
- Web.Config - l'élément
<system.webServer>
dansweb.config
ne doit contenir aucune section verrouillée. Si de telles sections existent, vous devez les déverrouiller manuellement dans IIS. -
L'utilisateur du pool d'applications doit disposer des droits suivants dans la politique de l’ordinateur local :
- Ouvrir une session en tant que tâche.
-
L’authentification anonyme doit être activée.
Le protocole HTTPS est obligatoire pour toute communication entre les Robots et Orchestrator sur tous les navigateurs via lesquels les utilisateurs accèdent à l'application Web.
Les 3 types suivants de certificats Web peuvent être utilisés.
- Certificat Web émis par une autorité de certification approuvée (telle que GoDaddy, VeriSign, etc). Le certificat Web doit être importé vers Certificats de serveur dans IIS. Vous devez connaître le nom de l'entité émettrice, qui doit être fourni lorsque Windows Installer vous y invite.
- Vous êtes une autorité de certification qui peut émettre des certificats approuvés dans le domaine Windows. Consultez la page Utilisation d'un certificat pour le protocole HTTPS.
- Un certificat auto-signé, qui n'est pas recommandé pour la production. Le certificat n’est pas approuvé à l’intérieur du domaine. Pour cette raison, vous devez exporter sa clé publique, puis l'importer sur toutes les machines Robot. Voir Utilisation d'un certificat pour le protocole HTTPS pour plus d'informations.
-sslCertificate
est le même que celui qui s'affiche dans la colonne Émis à (Issued To) de Certificats du serveur (Server Certificates) dans IIS.
Pour des raisons de sécurité, le certificat utilisé par le serveur d’identité doit :
- avoir une clé publique 2048 bits ;
- disposer d'une capacité de signature ;
-
dispose d'une clé privée accessible par l'utilisateur d'AppPool,
- être dans sa période de validité (non expiré).
appsettings.Production.json
du serveur d’identité, dans la section Signature des informations d’identification.
Si un certificat auto-signé est utilisé, celui-ci doit également être placé dans le magasin des Autorités de certification racines approuvées (à côté de l’emplacement personnel habituel).
Le certificat est utilisé pour signer les jetons d'accès OpenID qui sont utilisés pour l'identification de l'utilisateur via le navigateur et pour la communication de service à service entre Orchestrator et le serveur d'identité. Cliquez ici pour plus de détails sur OpenID Connect.
- Le produit SQL Server peut être installé sur la même machine que le serveur d'applications (non recommandé pour l'environnement de production) ou fourni en tant que machine distincte. La machine SQL Server peut être partagée avec d'autres applications. Il n'a pas besoin d'être dédié à Orchestrator. Cliquez ici pour connaître les conditions préalables, les restrictions et les recommandations sur le déploiement des groupes de disponibilité Always On et ici pour plus de détails sur les options de déploiement physique.
-
Si vous prévoyez de connecter Orchestrator à la base de données à l'aide de l'utilisateur SQL Server, activez le mode d'authentification Windows et SQL Server (Windows and SQL Server Authentication mode). Sinon, "Mode d'authentification Windows" est suffisant. Si SQL Server est déjà installé, sélectionnez cette option, comme indiqué dans les illustrations ci-dessous :
Remarque : L’utilisateur du serveur SQL Server doit avoir accès au niveau du serveur ; l'accès au niveau de la base de données est insuffisant pour réussir l'installation. - La séquence de classement doit être celle par défaut :
Latin1_General_CI_AS
. - SQL Server Management Studio est nécessaire à la configuration de la connexion de l'utilisateur de domaine qui accède à SQL Server. Le pool d'applications s'exécute sur le serveur d'applications avec le nom de l'utilisateur de domaine.
Avant d'installer Orchestrator, il est nécessaire de configurer l'instance SQL Server à utiliser.
Prérequis :
- Le nom de la machine exécutant SQL Server ;
- le nom de l'instance, si ce n'est pas celle par défaut ;
- la valeur du port TCP, si ce n'est pas le port par défaut : 1433 ;
- le port SQL Server est ouvert dans le pare-feu de la machine exécutant SQL Server ;
- le protocole TCP dans le Gestionnaire de configuration SQL Server doit être activé ;
- le service SQL Server doit écouter sur un port fixe, pas sur un port alloué de manière dynamique.
- l'accès public à la base de données maître SQL est requis pour le compte de service exécutant Orchestrator. Cela est nécessaire à la fois pour l'installation et pour les futures mises à niveau.
Sélectionnez l'une des options suivantes via lesquelles Orchestrator peut se connecter à la base de données SQL Server.
- Authentification intégrée de Windows. Pour cette option, une nouvelle connexion est nécessaire à SQL Server, en tant que compte de service. Ce comte doit être un utilisateur de domaine dont le mot de passe n'expire jamais.
Pour créer une nouvelle connexion dans SQL Server Management Studio :
a. Dans le volet Explorateur d'objets, accédez à Sécurité > Connexions.
b. Cliquez avec le bouton droit sur le dossier Connexions et sélectionnez Nouvelle connexion. La fenêtre Nouvelle connexion s'affiche.
c. Sélectionnez l'option Authentification Windows. La fenêtre est mise à jour en conséquence.
d. Dans le champ Nom de connexion, tapez le domaine d'utilisateur que vous souhaitez utiliser comme compte de service.
e. Dans la liste des langues par défaut, sélectionnez Français.
f. Cliquez sur OK. Vos configurations sont enregistrées.
Si le compte de service a déjà été créé et ajouté à la section Sécurité > Connexions de SQL Server, vérifiez que l'option Langue par défaut de ce compte SQL est configurée sur Anglais. Si ce n'est pas le cas, effectuez les ajustements nécessaires.
sa
.
Pour créer un nouvel utilisateur SQL dans SQL Server Management Studio :
a. Dans le volet Explorateur d'objets, accédez à Sécurité > Connexions.
b. Cliquez avec le bouton droit sur le dossier Connexions et sélectionnez Nouvelle connexion. La fenêtre Nouvelle connexion s'affiche.
c. Sélectionnez l'option Authentification SQL Server. La fenêtre est mise à jour en conséquence.
d. Remplissez les champs Nom de connexion, Mot de passe et Confirmer le mot de passe de manière appropriée.
e. Veillez à ce que les options Appliquer l'expiration de mot de passe et L'utilisateur doit changer de mot de passe à la prochaine connexion ne soient pas sélectionnées.
Si le compte SQL Server a déjà été créé et ajouté à la section Sécurité > Connexions de SQL Server, vérifiez que l'option Langue par défaut est configurée sur Anglais. Si ce n'est pas le cas, effectuez les ajustements nécessaires.
dbcreator
AVANT d'installer Orchestrator, car la base de données est créée lors de l'installation.
Si les restrictions de sécurité n'autorisent pas l'utilisation du rôle de serveur dbcreator
dans le compte de service, créez la base de données vide dans SQL Server.
Windows Installer se connecte à SQL Server pour vérifier l'existence de la base de données.
db_owner
, comme dans la capture d'écran suivante.
db_owner
avec la connexion UiPath, accordez les suivants :
db_datareader
db_datawriter
db_ddladmin
-
Autorisation
EXECUTE
sur le schémadbo
[block:image] { "images": [ { "image": [] } ] } [/block]
EXECUTE
doit être accordée en utilisant la commande SQL GRANT EXECUTE
, comme suit.
-
Si l'option Authentification intégrée de Windows est utilisée :
USE UiPath GO GRANT EXECUTE ON SCHEMA::dbo TO [domain\user] GO
USE UiPath GO GRANT EXECUTE ON SCHEMA::dbo TO [domain\user] GO -
Si l'authentification de SQL Server est utilisée :
USE UiPath GO GRANT EXECUTE ON SCHEMA::dbo TO [sql_user] GO
USE UiPath GO GRANT EXECUTE ON SCHEMA::dbo TO [sql_user] GO
Le module complémentaire haute disponibilité (HAA) pour Orchestrator est une base de données en mémoire utilisée pour la mise en cache et qui est partagée entre les nœuds Orchestrator, fournissant ainsi une synchronisation quasi instantanée.
HAA est obligatoire dans un environnement de cluster.
Les déploiements d'Orchestrator multinœud utilisent le protocole RESP (REdis Serialization Protocol) pour la communication et peuvent donc être configurés à l'aide de n'importe quelle solution reposant sur ce protocole. HAA est cependant la seule solution de ce type prise en charge par UiPath.
Les informations suivantes sont stockées dans HAA :
- état de la session - automatiquement défini lors de l'installation d'Orchestrator sur plusieurs nœuds
- sessions utilisateur du navigateur
- cache de pulsation du Robot
- associations entre des utilisateurs et des rôles
- associations entre des utilisateurs et des unités d'organisation
- informations de licence
- paramètres
Orchestrator utilise HAA comme cache partagé pour tous ses nœuds. L'exemple suivant décrit comment le cache est utilisé pour coordonner les nœuds Orchestrator :
- Exemple : Un utilisateur démarre manuellement une tâche Robot, sur un nœud Orchestrator. Ce nœud spécifique peut ne pas savoir à quel nœud Orchestrator le Robot est connecté. Le nœud à partir duquel vous avez démarré la tâche transmet la demande à HAA, qui, à son tour, synchronise les informations. Le nœud d'Orchestrator qui a établi une connexion au Robot en question lui envoie la commande de démarrage. Les autres nœuds d'Orchestrator non connectés à notre Robot ignorent simplement la commande.
LoadBalancer.Redis.ConnectionString
dans UiPath.Orchestrator.dll.config
. Pour plus d'informations, consultez cette page.
Un équilibreur de charge réseau permet de répartir la charge sur plusieurs nœuds et permet ainsi d'améliorer les performances globales de votre instance d'Orchestrator. En outre, en cas d'échec de l'un des nœuds, les autres récupèrent la charge, sans temps d'arrêt.
Nous recommandons d'utiliser un équilibrage de charge F5 avec un algorithme prédictif, car la charge est répartie vers des nœuds qui fonctionnent mieux, et donc, elle offre de meilleures performances globales d'Orchestrator. Pour plus d'informations sur les algorithmes, jetez un coup d'œil ici. Pour plus d’informations sur les algorithmes, veuillez consulter ici.
UiPath.Orchestrator.dll.config
(C:\Program Files (x86)\UiPath\Orchestrator
). Pour plus d'informations, consultez Configuration de la journalisation ( Logging Configuration).
Si vous choisissez d'utiliser ElasticSearch, sachez que bien qu'il s'agisse d'un produit multiplateforme, qui fonctionne sous Windows, Linux ou Unix, il nécessite Java. Vous pouvez utiliser OpenJDK ou Oracle JRE. Une matrice de compatibilité est fournie par Elasticsearch ici.
http://computername.domain.name
ou http://computername
est utilisé au lieu de http://localhost
.
Si ce n'est pas possible, le nom de l'ordinateur ou l'adresse IP doivent être utilisés pendant le processus d'installation.
- Téléchargez Elasticsearch.
-
Double-cliquez sur le programme d'installation Windows Installer d'Elasticsearch. L'assistant d'Elasticsearch s'affiche à l'étape Emplacements.
-
Utilisez les répertoires par défaut pour l'installation, les données, la configuration et les journaux, ou sélectionnez les emplacements personnalisés pour chacun.
Remarque : Si vous possédez un disque autre que celui sur lequel est installé Elasticsearch, vous pouvez configurer Elasticsearch afin de stocker les données sur le disque avec davantage d'espace. -
Cliquez sur Suivant. L'étape Service s'affiche.
-
Assurez-vous que les options suivantes sont sélectionnées :
- Installer en tant que service (Install as a service)
- Démarrer le service à la fin de l'installation (Start the service after this installation is complete)
- Démarrer le service au lancement de Windows (Automatique) (Start the service when Windows starts (Automatic))
- Cliquez sur Suivant. L'étape Configuration s'affiche.
-
Configurez les options suivantes comme vous le souhaitez :
- Nom du cluster (Cluster name) : modifiez la valeur par un nom qui reflète l'objectif de cette installation d'Elasticsearch. Ce point est important si vous avez plusieurs serveurs avec Elasticsearch dans votre intranet, afin d'éviter la découverte automatique.
- Nom du nœud (Node name) : nom convivial pour votre nœud.
- Rôles (Roles) : les options par défaut sont recommandées.
- Mémoire (Memory) : les options par défaut sont recommandées.
- Hôte du réseau (Network host) : le nom de l'hôte/l'adresse IP de l'ordinateur (vous pouvez obtenir le nom de la machine dans une invite de commandes en exécutant la commande hostname).
- Port HTTP (HTTP port) : le port par défaut d'Elasticsearch est 9200.
-
Découverte - activez la case à cocher C'est le premier master d'un nouveau cluster pour le premier nœud dans le cluster.
Attention : Si Orchestrator est installé sur une machine différente, veillez à ouvrir le port 9200 dans le pare-feu de la machine sur laquelle Elasticsearch est installé.
- Cliquez sur Suivant. L'étape Plug-ins s'affiche.
-
(Option facultative (Optionally)) Sélectionnez les plug-ins supplémentaires pour Elasticsearch, tels que X-Pack pour la sécurité.
-
Cliquez sur Installer. Elasticsearch est installé.
Réduction du nombre de partitions d'index
Par défaut, les index Elasticsearch nouvellement créés ont cinq partitions. Cependant, pour une performance accrue, il est recommandé de réduire ce nombre à deux. Pour plus d'informations, veuillez consulter la documentation officielle d'Elasticsearch.
elasticUrl/_template/uipath_logs
, avec le corps suivant :
{
"template": "*",
"order": 1,
"settings": {
"number_of_shards": 2
}
}
{
"template": "*",
"order": 1,
"settings": {
"number_of_shards": 2
}
}
http://computername:9200/
. Computername
représente le nom de l'ordinateur sur lequel Elasticsearch est installé. Le navigateur doit soit vous demander de télécharger un fichier .json
, soit ouvrir et afficher le fichier, comme sur l'image ci-dessous.
Kibana est utilisé conjointement avec Elasticsearch et permet de créer des vues personnalisées en fonction des journaux que vous envoyez à Elasticsearch, dans notre cas, ceux envoyés par les Robots.
- Téléchargez Kibana.
- Décompressez le paquet Kibana.
Remarque : Décompressez dans C:\ ou dans D:\. Il n'est pas nécessaire de créer un dossier nommé
kibana-x.y.z-windows
, car les fichiers de l'archive sont déjà placés dans un dossier portant ce nom. - Modifiez le fichier de configuration Kibana (
C:\kibana-x.y.z-windows-x86\config\kibana.yml
), comme suit :Remarque : dans un premier temps, ouvrez le fichier avec Wordpad et enregistrez-le pour convertir les caractères LF (Line Feed) en caractères CRLF (Carriage Return Line Feed). Ensuite, ouvrez le fichier à l'aide de Bloc-notes.- Supprimez les marques de commentaire de la ligne qui contient
server.port
. La valeur par défaut est 5601. Il n'a pas besoin d'être modifié, sauf si vous souhaitez que Kibana s'exécute sur un port différent. - Supprimez les marques de commentaire de la ligne qui contient
server.host
. Modifiez la valeur du nom de l'ordinateur. - Supprimez les marques de commentaire de la ligne qui contient
elasticsearch.url
. Remplacez la valeur par l'URL Elasticsearch, en utilisant le nom de l'ordinateur sur lequel Elasticsearch est installé. Par exemple,http://computername:9200
.Remarque : Pour la version de Kibana 6.6.0 ou ultérieure, cette ligne a été remplacée parelasticsearch.hosts
.La capture d’écran ci-dessous affiche un exemple de fichier de configuration Kibana dans lequel les noms d’ordinateurs de Kibana et Elasticsearch sont JLTSQL :
- Enregistrez le fichier.
- Supprimez les marques de commentaire de la ligne qui contient
- Téléchargez l’archive setup-kibana-service.zip.
- Copiez les fichiers
nssm.exe
etsetup_kibana.bat
depuis l'archivesetup-kibana-service.zip
versC:\kibana-x.y.z-windows-x86\bin
. - Ouvrez le fichier
setup_kibana.bat
pour vérifier si Kibana est installé conformément à l'emplacement défini dans la variableKIBANA_HOME
du fichier BAT. Si vous avez extrait Kibana vers un emplacement différent, effectuez les modifications nécessaires. - Ouvrez Invite de commandes en tant qu'administrateur, puis modifiez le dossier par
C:\kibana-x.y.z-windows-x86\bin
. - Exécutez
setup_kibana.bat
pour installer Kibana. - Testez si Kibana répond en tapant
http://computername:5601
dans n'importe quel navigateur Web.computername
représente le nom de l'ordinateur sur lequel vous avez installé Kibana.Attention : Ouvrez le port 5601 dans le pare-feu de la machine sur laquelle Kibana est installé. - Ajoutez un message test dans la base de données Elasticsearch en utilisant Kibana :
- Dans Kibana, accédez à l’onglet Outils de développement.
- Soumettez une requête POST au format affiché ci-dessous. Si aucune erreur n'est générée, l'index Elasticsearch nommé
default-yyyy.mm
est créé, et le message est ajouté.
yyyy
correspond à l'année au cours de laquelle le message a été ajouté. mm
correspond au mois au cours duquel le message a été ajouté. Pour savoir comment créer un modèle d'index dans Kibana, consultez la page Création d'un modèle d'index pour se connecter à Elasticsearch.
Gardez à l'esprit que quel que soit le type d'installation choisi, pour un bon fonctionnement des fonctions de planification, vous devez vérifier les points suivants :
- En mode cluster, les horloges sur toutes les machines doivent être synchronisées en moins d'une seconde.
- Les horloges de la base de données et des machines d'Orchestrator doivent également être synchronisées.
- Si la base de données SQL entre dans un état défaillant, il est recommandé de redémarrer le serveur Web Orchestrator à partir d'IIS. Si vous êtes dans un environnement NLB, redémarrez tous les serveurs Web.