UiPath Documentation
automation-suite
2.2510
true
Guide d'installation d'Automation Suite sur OpenShift
Important :
Veuillez noter que ce contenu a été localisé en partie à l’aide de la traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

Base de données SQL

Configuration de la base de données SQL et conditions préalables pour Automation Suite sur OpenShift.

Important :

Seul le pilote Microsoft ODBC 17 est pris en charge.

Sauf indication contraire dans les sections dédiées aux exigences, ces exigences s'appliquent à tous les produits Automation Suite.

Vous devez ajouter un serveur SQL externe pour installer les produits Automation Suite et UiPath®. Microsoft SQL Server 2019 et 2022, les éditions Standard et Enterprise sont prises en charge.

Les plateformes Microsoft SQL supplémentaires, telles que la base de données Azure SQL, Azure SQL Managed Instance ou Amazon Relational Database Service, sont également prises en charge tant que le moteur de base de données Microsoft SQL Server répond aux exigences. Pour plus de détails, consultez la section Matrice de compatibilité.

Les produits suivants nécessitent une base de données PostgreSQL dédiée en plus de Microsoft SQL Server:

Remarque :

Assurez-vous que le serveur SQL est accessible à partir des nœuds du cluster.

Le support produit individuel est différent.

Pour chaque produit que vous envisagez de déployer, vous devez :

  • vérifier la version prise en charge de SQL Server requise par le produit ;
  • répondre aux exigences de configuration de SQL Server, y compris les autorisations d'utilisateur de SQL Server, selon l'exigence du produit.

Prérequis matériels​

La configuration matérielle minimale générale requise pour Microsoft SQL Server est la suivante :

  • 8 (v-)CPU
  • 32 Go de RAM
  • SSD de 256 Go

Les exigences minimales sont des indications générales et ne garantissent pas un fonctionnement fiable dans un déploiement de production. La planification de la capacité est requise afin de déterminer la configuration matérielle requise pour assurer un fonctionnement fiable. Pour des détails, reportez-vous à Planification de la capacité.

Chaque produit UiPath® nécessite sa propre base de données SQL.

Workflow de création de base de données​

Le programme d'installation interactif crée automatiquement des bases de données à l'aide du workflow suivant :

  1. Le script d'installation interactif vérifie la valeur du paramètre sql.create_db dans le fichier input.json .

    • Si le paramètre sql.create_db est défini sur true, le programme d'installation génère automatiquement toutes les bases de données en votre nom. Dans ce cas, le programme d'installation utilise les noms de base de données par défaut et les modèles par défaut, et ignore tous les noms de base de données personnalisés que vous avez fournis.

    Pour plus d’informations, consultez la section Créer automatiquement les bases de données nécessaires.

    • Si sql.create_db est défini sur false, vous devez apporter vos propres bases de données. Dans ce cas, vous devez configurer manuellement vos bases de données. Notez que vous pouvez utiliser des noms de base de données personnalisés, à condition de suivre les conventions d'affectation de nom fournies. Cette étape est essentielle car nous utilisons le nom de la base de données conjointement avec le modèle de connexion pour former la chaîne de connexion de la base de données. Si vous ne suivez pas la convention d’affectation de noms recommandée, vous devez fournir vous-même les chaînes de connexion SQL.

    Pour de plus amples informations, reportez-vous à la section Apporter vos propres bases de données.

  2. Le programme d'installation interactif génère les chaînes de connexion comme suit :

    • Si vous n’avez pas défini de chaîne de connexion pour votre service, le programme d’installation utilise le modèle de connexion pour générer toutes les chaînes de connexion de la base de données.
    • Si vous avez défini une chaîne de connexion pour votre service, le programme d’installation utilise la chaîne de connexion fournie pour votre base de données.

Créer automatiquement les bases de données nécessaires​

Important :

Pour Process Mining sur Automation Suite, vous devez créer manuellement la base de données PostgreSQL pour AutomationSuite_Airflow avant d'installer ou de mettre à niveau vers Automation Suite 2.2510. La base de données PostgreSQL pour Airflow ne sera pas créée automatiquement par le programme d’installation.

Pour de plus amples informations, consultez la section Exigences SQL de Process Mining.

Si vous souhaitez que le programme d'installation crée les bases de données, veuillez remplir les champs suivants du fichier input.json :

ParamètreDescription
sql.create_dbDéfinissez sur true pour permettre au programme d'installation de créer les bases de données. Notez que le programme d'installation utilise les noms de base de données par défaut et les modèles par défaut, et ignore tous les noms de base de données personnalisés que vous avez fournis.
sql.server_urlNom de domaine complet du serveur SQL, où vous souhaitez que le programme d'installation configure la base de données.
sql.portNuméro de port sur lequel une instance de base de données doit être hébergée dans le serveur SQL.
sql.usernameNom d'utilisateur / ID d'utilisateur pour se connecter au serveur SQL.
sql.passwordMot de passe du nom d'utilisateur fourni précédemment pour se connecter au serveur SQL.
Remarque :
  • Assurez-vous que l'utilisateur dispose du rôle dbcreator. Cela leur accorde l'autorisation de créer la base de données dans SQL Server. Sinon, l'installation échoue.
  • La création automatique des bases de données nécessaires ne fonctionne pas en combinaison avec l'authentification de l'annuaire. Si vous utilisez l'authentification d'annuaire, vous devez apporter vos propres bases de données.
  • La connexion ODBC ne prend pas en charge les noms d'utilisateur contenant des caractères spéciaux. Pour les noms d'utilisateur de base de données pour AI Center, Document Understanding et Apps, utilisez uniquement des lettres majuscules et minuscules.

Fournissez vos propres bases de données​

Si vous choisissez d’apporter vos propres bases de données dans le cadre d’une nouvelle installation Automation Suite, nous vous recommandons fortement de créer de nouvelles bases de données plutôt que d’utiliser les bases existantes. Cette précaution est nécessaire afin d’éviter tout conflit avec le fonctionnement d’Automation Suite qui pourrait être provoqué par la présence de métadonnées relatives à d’anciennes bases de données.

Si vous apportez votre propre base de données, vous devez fournir les chaînes de connexion SQL pour chaque base de données. Automation Suite prend en charge les formats de chaîne de connexion SQL suivants :

Remarque :

Pour Document Understanding, assurez-vous que vous utilisez la même base de données, sauf indication contraire explicite. Des chaînes de connexion spécifiques sont affectées à divers services et tâches qui se connectent à la même base de données.

Modèles de chaîne de connexion​

ParamètreDescriptionProduits
sql_connection_string_templateChaîne de connexion ADO.NET complète où le nom du catalogue est défini sur DB_NAME_PLACEHOLDER. Le programme d'installation remplacera cet espace réservé par les noms de base de données par défaut pour les services de la suite installée.Plate-forme
Orchestrator
Robots Automation Suite
Test Manager
Automation Hub
Automation Ops
Insights
Integration Service
Data Service
Studio Web
Process Mining
Document Understanding
Passerelle LLM
ECS
Observabilité LLM
Solutions
Maestro
Agents
AgentHub
sql_connection_string_template_jdbcChaîne de connexion JDBC complète où le nom de la base de données est défini sur DB_NAME_PLACEHOLDER. Le programme d'installation remplacera cet espace réservé par les noms de base de données par défaut pour les services de la suite installée.AI Center
Integration Service
sql_connection_string_template_odbcChaîne de connexion ODBC complète où le nom de la base de données est défini sur DB_NAME_PLACEHOLDER. Le programme d'installation remplacera cet espace réservé par les noms de base de données par défaut pour les services de la suite installée.Document Understanding
Apps
Integration Service
sql_connection_string_template_sqlalchemy_pyodbcChaîne de connexion PYODBC SQL complète où le nom de la base de données est défini sur DB_NAME_PLACEHOLDER. Le programme d'installation remplacera cet espace réservé par les noms de base de données par défaut pour les services de la suite installée.Document Understanding
postgresql_connection_string_template_sqlalchemy_pyodbcChaîne de connexion SQL alchemy PsyCoPG2 où le nom de la base de données est défini sur DB_NAME_PLACEHOLDER. Le programme d'installation remplacera cet espace réservé par les noms de base de données par défaut pour les services de la suite installée.Process Mining
Temporel en tant que service (TaaS)
postgresql_connection_string_template_sqlalchemy_asyncpgChaîne de connexion PostgreSQL complète où le nom de la base de données est défini sur DB_NAME_PLACEHOLDER. Le programme d'installation remplacera cet espace réservé par les noms de base de données par défaut pour les services de la suite installée.À propos d’Autopilot for Developers

Si votre mot de passe contient des caractères d'URL réservés, remplacez chaque caractère spécial par son équivalent en pourcentage dans la chaîne de connexion. Par exemple, si votre mot de passe est P@ssw0rd#1!, vous devez l'encoder sous la forme P%40ssw0rd%231%21.

Le mot de passe pour les bases de données Apps et Integration Service ne doit pas contenir #{.

Par défaut, TrustServerCertificate est défini sur False et vous devez fournir un certificat CA supplémentaire pour SQL Server. Ceci est requis si le certificat SQL Server est auto-signé ou signé par une autorité de certification interne. Si vous ne fournissez pas le certificat SQL Server dans ce scénario, la vérification des prérequis échouera.

modèle_chaîne_connexion_sql​

L’exemple suivant vous montre une chaîne de connexion sql_connection_string_template :

Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net:1433;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;Password=<your-password>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;
Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net:1433;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;Password=<your-password>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;
exemple sql_connection_string_template_jdbc​

L’exemple suivant vous montre une chaîne de connexion sql_connection_string_template_jdbc :

jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net:1433;database=DB_NAME_PLACEHOLDER;user=testadmin;password=<your-password>;encrypt=true;trustServerCertificate=false;Connection Timeout=30;hostNameInCertificate=sfdev1804627-c83f074b-sql.database.windows.net"
jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net:1433;database=DB_NAME_PLACEHOLDER;user=testadmin;password=<your-password>;encrypt=true;trustServerCertificate=false;Connection Timeout=30;hostNameInCertificate=sfdev1804627-c83f074b-sql.database.windows.net"
exemple sql_connection_string_template_odbc​

L’exemple suivant vous montre une chaîne de connexion sql_connection_string_template_odbc :

SERVER=sfdev1804627-c83f074b-sql.database.windows.net,1433;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=testadmin;PWD=<your-password>;MultipleActiveResultSets=False;Encrypt=YES;TrustServerCertificate=NO;Connection Timeout=30;"
SERVER=sfdev1804627-c83f074b-sql.database.windows.net,1433;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=testadmin;PWD=<your-password>;MultipleActiveResultSets=False;Encrypt=YES;TrustServerCertificate=NO;Connection Timeout=30;"
sql_connection_string_template_sqlalchemy_pyodbc​

L’exemple suivant vous montre une chaîne de connexion sql_connection_string_template_sqlalchemy_pyodbc :

mssql+pyodbc://testuser%40sfdev3082457-sql.database.windows.net:<your-password>@sfdev3082457-sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"
mssql+pyodbc://testuser%40sfdev3082457-sql.database.windows.net:<your-password>@sfdev3082457-sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"
postgresql_connection_string_template_sqlalchemy_pyodbc​

L’exemple suivant affiche une chaîne de connexion postgresql_connection_string_template_sqlalchemy_pyodbc pour Process Mining:

postgresql+psycopg2://<user>:<password>@<host>:<port>/DB_NAME_PLACEHOLDER
postgresql+psycopg2://<user>:<password>@<host>:<port>/DB_NAME_PLACEHOLDER
Remarque :

Si votre mot de passe contient des caractères spéciaux, vous devez les coder en URL dans la chaîne de connexion. Pour plus de détails, consultez la section Comment coder en URL un mot de passe de chaîne de connexion PostgreSQL.

L’exemple suivant montre une chaîne de connexion combinée sql_connection_string_template et postgresql_connection_string_template_sqlalchemy_pyodbc pour Process Mining:

"sql_connection_string_template": "Server=tcp:sfdev4515230-sql.database.windows.net,1433;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=testadmin@sfdev4515230-sql.database.windows.net;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"

"postgresql_connection_string_template_sqlalchemy_pyodbc ": "postgresql+psycopg2://<user>:<your-password>@sfdev4515230-postgresql.database.windows.net:5432/DB_NAME_PLACEHOLDER"
"sql_connection_string_template": "Server=tcp:sfdev4515230-sql.database.windows.net,1433;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=testadmin@sfdev4515230-sql.database.windows.net;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"

"postgresql_connection_string_template_sqlalchemy_pyodbc ": "postgresql+psycopg2://<user>:<your-password>@sfdev4515230-postgresql.database.windows.net:5432/DB_NAME_PLACEHOLDER"

L’exemple suivant montre une chaîne de connexion combinée sql_connection_string_template et sql_connection_string_template_sqlalchemy_pyodbc pour Process Mining:

"sql_connection_string_template": "Server=tcp:sfdev4515230-sql.database.windows.net,1433;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=testadmin@sfdev4515230-sql.database.windows.net;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"

"sql_connection_string_template_sqlalchemy_pyodbc": "mssql+pyodbc://testadmin%40sfdev4515230-sql.database.windows.net:<your-password>@sfdev4515230-sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"
"sql_connection_string_template": "Server=tcp:sfdev4515230-sql.database.windows.net,1433;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=testadmin@sfdev4515230-sql.database.windows.net;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"

"sql_connection_string_template_sqlalchemy_pyodbc": "mssql+pyodbc://testadmin%40sfdev4515230-sql.database.windows.net:<your-password>@sfdev4515230-sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"

L'exemple suivant affiche les noms de bases de données par défaut et facultatifs pour les services Automation Suite:

{
  "orchestrator": "AutomationSuite_Orchestrator",
  "orchestrator_ta": "AutomationSuite_Orchestrator",
  "asrobots": "AutomationSuite_Orchestrator",
  "orchestrator_upd": "AutomationSuite_Platform",
  "platform": "AutomationSuite_Platform",
  "test_manager": "AutomationSuite_Test_Manager",
  "automation_ops": "AutomationSuite_Platform",
  "automation_hub": "AutomationSuite_Automation_Hub",
  "insights": "AutomationSuite_Insights",
  "integrationservices": "AutomationSuite_Integration_Services",
  "studioweb": "AutomationSuite_StudioWeb",
  "dataservice": "AutomationSuite_DataService",
  "aicenter": "AutomationSuite_AICenter",
  "documentunderstanding": "AutomationSuite_DU_Datamanager",
  "processmining_airflow": "AutomationSuite_Airflow",
  "processmining_metadata": "AutomationSuite_ProcessMining_Metadata",
  "processmining_warehouse": "AutomationSuite_ProcessMining_Warehouse",
  "apps": "AutomationSuite_Apps",
  "llmgateway": "AutomationSuite_LLMGateway",
  "ecs": "AutomationSuite_ECS",
  "ecs_vector": "AutomationSuite_ECSVector",
  "llmobservability": "AutomationSuite_Llmops",
  "automationsolutions": "AutomationSuite_AutomationSolutions",
  "maestro": "AutomationSuite_Maestro",
  "taas": {
    "persistence store": "AutomationSuite_Taas",
    "visibility store": "AutomationSuite_Taas_Visibility"
  },
  "a4d": "AutomationSuite_A4D",
  "agents": "AutomationSuite_Agents",
  "agenthub": "AutomationSuite_AgentHub"
}
{
  "orchestrator": "AutomationSuite_Orchestrator",
  "orchestrator_ta": "AutomationSuite_Orchestrator",
  "asrobots": "AutomationSuite_Orchestrator",
  "orchestrator_upd": "AutomationSuite_Platform",
  "platform": "AutomationSuite_Platform",
  "test_manager": "AutomationSuite_Test_Manager",
  "automation_ops": "AutomationSuite_Platform",
  "automation_hub": "AutomationSuite_Automation_Hub",
  "insights": "AutomationSuite_Insights",
  "integrationservices": "AutomationSuite_Integration_Services",
  "studioweb": "AutomationSuite_StudioWeb",
  "dataservice": "AutomationSuite_DataService",
  "aicenter": "AutomationSuite_AICenter",
  "documentunderstanding": "AutomationSuite_DU_Datamanager",
  "processmining_airflow": "AutomationSuite_Airflow",
  "processmining_metadata": "AutomationSuite_ProcessMining_Metadata",
  "processmining_warehouse": "AutomationSuite_ProcessMining_Warehouse",
  "apps": "AutomationSuite_Apps",
  "llmgateway": "AutomationSuite_LLMGateway",
  "ecs": "AutomationSuite_ECS",
  "ecs_vector": "AutomationSuite_ECSVector",
  "llmobservability": "AutomationSuite_Llmops",
  "automationsolutions": "AutomationSuite_AutomationSolutions",
  "maestro": "AutomationSuite_Maestro",
  "taas": {
    "persistence store": "AutomationSuite_Taas",
    "visibility store": "AutomationSuite_Taas_Visibility"
  },
  "a4d": "AutomationSuite_A4D",
  "agents": "AutomationSuite_Agents",
  "agenthub": "AutomationSuite_AgentHub"
}
Remarque :

Si vous souhaitez remplacer la chaîne de connexion pour l'un des services mentionnés, définissez le sql_connection_str pour ce service spécifique.

Vous devez toujours créer manuellement ces bases de données avant d'exécuter le programme d'installation.

Orchestrator et plate-forme​

L'exemple suivant montre comment remplacer la chaîne de connexion par défaut pour Orchestrator et la plate-forme:

{
  "orchestrator": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=CustomOrchDB;Persist Security Info=False;User Id=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;Password=<your-password>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"
  },
  "platform": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=CustomIDDB;Persist Security Info=False;User Id=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;Password=<your-password>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"
  }
}
{
  "orchestrator": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=CustomOrchDB;Persist Security Info=False;User Id=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;Password=<your-password>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"
  },
  "platform": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=CustomIDDB;Persist Security Info=False;User Id=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;Password=<your-password>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;"
  }
}

Pour remplacer les chaînes de connexion à la base de données pour d'autres produits, définissez le sql_connection_str dans les blocs de produits correspondants. La chaîne de connexion doit avoir un format pris en charge par le produit respectif.

AI Center​

L'exemple suivant montre un exemple de chaîne de connexion AI Center utilisant le format JDBC requis:

"aicenter": {
    "enabled": true,
    "sql_connection_str": "jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net;database=aicenter;user=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;password=<your-password>"
}
"aicenter": {
    "enabled": true,
    "sql_connection_str": "jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net;database=aicenter;user=testadmin@sfdev1804627-c83f074b-sql.database.windows.net;password=<your-password>"
}

Document Understanding​

L’exemple suivant vous présente une chaîne de connexion Document Understanding:

"documentunderstanding": {
        "enabled": true,
        "sql_connection_str": "Server=SERVER_PLACEHOLDER;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=USER_PLACEHOLDER;Password='PASSWORD_PLACEHOLDER';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;",
        "datamanager": {
            "sql_connection_str": "SERVER=SERVER_PLACEHOLDER;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=USER_PLACEHOLDER;PWD={PASSWORD_PLACEHOLDER};;Encrypt=yes;TrustServerCertificate=no;Connection Timeout=30;hostNameInCertificate=customer-sql.database.windows.net",
            "pyodbc_sql_connection_str": "mssql+pyodbc://testadmin%40sql.database.windows.net:<your-password>@sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"
        }
    }
"documentunderstanding": {
        "enabled": true,
        "sql_connection_str": "Server=SERVER_PLACEHOLDER;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=USER_PLACEHOLDER;Password='PASSWORD_PLACEHOLDER';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;",
        "datamanager": {
            "sql_connection_str": "SERVER=SERVER_PLACEHOLDER;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=USER_PLACEHOLDER;PWD={PASSWORD_PLACEHOLDER};;Encrypt=yes;TrustServerCertificate=no;Connection Timeout=30;hostNameInCertificate=customer-sql.database.windows.net",
            "pyodbc_sql_connection_str": "mssql+pyodbc://testadmin%40sql.database.windows.net:<your-password>@sql.database.windows.net:1433/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server"
        }
    }

La chaîne de connexion SQL du Data Manager est facultative; ne la spécifiez que si vous souhaitez remplacer la valeur par défaut.

Process Mining​

Les chaînes de connexion Process Mining présentent les différences suivantes par rapport aux chaînes de connexion modèles:

  • Les noms de chaîne de connexion des modèles (postgresql_connection_string_template_sqlalchemy_pyodbc, sql_connection_string_template) diffèrent des noms de base de données personnalisée (sqlalchemy_pyodbc_sql_connection_str, sql_connection_str).
  • Si vous apportez votre propre base de données et la configurez à l'aide de sql_connection_str et sqlalchemy_pyodbc_sql_connection_str dans la section processmining de input.json, les chaînes de connexion modèles sql_connection_string_template et postgresql_connection_string_template_sqlalchemy_pyodbc sont ignorées.

Le paramètre app_security_mode contrôle la façon dont les utilisateurs SQL sont créés pour les applications Process Mining. En mode app_security_mode="system_managed" par défaut, un nouvel utilisateur SQL est créé pour chaque application Process Mining, ce qui nécessite des autorisations avancées pour l'utilisateur de la base de données. En mode app_security_mode="single_account" , un seul compte utilisateur SQL est utilisé pour toutes les applications de processus. Pour des détails, reportez-vous à Configuration de la sécurité de l'application de processus.

Si vous utilisez une configuration Multi-AZ avec toujours activé SQL, définissez le paramètre MultiSubnetFailover dans vos chaînes de connexion Process Mining. La valeur diffère selon le type de chaîne de connexion: utilisez MultiSubnetFailover=True pour sql_connection_str et master_sql_connection_str, et MultiSubnetFailover=Yes pour sqlalchemy_pyodbc_sql_connection_str. Notez que pour pyodbc vous utilisez « =Oui » au lieu de « =True ».

Pour l’authentification Kerberos, utilisez les paramètres Integrated Security et Trusted_Connection au lieu d’un nom d’utilisateur et d’un mot de passe. Définissez Integrated Security sur true et Trusted_Connection sur yes pour vous authentifier à l'aide des informations d'identification de l'utilisateur actuellement connecté.

Exemples de chaîne de connexion​

L’exemple suivant vous présente un exemple de chaîne de connexion Process Mining:

  "processmining": {
    "enabled": true,
    "app_security_mode": "system_managed",
    "airflow": {
      "metadata_db_connection_str": "postgresql+psycopg2://testadmin:<your-password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
    },
    "warehouse": {
      "sql_connection_str": "Server=tcp:kerberossql.autosuitead.local,1433;Initial Catalog=AutomationSuite_Warehouse;Persist Security Info=False;User Id=testadmin;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
      "sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://testadmin:<your-password>@kerberossql.autosuitead.local:1433/AutomationSuite_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES",
      "master_sql_connection_str": "Server=tcp:kerberossql.autosuitead.local,1433;Initial Catalog=master;Persist Security Info=False;User Id=testadmin;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
    }
    "sql_connection_str": "Server=tcp:sfdev4515230-sql.database.windows.net,1433;Initial Catalog=AutomationSuite_ProcessMining_Metadata;User Id=testadmin@sfdev4515230-sql.database.windows.net;Password='<your-password>';Persist Security Info=False;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
  }
  "processmining": {
    "enabled": true,
    "app_security_mode": "system_managed",
    "airflow": {
      "metadata_db_connection_str": "postgresql+psycopg2://testadmin:<your-password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
    },
    "warehouse": {
      "sql_connection_str": "Server=tcp:kerberossql.autosuitead.local,1433;Initial Catalog=AutomationSuite_Warehouse;Persist Security Info=False;User Id=testadmin;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
      "sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://testadmin:<your-password>@kerberossql.autosuitead.local:1433/AutomationSuite_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES",
      "master_sql_connection_str": "Server=tcp:kerberossql.autosuitead.local,1433;Initial Catalog=master;Persist Security Info=False;User Id=testadmin;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
    }
    "sql_connection_str": "Server=tcp:sfdev4515230-sql.database.windows.net,1433;Initial Catalog=AutomationSuite_ProcessMining_Metadata;User Id=testadmin@sfdev4515230-sql.database.windows.net;Password='<your-password>';Persist Security Info=False;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
  }

L’exemple suivant montre une chaîne de connexion Process Mining pour une configuration avec l’authentification Kerberos:

"processmining": {
    "enabled": true,
    "airflow": {
      "metadata_db_connection_str": "postgresql+psycopg2://kerberos_user:@kerberospostgres.AUTOSUITEAD.LOCAL:5432/automationsuite_airflow"
    }
    "warehouse": {
        "sql_connection_str": "Server=tcp:assql2019.autosuitead.local,1433;Initial Catalog=AutomationSuite_ProcessMining_Warehouse;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
        "sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://:@assql2019.autosuitead.local:1433/AutomationSuite_ProcessMining_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES&Trusted_Connection=yes",
        "master_sql_connection_str": "Server=tcp:assql2019.autosuitead.local,1433;Initial Catalog=master;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
      },
  },
"processmining": {
    "enabled": true,
    "airflow": {
      "metadata_db_connection_str": "postgresql+psycopg2://kerberos_user:@kerberospostgres.AUTOSUITEAD.LOCAL:5432/automationsuite_airflow"
    }
    "warehouse": {
        "sql_connection_str": "Server=tcp:assql2019.autosuitead.local,1433;Initial Catalog=AutomationSuite_ProcessMining_Warehouse;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
        "sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://:@assql2019.autosuitead.local:1433/AutomationSuite_ProcessMining_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES&Trusted_Connection=yes",
        "master_sql_connection_str": "Server=tcp:assql2019.autosuitead.local,1433;Initial Catalog=master;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
      },
  },

L'exemple suivant montre une chaîne de connexion Process Mining pour une configuration où la base de données de métadonnées et l'entrepôt de données utilisent un serveur SQL distinct (authentification non Kerberos):

"processmining": {
    "enabled": true,
    "warehouse": {
      "sql_connection_str": "Server=tcp:uipath-integration1.database.windows.net,1433;Initial Catalog=AutomationSuite_ProcessMining_Warehouse;Persist Security Info=False;User Id=userid;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
      "sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://userid:<your-password>@uipath-integration1.database.windows.net:1433/AutomationSuite_ProcessMining_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES",
      "master_sql_connection_str": "Server=tcp:uipath-integration1.database.windows.net,1433;Initial Catalog=master;Persist Security Info=False;User Id=userid;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
    },
  "airflow": {
      "metadata_db_connection_str": "postgresql+psycopg2://testadmin:<your-password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
    },
    "sql_connection_str": "Server=tcp:uipath-integration2.database.windows.net,1433;Initial Catalog=AutomationSuite_ProcessMining_Metadata;Persist Security Info=False;User Id=userid;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
},
"processmining": {
    "enabled": true,
    "warehouse": {
      "sql_connection_str": "Server=tcp:uipath-integration1.database.windows.net,1433;Initial Catalog=AutomationSuite_ProcessMining_Warehouse;Persist Security Info=False;User Id=userid;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
      "sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://userid:<your-password>@uipath-integration1.database.windows.net:1433/AutomationSuite_ProcessMining_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES",
      "master_sql_connection_str": "Server=tcp:uipath-integration1.database.windows.net,1433;Initial Catalog=master;Persist Security Info=False;User Id=userid;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
    },
  "airflow": {
      "metadata_db_connection_str": "postgresql+psycopg2://testadmin:<your-password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
    },
    "sql_connection_str": "Server=tcp:uipath-integration2.database.windows.net,1433;Initial Catalog=AutomationSuite_ProcessMining_Metadata;Persist Security Info=False;User Id=userid;Password='<your-password>';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
},

L’exemple suivant vous montre une chaîne de connexion Process Mining pour une configuration utilisant app_security_mode personnalisés:

"processmining": {
    "enabled": true,
    "app_security_mode": "system_managed",
    "warehouse": {
        "sql_connection_str": "Server=tcp:assql2019.autosuitead.local,1433;Initial Catalog=AutomationSuite_ProcessMining_Warehouse;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
        "sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://:@assql2019.autosuitead.local:1433/AutomationSuite_ProcessMining_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES&Trusted_Connection=yes",
        "master_sql_connection_str": "Server=tcp:assql2019.autosuitead.local,1433;Initial Catalog=master;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
      },
   "airflow": {
      "metadata_db_connection_str": "postgresql+psycopg2://testadmin:<your-password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
    },
"processmining": {
    "enabled": true,
    "app_security_mode": "system_managed",
    "warehouse": {
        "sql_connection_str": "Server=tcp:assql2019.autosuitead.local,1433;Initial Catalog=AutomationSuite_ProcessMining_Warehouse;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;",
        "sqlalchemy_pyodbc_sql_connection_str": "mssql+pyodbc://:@assql2019.autosuitead.local:1433/AutomationSuite_ProcessMining_Warehouse?driver=ODBC+Driver+17+for+SQL+Server&TrustServerCertificate=YES&Encrypt=YES&Trusted_Connection=yes",
        "master_sql_connection_str": "Server=tcp:assql2019.autosuitead.local,1433;Initial Catalog=master;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
      },
   "airflow": {
      "metadata_db_connection_str": "postgresql+psycopg2://testadmin:<your-password>@sfdev8454496-postgresql.postgres.database.azure.com:5432/AutomationSuite_Airflow"
    },

Studio Web​

L’exemple suivant vous présente une chaîne de connexion Studio Web:

"studioweb": {
      "enabled": true,
      "sql_connection_str": "Server=tcp:ci-asaksdev7031068.database.windows.net,1433;Initial Catalog=AutomationSuite_StudioWeb;Persist Security Info=False;User Id=mssqladminun;Password='****';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
      },
"studioweb": {
      "enabled": true,
      "sql_connection_str": "Server=tcp:ci-asaksdev7031068.database.windows.net,1433;Initial Catalog=AutomationSuite_StudioWeb;Persist Security Info=False;User Id=mssqladminun;Password='****';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;"
      },

Autorisations​

Assurez-vous que le compte SQL spécifié dans les chaînes de connexion dispose du rôle db_owner pour toutes les bases de données Automation Suite. Si les restrictions de sécurité n'autorisent pas l'utilisation de db_owner, le compte SQL doit avoir les rôles et autorisations suivants sur toutes les bases de données:

  • db_securityadmin
  • db_ddladmin
  • db_datawriter
  • db_datareader
  • Autorisation EXECUTE sur le schéma dbo, dt, authz et msgbus

Insights nécessite l'attribution du rôle db_owner pour une installation réussie.

Classement SQL​

Automation Suite prend en charge le classement SQL défini sur SQL_Latin1_General_CP1_CI_AS au niveau du serveur et de la base de données. Pour des performances et une stabilité optimales, nous recommandons fortement d’utiliser cette configuration.

Bien que vous ayez la possibilité d’utiliser le classement de votre choix, sachez que des configurations non testées sont susceptibles d’entraîner des problèmes inattendus.

Important :

Nous vous déconseillons d'utiliser SQL binaire ou tout classement sensible à la casse, car ils provoquent des problèmes connus lors de l'installation d'Automation Suite.

Chiffrements de SQL server​

Seuls les chiffrements SQL répertoriés sont pris en charge dans Automation Suite :

  • TLS_AES_256_GCM_SHA384
  • TLS_CHACHA20_POLY1305_SHA256
  • TLS_AES_128_GCM_SHA256
  • TLS_AES_128_CCM_SHA256
  • ECDHE-ECDSA-AES256-GCM-SHA384
  • ECDHE-RSA-AES256-GCM-SHA384
  • ECDHE-ECDSA-CHACHA20-POLY1305
  • ECDHE-RSA-CHACHA20-POLY1305
  • ECDHE-ECDSA-AES256-CCM
  • ECDHE-ECDSA-AES128-GCM-SHA256
  • ECDHE-RSA-AES128-GCM-SHA256
  • ECDHE-ECDSA-AES128-CCM
  • ECDHE-ECDSA-AES128-SHA256
  • ECDHE-RSA-AES128-SHA256
  • ECDHE-ECDSA-AES256-SHA
  • ECDHE-RSA-AES256-SHA
  • ECDHE-ECDSA-AES128-SHA
  • ECDHE-RSA-AES128-SHA
  • AES256-GCM-SHA384
  • AES256-CCM
  • AES128-GCM-SHA256
  • AES128-CCM
  • AES256-SHA256
  • AES128-SHA256
  • AES256-SHA
  • AES128-SHA
  • DHE-RSA-AES256-GCM-SHA384
  • DHE-RSA-CHACHA20-POLY1305
  • DHE-RSA-AES256-CCM
  • DHE-RSA-AES128-GCM-SHA256
  • DHE-RSA-AES128-CCM
  • DHE-RSA-AES256-SHA256
  • DHE-RSA-AES128-SHA256
  • DHE-RSA-AES256-SHA
  • DHE-RSA-AES128-SHA
  • PSK-AES256-GCM-SHA384
  • PSK-CHACHA20-POLY1305
  • PSK-AES256-CCM
  • PSK-AES128-GCM-SHA256
  • PSK-AES128-CCM
  • PSK-AES256-CBC-SHA
  • PSK-AES128-CBC-SHA256
  • PSK-AES128-CBC-SHA
  • DHE-PSK-AES256-GCM-SHA384
  • DHE-PSK-CHACHA20-POLY1305
  • DHE-PSK-AES256-CCM
  • DHE-PSK-AES128-GCM-SHA256
  • DHE-PSK-AES128-CCM
  • DHE-PSK-AES256-CBC-SHA
  • DHE-PSK-AES128-CBC-SHA256
  • DHE-PSK-AES128-CBC-SHA
  • ECDHE-PSK-CHACHA20-POLY1305
  • ECDHE-PSK-AES256-CBC-SHA
  • ECDHE-PSK-AES128-CBC-SHA256
  • ECDHE-PSK-AES128-CBC-SHA
  • RSA-PSK-AES256-GCM-SHA384
  • RSA-PSK-CHACHA20-POLY1305
  • RSA-PSK-AES128-GCM-SHA256
  • RSA-PSK-AES256-CBC-SHA
  • RSA-PSK-AES128-CBC-SHA256
  • RSA-PSK-AES128-CBC-SHA

L'ancrage dans le contexte et Document Understanding nécessitent que SQL Server dispose du composant de recherche en texte intégral du moteur de base de données SQL Server, qui n'est pas toujours installé par défaut.

Si vous n'avez pas sélectionné la recherche en texte intégral lors de l'installation de SQL Server, exécutez à nouveau le programme d'installation de SQL Server pour l'ajouter avant de configurer Document Understanding.

Pour plus d'informations, consultez ce guide sur la façon d ' ajouter/d'installer des fonctionnalités sur le serveur SQL. Vous pouvez également trouver une liste complète des composants du serveur SQL, qui comprend la recherche en texte intégral.

Exigences SQL pour Insights​

Remarque :

Insights ne prend pas en charge l’authentification Azure AD. Si vous vous authentifiez à l'aide d'Azure AD, les tableaux de bord ne peuvent pas être chargés et les données ne peuvent pas être extraites de la base de données Microsoft SQL.

Insights nécessite SQL Server 2019 ou 2022, qui prennent en charge l'index columnstore et les fonctions .json . SQL Server Enterprise est recommandé en raison d'un threading et d'une évolutivité plus efficaces.

Pour Azure SQL, assurez-vous que la base de données correspond à l'objectif de service S3 ou plus.

Assurez-vous que le niveau de compatibilité de la base de données Insights est défini sur 130 ou plus. Dans la plupart des cas, les paramètres par défaut répondent à cette exigence. Pour plus d'informations, reportez-vous à Afficher ou modifier le niveau de compatibilité d'une base de données - SQL Server.

L'installation valide les deux conditions et vous avertit si les exigences minimales ne sont pas remplies.

Exigences SQL pour Data Service​

Si vous créez votre propre base de données, veillez à accorder les autorisations Data Service suivantes à vos utilisateurs:

  • db_ddladmin
  • db_datareader
  • db_datawriter
GRANT ALTER ANY SENSITIVITY CLASSIFICATION TO {userName};
GRANT VIEW ANY SENSITIVITY CLASSIFICATION TO {userName};
GRANT ALTER ANY SENSITIVITY CLASSIFICATION TO {userName};
GRANT VIEW ANY SENSITIVITY CLASSIFICATION TO {userName};

Exigences SQL pour Process Mining​

Important :

Dans Automation Suite, versions 2.2510.0 et 2.2510.1, Vous ne pouvez pas utiliser un nom de base de données personnalisé pour la base de données de la plate-forme si Process Mining est activé. Si vous spécifiez un nom personnalisé, la tâche de renvoi OMS échoue.

Pour éviter cela, utilisez AutomationSuite_Platform comme nom de base de données de la plate-forme lors de l'installation de Process Mining.

Lorsque vous activez Process Mining pour l'installation sur Automation Suite, vous devez apporter une base de données PostgreSQL pour AutomationSuite_Airflow PostgreSQL est le seul type de base de données pris en charge pour AutomationSuite_Airflow.

AutomationSuite_Airflow Base de données PostgreSQL​

Remarque :

Avant d’installer ou de mettre à niveau vers Automation Suite 2.2510, vous devez créer manuellement la base de données PostgreSQL pour AutomationSuite_Airflow. La base de données PostgreSQL pour Airflow ne sera pas créée automatiquement par le programme d’installation.

Lors de la migration de Microsoft SQL Server vers PostgreSQL, la migration des données n'est pas requise. Avec une configuration de configuration correcte, la base de données est recréée lors de l'exécution de Sync Airflow.

Versions de PostgreSQL prises en charge​

Les versions 12.x à 16.x de PostgreSQL sont prises en charge. Il est recommandé d'utiliser la version la plus récente de PostgreSQL dans cette plage pour une compatibilité et des performances optimales.

Prérequis matériels​

La machine sur laquelle la base de données PostgreSQL pour Airflow est installée doit répondre aux exigences matérielles suivantes.

  • Cœurs : 4
  • Mémoire : 16 Gio
  • Stockage : 128 Gio
  • IOPS : >=500 IOPS
Autorisations requises​

L’utilisateur PostgreSQL Airflow (ou tout utilisateur de base de données dédié) doit avoir

  • Autorisations « Tous les privilèges » (All Privileges) pour la base de données Airflow désignée.
  • « toutes les autorisations » sur le schéma public du serveur.
  • « search_path » est défini sur « public ».
Remarque :

Vous devrez peut-être mettre à jour le fichier d'authentification basée sur l'hôte PostgreSQL pg_hba.conf pour ajouter l'utilisateur Airflow à la liste de contrôle d'accès à la base de données et recharger la configuration de la base de données pour appliquer les modifications.

Le code suivant montre un exemple de configuration d'une base de données PostgreSQL.

CREATE DATABASE airflow_db
  WITH ENCODING 'UTF8'
  LC_COLLATE='en_US.UTF-8'
  LC_CTYPE='en_US.UTF-8'
  TEMPLATE template0;

CREATE USER airflow_user WITH PASSWORD '<your-password>';
GRANT ALL PRIVILEGES ON DATABASE airflow_db TO airflow_user;

-- PostgreSQL 15 requires additional privileges:
GRANT ALL ON SCHEMA public TO airflow_user;
CREATE DATABASE airflow_db
  WITH ENCODING 'UTF8'
  LC_COLLATE='en_US.UTF-8'
  LC_CTYPE='en_US.UTF-8'
  TEMPLATE template0;

CREATE USER airflow_user WITH PASSWORD '<your-password>';
GRANT ALL PRIVILEGES ON DATABASE airflow_db TO airflow_user;

-- PostgreSQL 15 requires additional privileges:
GRANT ALL ON SCHEMA public TO airflow_user;

Le code suivant montre un exemple de validation d'encodage de base de données.

SELECT pg_encoding_to_char(encoding) AS encoding
FROM pg_database
WHERE datname = 'airflow_db';
SELECT pg_encoding_to_char(encoding) AS encoding
FROM pg_database
WHERE datname = 'airflow_db';

Pour plus de détails sur la configuration d’une base de données PostgreSQL pour Airflow, consultez la documentation officielle de Airflow.

Port du serveur par défaut​

Le port de serveur par défaut pour les connexions de base de données Airflow avec PostgreSQL est 5432. Si vous utilisez le pooler de connexion PgBounder, il est courant d'utiliser le port 6432.

Les blocs de code suivants montrent des exemples de chaînes de connexion pour PostgreSQL utilisant le port 5432.

Exemple de chaîne de connexion :

postgresql+psycopg2://testadmin:<your-password>@test-cu231009v3-postgresql.postgres.database.azure.com:5432/automationsuite_airflow
postgresql+psycopg2://testadmin:<your-password>@test-cu231009v3-postgresql.postgres.database.azure.com:5432/automationsuite_airflow

Exemple de chaîne de connexion pour l'utilisation de Kerberos :

postgresql+psycopg2://kerberos_user:@kerberospostgres.AUTOSUITEAD.LOCAL:5432/automationsuite_airflow
postgresql+psycopg2://kerberos_user:@kerberospostgres.AUTOSUITEAD.LOCAL:5432/automationsuite_airflow

Exemple de chaîne de connexion pour l'utilisation de l'identité gérée :

postgresql+psycopg2://testmanagedidentity:@test-postgresql-1.postgres.database.azure.com/airflow-ci-sfasaksqacu8524745
postgresql+psycopg2://testmanagedidentity:@test-postgresql-1.postgres.database.azure.com/airflow-ci-sfasaksqacu8524745

Le port de serveur par défaut peut être configuré pour utiliser n'importe quel port disponible selon les exigences de votre système.

LanceurPg​

Étant donné que Airflow utilise des connexions de courte durée, il est fortement recommandé de configurer PgBounder. PgBounder est un pooler de connexions léger pour PostgreSQL.

Pour plus de détails sur la configuration de PgBo optimisé, reportez-vous à la documentation officielle de PgBucker.

AutomationSuite_ProcessMining_Warehouse database​

Process Mining sur Automation Suite nécessite un serveur Microsoft SQL distinct pour AutomationSuite_ProcessMining_Warehouse afin de stocker les données des applications de processus Process Mining.

Important :

Pour assurer un bon fonctionnement de Process Mining, il est recommandé d'utiliser Microsoft SQL Server 2022.

Il s'agit d'un aperçu de la configuration matérielle requise et des recommandations pour configurer une machine de base de données Microsoft SQL Server pour AutomationSuite_ProcessMining_Warehouse.

Pour calculer la configuration matérielle requise, vous devez disposer des éléments suivants :

  • le nombre de (millions) d'événements dans votre processus.
  • le nombre de champs d'incident et d'événement dans vos données de sortie.

Dans un environnement de développement, il est recommandé de travailler sur un petit ensemble de données de développement avec un nombre limité d'enregistrements pour des raisons de performances.

Vous pouvez utiliser le calculateur de dimensionnement d'installation d'UiPath Automation Suite pour déterminer la configuration matérielle requise en vue de configurer une machine Microsoft SQL Server dédiée pour Process Mining. Lorsque vous ajoutez Process Mining à la section Produit, la configuration minimale requise pour une machine SQL Server dédiée s'affiche. Pour des détails, reportez-vous à Configuration matérielle requise.

L'utilisateur SQL utilisé dans les chaînes de connexion doit disposer du rôle db_securityadmin au niveau de la base de données, tant pendant qu'après l'installation, pour activer la sécurité par application sur le serveur SQL de l'entrepôt de données Process Mining. Pour plus de détails, reportez-vous à la documentation officielle de Microsoft sur les rôles de niveau base de données et Configuration de la sécurité de l'application de processus.

Il est recommandé d'activer la sensibilité à la casse dans les noms de tables et de colonnes à l'aide de la commande suivante :

ALTER DATABASE AutomationSuite_ProcessMining_Warehouse COLLATE SQL_Latin1_General_CP1_CS_AS
ALTER DATABASE AutomationSuite_ProcessMining_Warehouse COLLATE SQL_Latin1_General_CP1_CS_AS

Cela permet d'éviter les erreurs lors du chargement de données causées par des colonnes possédant des noms similaires, telles que ID et id. Elle garantit également que les valeurs textuelles qui ne diffèrent que par le biais d’une casse sont traitées comme distincts. Par exemple :

  • 'activity 1' == 'activity 1'
  • 'Activity 1' != 'activity 1'

Cela permet d’éviter les problèmes de duplication dans les transformations SQL.

Exigences SQL pour AI Center​

Exigences pour AI Center installé sur une machine compatible FIPS 140-2​

Pour installer AI Center sur une machine compatible FIPS 140-2, procédez comme suit :

  1. Avant de commencer l'installation d'Automation Suite, procédez comme suit :
    1. Activez FIPS 140-2 sur la machine sur laquelle vous prévoyez d'installer Microsoft Server en suivant les instructions de Microsoft.
    2. Installez le serveur Microsoft SQL sur la machine compatible FIPS 140-2.
    3. Obtenez le certificat Microsoft SQL Server en exécutant la commande suivante à partir de SQL Server ou de tout serveur pouvant se connecter au serveur SQL avec le nom d'hôte SQL configuré :
      nmap -sV -p <port> -vv --script ssl-cert domain
      nmap -sV -p <port> -vv --script ssl-cert domain
      
  2. Lors de l'installation d'Automation Suite, procédez comme suit :
    1. Ajoutez les valeurs suivantes à la chaîne de connexion sql_connection_string_template_jdbc d'AI Center dans le fichier input.json : encrypt=true;trustServerCertificate=false;fips=true;.

      Exemple :

      jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net:1433;database=DB_NAME_PLACEHOLDER;user=testadmin;password=<your-password>;encrypt=true;trustServerCertificate=false;fips=true;Connection Timeout=30;hostNameInCertificate=sfdev1804627-c83f074b-sql.database.windows.net"
      jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net:1433;database=DB_NAME_PLACEHOLDER;user=testadmin;password=<your-password>;encrypt=true;trustServerCertificate=false;fips=true;Connection Timeout=30;hostNameInCertificate=sfdev1804627-c83f074b-sql.database.windows.net"
      

      Pour plus de détails sur la configuration de la base de données, reportez-vous à Expérience d'installation avancée et Mise à jour de la base de données SQL.

    2. Ajoutez le certificat exporté de l'étape 1.c. vers le magasin approuvé de la machine hôte. Pour plus de détails, consultez Mise à jour des certificats CA.

Exigences SQL pour la haute disponibilité (HA)​

Pour une configuration haute disponibilité du serveur SQL, sélectionnez un groupe de disponibilité Toujours activé (Always On). Pour plus d'informations, consultez Présentation des groupes de disponibilité Toujours activé (Always On).

Exigences SQL pour Orchestrator​

Important :

Pour augmenter les performances, éviter les blocages et empêcher les lectures incorrectes dans SQL, assurez-vous que l'option READ_COMMITTED_SNAPSHOT est définie sur ON.

Pour traiter la même file d'attente avec plusieurs robots alors que l'isolement des instantanés est activé, assurez-vous que l'option ALLOW_SNAPSHOT_ISOLATION est définie sur ON.

Utilisez cette requête pour vérifier si READ_COMMITTED_SNAPSHOT et ALLOW_SNAPSHOT_ISOLATION sont activés ou désactivés :

SELECT is_read_committed_snapshot_on, snapshot_isolation_state FROM sys.databases
   WHERE name like 'PLACEHOLDER'
SELECT is_read_committed_snapshot_on, snapshot_isolation_state FROM sys.databases
   WHERE name like 'PLACEHOLDER'

Assurez-vous de remplacer PLACEHOLDER par le nom de votre base de données Orchestrator.

Si les paramètres sont activés, la valeur renvoyée sera 1.

Si les paramètres sont désactivés, la valeur renvoyée sera 0. Utilisez cette requête pour l'activer :

# To enable READ_COMMITTED_SNAPSHOT
ALTER DATABASE <PLACEHOLDER>
SET READ_COMMITTED_SNAPSHOT ON

# To enable ALLOW_SNAPSHOT_ISOLATION
ALTER DATABASE <PLACEHOLDER>
SET ALLOW_SNAPSHOT_ISOLATION ON
# To enable READ_COMMITTED_SNAPSHOT
ALTER DATABASE <PLACEHOLDER>
SET READ_COMMITTED_SNAPSHOT ON

# To enable ALLOW_SNAPSHOT_ISOLATION
ALTER DATABASE <PLACEHOLDER>
SET ALLOW_SNAPSHOT_ISOLATION ON

Assurez-vous de remplacer <PLACEHOLDER> par le nom de votre base de données Orchestrator.

Exigences SQL pour Temporel en tant que service (TaaS)​

Lorsque Maestro est activé sur Automation Suite, SaaS nécessite deux bases de données PostgreSQL dédiées :

  • Magasin de persistance (AutomationSuite_Taas): stocke les données d'exécution et l'historique du workflow.
  • Magasin de visibilité (AutomationSuite_Taas_Visibility): stocke les métadonnées de workflow utilisées par l'interface utilisateur temporaire et les API de visibilité. Nécessite la disponibilité de l'extension btree_gin sur le serveur PostgreSQL.

Les deux bases de données sont créées automatiquement par le programme d'installation lorsque la valeur sql.create_db est définie sur true. Si vous apportez vos propres bases de données, créez les deux avant d'exécuter le programme d'installation. Pour les noms de bases de données par défaut, reportez-vous à la section Noms de bases de données par défaut et facultatifs pour les services Automation Suite.

Pour remplacer les chaînes de connexion pour TaaS, utilisez postgresql_connection_string_template_sqlalchemy_pyodbc. Pour le format de chaîne de connexion, reportez-vous à Fournissez vos propres bases de données.

Versions de PostgreSQL prises en charge​

Les versions de PostgreSQL 12.x à 16.x sont prises en charge.

Prérequis matériels​

Dimensionner la base de données TaaS PostgreSQL en fonction du volume de workflow par jour. Trois profils de complexité sont utilisés pour le dimensionnement:

  • Simple - environ 3 tâches BPMN par workflow
  • Modéré : environ 25 tâches BPMN et 1 sous-processus (5 tâches)
  • Complexe : environ 100 tâches BPMN et 3 sous-processus (5 tâches chacun)

Recherchez la ligne qui correspond à votre charge de travail dans une seule colonne (OU, non ET) et lisez la configuration matérielle requise à droite. Il n'est pas nécessaire de respecter simultanément les trois seuils de colonne. Pour les charges de travail à complexité mixte, utilisez le calculateur de capacité Automation Suite - les contributions à tous les niveaux de complexité se cumulent.

Processeur et RAM​

Le tableau suivant décrit les exigences de processeur et de RAM en fonction du volume et de la complexité du workflow quotidien:

Workflows simples/jourModéré les workflows/jourWorkflows complexes/jourProcesseurRAM
< 12 500< 1 900< 5252 vCores4 Go
12 500 à 125 0001 900 à 19 200525–5 2754 vCores8 GO
Plus de 125 000Plus de 19 2005 275+8 vCores16 Go
Disque et IOPS​

La taille du disque dépend du volume du workflow, de la complexité et de la période de rétention du processus configurée dans Orchestrator. Utilisez le calculateur de capacité Automation Suite pour une recommandation basée sur la charge de travail. Le tableau suivant décrit le disque et les IOPS recommandés en fonction de votre taille à l'état régulier:

Disque recommandéIOPS
100 Go500
150 Go800
250 Go1 110
500 Go2 300
1 To5,000
Important :

Un SSD (ou équivalent) est requis. Le SSD standard ne peut pas maintenir le débit d'écriture TaaS au-delà d'une charge très faible.

Lire la réplique​

Facultatif: recommandé pour les déploiements haute disponibilité.

Le serveur PostgreSQL doit être co-localisé avec les composants de cluster SaaS (par exemple, dans le même centre de données). Cette exigence s'applique à la fois à la région principale et à toutes les régions passées ou de basculement.

Exigences de connexion​

TaaS maintient un pool de connexions côté application par pod. Le tableau suivant décrit la valeur max_connections requise en fonction de votre profil de déploiement et de votre volume de workflow quotidien:

Workflows simples/jourModéré les workflows/jourWorkflows complexes/jourPar défautLiteHA
< 12 500< 1 900< 525200200400
12 500 à 125 0001 900 à 19 200525–5 275200400500
Plus de 125 000Plus de 19 2005 275+200600600
Important :

La valeur PostgreSQL max_connections par défaut est de 100, ce qui est insuffisant pour tout profil TaaS. Utilisez la table ci-dessus pour déterminer la valeur requise pour votre profil de déploiement et le volume de votre workflow, et augmentez max_connections sur le serveur PostgreSQL avant l'installation.

Contraintes de connexion​
  • TaaS ne prend pas en charge les connexions via pgBounder.
  • Seule l'authentification par nom d'utilisateur et mot de passe est prise en charge. L'authentification Workload Identity, Kerberos et IAM ne sont pas prises en charge.

Régler le pool de connexions​

Les paramètres par défaut du pool de connexions sont adaptés à la plupart des déploiements. Si votre instance PostgreSQL a une limite max_connections inférieure, remplacez les valeurs par défaut en utilisant advanced_configuration dans input.json:

{
  "taas": {
    "enabled": true,
    "advanced_configuration": {
      "taas": {
        "temporal": {
          "server": {
            "config": {
              "persistence": {
                "default": {
                  "sql": {
                    "maxConns": 10,
                    "maxIdleConns": 10
                  }
                },
                "visibility": {
                  "sql": {
                    "maxConns": 10,
                    "maxIdleConns": 10
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
{
  "taas": {
    "enabled": true,
    "advanced_configuration": {
      "taas": {
        "temporal": {
          "server": {
            "config": {
              "persistence": {
                "default": {
                  "sql": {
                    "maxConns": 10,
                    "maxIdleConns": 10
                  }
                },
                "visibility": {
                  "sql": {
                    "maxConns": 10,
                    "maxIdleConns": 10
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
Important :

Une réduction de maxConns de manière proactive peut entraîner des délais d'attente de persistance TaaS en cas de charge. Ajustez ces valeurs uniquement si votre instance PostgreSQL ne peut pas répondre aux exigences de connexion par défaut.

Exigences SQL pour Autopilot pour Developers​

Autopilot™ pour Developers nécessite une base de données PostgreSQL dédiée (AutomationSuite_A4D). A4D utilise le modèle de chaîne de connexion postgresql_connection_string_template_sqlalchemy_asyncpg .

Prérequis matériels​

Le tableau suivant décrit la configuration matérielle requise pour le serveur A4D PostgreSQL:

RessourcePrérequis
Processeur2 vCores
Mémoire8 Go de RAM
Stockage128 Go
IOPS100

Exigences de connexion​

La valeur max_connections requise sur le serveur PostgreSQL est 100.

Si vous utilisez différentes bases de données pour l'automatisation de test et/ou mettre à jour le serveur, READ_COMMITTED_SNAPSHOT et ALLOW_SNAPSHOT_ISOLATION doivent également être activés sur celles-ci.

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

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour