Orchestrator
2022.10
False
Image de fond de la bannière
Guide d'installation d'Orchestrator
Dernière mise à jour 19 avr. 2024

Prérequis matériels

Plusieurs options de déploiement du cloud d'entreprise sont disponibles pour héberger Orchestrator, telles qu'Amazon Web Services (AWS), Microsoft Azure ou Google Cloud Platform (GCP). En fonction de l'option de déploiement de votre choix et de la taille de l'environnement que vous prévoyez de créer, vous devez consulter les différentes configurations matérielles requises.

Ce chapitre donne un aperçu des configurations matérielles requises spécifiques à certains de ces scénarios.

Déploiements de petite à moyenne envergure

La configuration matérielle requise diffère entre votre environnement de développement et l'environnement de production. Bien que la même configuration matérielle requise que votre environnement de production puisse être utilisée à des fins de test et de développement, cela implique des coûts plus élevés et inutiles, en particulier dans les déploiements à grande échelle.

Environnements de développement

Cette configuration requise suppose un maximum de 100 robots Unattended s'exécutant simultanément. Deux machines peuvent être utilisées, l'une pour Orchestrator et (facultativement) Elasticsearch, et l'une pour SQL Server, configurées comme suit :

Serveur d'applications Web

Cœurs du processeur (>2 GHz)

RAM (Go)

Disque dur (Go)

4

4

150

SQL Server

Cœurs du processeur (>2 GHz)

RAM (Go)

Disque dur (Go)

4

8

300

Environnements de production

Pour les environnements de production, il est fortement recommandé de fournir un serveur dédié pour chaque rôle :

  • Application Web Orchestrator.
  • Moteur de base de données SQL Server.
  • Elasticsearch et Kibana.

Pour une installation à nœuds multiples, outre les conditions ci-dessus, les suivantes sont également requises :

  • for Orchestrator (3+ HAA nodes are required for true high availability and 6+ HAA nodes for geo-redundancy.
    Remarque :

    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 dépendant de ce protocole.

    Le module HAA est la seule solution de ce type prise en charge par UiPath.

La configuration matérielle de chaque serveur requis dépend de la taille de votre déploiement, comme détaillé ci-dessous. La configuration matérielle requise présentée ici a été effectuée selon les tests dans lesquels un robot a été défini comme suit :

  • des messages sont envoyés du Robot vers Orchestrator avec une fréquence de 1 message par seconde
  • en moins de 60 secondes, le Robot envoie :
    • 15 journaux de messages
    • 2 pulsations
    • 6 requêtes d'obtention d'actifs
    • 6 requêtes d'ajout d'éléments de file d'attente
    • 6 requêtes d'obtention d'éléments de file d'attente

Prise en charge de près de 250 Robots non assistés

Serveur d'applications Web

Nombre de Robots (Number of Robots)

Cœurs de processeur (min 2 GHz)

RAM (Go)

Disque dur (Go)

<20

4

4

100

<50

4

4

100

<100

4

4

150

<200

4

4

200

<250

4

4

200

Remarque :
Pour plus de 200 Robots, portez à 500 le nombre de connexions autorisées dans le pool de la chaîne de connexion SQL à partir du fichier UiPath.Orchestrator.dll.config. Pour ce faire, ajoutez le paramètre Max Pool Size=500 à la chaîne de connexion, de sorte qu’il ressemble à cet exemple :

<add name="Default" providerName="System.Data.SqlClient" connectionString="Server=SQL4142;Integrated Security=True;Database=UiPath;Max Pool Size=500;" />

SQL Server

Nombre de Robots (Number of Robots)

Cœurs de processeur (min 2 GHz)

RAM (Go)

Disque dur (Go)

<20

4

8

100

<50

4

8

200

<100

4

8

300

<200

8

8

SSD 400

<250

8

16

SSD 400

Les prérequis de l'espace disque dépendent fortement des points suivants :

  • Si les files d'attente de travail sont utilisées ou non : dans le premier cas, cela dépend du nombre moyen de transactions ajoutées tous les jours/toutes les semaines et de la taille (nombre de champs, taille de chaque champ) de chaque transaction.
  • De la période de rétention des éléments de la file d'attente correctement traités (le client doit implémenter sa propre politique de rétention).
  • Si les messages consignés par les Robots sont enregistrés ou non dans la base de données. Dans le premier cas, un filtre peut être appliqué pour enregistrer uniquement dans la BD des niveaux spécifiques de messages (par exemple, enregistrez dans la BD les messages avec le niveau de journalisation Erreur (Error) et Critique(Critical), et enregistrez dans Elasticsearch les messages avec le niveau de journalisation Info, Avertissement(Warn) et Traçage (Trace)).
  • Des fréquences des messages de journalisation : le développeur de type Robot utilise à volonté l'activité Message du journal des événements (Log Message), chaque fois qu'il estime qu'un message vaut la peine d'être consigné.
  • De la période de rétention des anciens messages consignés (le client doit implémenter sa propre politique de rétention).
  • De la valeur du niveau de journalisation configurée dans le robot. Par exemple, si le niveau de journalisation dans le Robot est configuré sur Info, seuls les messages avec les niveaux Info, Avertissement (Warn), Erreur (Error) et Critique(Critical) sont envoyés à Orchestrator. les messages avec les niveaux Débogage (Debug), Traçage (Trace) et Détaillé(Verbose) sont ignorés et ils ne seront pas transmis à Orchestrator.
Serveur Elasticsearch

Nombre de Robots (Number of Robots)

Cœurs de processeur (min 2 GHz)

RAM (Go)

Disque dur (Go)

<20

4

4

100

<50

4

4

100

<100

4

8

150

<200

4

12

200

<250

4

12

300

Les prérequis de l'espace disque dépendent des points suivants :

  • De la période de rétention (le client doit implémenter sa propre stratégie de rétention).
  • Des fréquences des messages de journalisation : le développeur de type Robot utilise à volonté l'activité Message du journal des événements (Log Message), chaque fois qu'il estime qu'un message vaut la peine d'être consigné.
  • De la valeur du niveau de journalisation configurée dans le robot. Par exemple, si le niveau de journalisation dans le Robot est configuré sur Info, seuls les messages avec les niveaux Info, Avertissement(Warn), “Erreur” (Error) et “Critique” (Critical) sont envoyés à Orchestrator. Les messages avec les niveaux “Débogage” (Debug) “Traçage” (Trace) et “Détaillé” (Verbose) sont ignorés et ils ne seront pas transmis à Orchestrator.
    Remarque : pour plus de 50 robots, vous devez indiquer à la machine virtuelle Java utilisée par Elasticsearch d'utiliser 50 % de la RAM disponible, en définissant les arguments -Xms et -Xmx sur la moitié de la quantité totale de mémoire. Cela se fait via la variable d'environnement ES_JAVA_OPTS ou en modifiant le fichier jvm.options .

Prise en charge de 250 à 500 robots non assistés

Serveur d'applications Web

Nombre de Robots (Number of Robots)

Cœurs de processeur (min 2 GHz)

RAM (Go)

Disque dur (Go)

<300

8

8

200

<400

8

8

220

<500

16

16

250

SQL Server

Nombre de Robots (Number of Robots)

Cœurs de processeur (min 2 GHz)

RAM (Go)

Disque dur (Go)

<300

16

32

SSD 400

<400

16

32

SSD 500

<500

16

32

SSD 600

Remarque : Pour SQL Server Édition Standard, 16 cœurs de processeur représentent le maximum utilisé par l'édition Standard. Pour une machine virtuelle, veillez à ce que ce nombre de cœurs soit obtenu par 4 sockets virtuels avec 4 cœurs chacun (et pas par 2 sockets avec 8 cœurs ou 8 sockets avec 2 cœurs). Pour l'édition Enterprise, la combinaison pour obtenir 16 nœuds n'importe pas.

Pour plus de 300 Robots, pensez à ne pas enregistrer tous les messages consignés dans la base de données SQL Server. Enregistrez dans la BD uniquement les messages avec le niveau de journalisation Erreur (Error) et Critique(Critical). Enregistrez tous les messages (à savoir Erreur(Error) et Critique(Critical) ) dans Elasticsearch.

Serveur Elasticsearch

Nombre de Robots (Number of Robots)

Cœurs de processeur (min 2 GHz)

RAM (Go)

Disque dur (Go)

<300

4

12

300

<400

4

16

500

<500

4

16

600

Déploiements importants

Déploiements Attended IaaS

La section suivante donne un exemple de déploiement important et évolutif utilisant les offres Azure Infrastructure as a Service (IaaS). Cette configuration a été utilisée :

Architecture

Remarque :

Les exemples d'architecture ci-dessous contiennent des composants facultatifs et/ou différents (par exemple : CyberArk, module complémentaire haute disponibilité UiPath).

La Jumpbox illustrée n'est pas obligatoire mais constitue une bonne pratique d'isolation et de sécurité des données à suivre dans vos environnements de production.

Architecture à nœud unique


Architecture multinœud


Prérequis matériels

Cette section décrit les configurations matérielles utilisées pour les tests de performances répertoriés dans la section Montée en charge de votre déploiement, ci-dessous.

Nœuds Orchestrator

Chaque nœud Orchestrator doit être configuré comme suit :

VCPUs

RAM (Go)

SSD (GB)

16

32

128

SQL Server

Les spécifications de la machine virtuelle SQL Server doivent évoluer en fonction du nombre de nœuds Orchestrator :

Nœuds Orchestrator

VCPUs

RAM (Go)

Disque (Disk)

1-2

8

16

1 To - disque ultra SSD pour base de données, tempDB et journal transactionnel

5

16

32

1 To - disque ultra SSD pour base de données

1 To - disque ultra SSD pour tempDB

1 To - disque ultra SSD pour journal transactionnel

10

32

64

1 To - disque ultra SSD pour base de données

1 To - disque ultra SSD pour tempDB

1 To - disque ultra SSD pour journal transactionnel

15

40

96

1 To - disque ultra SSD pour base de données

1 To - disque ultra SSD pour tempDB

1 To - disque ultra SSD pour journal transactionnel

Groupe à haute disponibilité Elasticsearch

Le groupe à haute disponibilité Elasticsearch comprend 3 nœuds principaux et 6 nœuds de données, pour un total de 9 nœuds, chacun contenant les spécifications suivantes :

VCPUs

RAM (Go)

OS SSD (GB)

Data SSD (TB)

8

16

128 (avec 5 000 E/S par seconde et un débit de 100 Mo/s)

1 (avec 5 000 E/S par seconde et un débit de 200 Mo/s)

Prérequis logiciels

Les versions répertoriées ci-dessus sont celles utilisées pour les déploiements et les charges testées en termes de performances décrites.

Équilibrage de charge

Pour les déploiements multinœud, il est recommandé d'utiliser deux équilibreurs de charge Azure Standard :

  • Un pour les serveurs Orchestrator ;
  • Un pour les serveurs Elasticsearch.
Module complémentaire haute disponibilité

Montée en charge de votre déploiement

Le nombre de nœuds nécessaires dans votre groupe identique Orchestrator dépend du nombre de robots déployés :

Nœuds de groupe identique d'Orchestrator

Nombre de Robots

1

jusqu'à 6 000

2

jusqu'à 14 000

5

jusqu'à 8 000

10

jusqu'à 24 000

15

jusqu'à 300 000

Ces déploiements ont été testés à l'aide des configurations matérielles et logicielles ci-dessus pour ne présenter aucune perte de performances sous la charge spécifiée ci-dessous.

Tests de performances

Les données affichées dans les 2 tableaux suivants sont représentatives d’un déploiement Attended.

Données statiques

Les données statiques font référence à la charge initiale d'Orchestrator.

Entité

Un seul nœud

Deux nœuds

Cinq nœuds

Dix nœuds

Quinze nœuds

Tenants

1

1

1

1

1

Dossiers

1

2

4

4

6

Robots

6 000

14 000

80 000

200 000

300 000

Paquets

8 000

16 000

48 000

48 000

48 000

Processus (Processes)

4 000

8 000

24 000

24 000

24 000

Files d'attente (Queues)

600

1 200

1 800

2 400

3 000

Éléments de file d'attente

1 120 000

1 500 000

3 000 000

5 000 000

7 000 000

Actifs

500

1 000

1 500

3 000

4 500

Données dynamiques

Les données dynamiques font référence aux données ajoutées ou modifiées dans Orchestrator lors de l'exécution des processus.

Entité

Un seul nœud

Deux nœuds

Cinq nœuds

Dix nœuds

Quinze nœuds

Élément de la file d'attente (Queue Items) (par jour)

300 000

600 000

4 000 000

9 000 000

10 500 000

Exécutions (Jobs) (par minute)

700

1 500

3 000

6 000

7 500

Journaux (Logs) (par minute)

20,000

50 000

300 000

600 000

800 000

Téléchargements Nuget (Nuget Downloads) (maximum par minute)

1 000

3 000

10,000

14 000

18 000

Robots connectés (Robots Connected) (Maximum)

6 000

14 000

80 000

200 000

300 000

Pulsation (Heartbeat) (par minute)

12 000

28 000

160 000

400 000

600 000

Robots occupés

3 000

7 000

40 000

100 000

150 000

Robots disponibles

3 000

7 000

40 000

100 000

150 000

Déploiements Attended PaaS

Les sections suivantes offrent un aperçu des capacités d’un déploiement PaaS en termes de performances.

Architecture

Les prérequis suivants sont nécessaires :

  • Orchestrator :

    • Orchestrator App Service Plan : 20 instances P3V2
    • Azure SQL Server : Premium P15 : 4000 DTU
    • Azure Redis cache P2 Premium 13 Go
  • Identity Server :

    • Identity Server App Service Plan : 2 instances P3V2
    • Serveur SQL Azure : Standard S7 : 800 DTU
  • Elasticsearch :

Tests de performances

Les données affichées dans les tableaux suivants sont représentatives d’un déploiement Attended.

Données statiques

Les données statiques font référence à la charge initiale d'Orchestrator.

Entité

Un seul nœud

Tenants

1

Dossiers

8 000

Robots

80 000

Paquets

8 000

Processus (Processes)

8 000

Files d'attente (Queues)

8 000

Éléments de file d'attente

2 000 000

Actifs

8 000

Données dynamiques

Les données dynamiques font référence aux données ajoutées ou modifiées dans Orchestrator lors de l'exécution des processus.

Entité

Un seul nœud

Élément de la file d'attente (Queue Items) (par jour)

5 000 000

Exécutions (Jobs) (par minute)

2 600

Journaux (Logs) (par minute)

240 000

Téléchargements Nuget (Nuget Downloads) (maximum par minute)

2 000

Robots connectés (Robots Connected) (Maximum)

80 000

Pulsation (Heartbeat) (par minute)

160 000

Robots occupés

40 000

Robots disponibles

40 000

Ports TCP

Port

Description

443

Port par défaut pour la communication entre les utilisateurs et Orchestrator avec les Robots connectés.

1433

Port par défaut pour la communication entre Orchestrator et la machine exécutant SQL Server.

9200

Communication entre Orchestrator et Elasticsearch.

9300

Communication entre les nœuds Elasticsearch, le cas échéant.

5601

Port par défaut utilisé par le plugin Kibana, le cas échéant.

3389

Requis pour l'automatisation RDP, nécessaire pour les robots haute densité.

Vous pouvez également vérifier les prérequis matériels de Studio et de Robot.

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.