UiPath Documentation
automation-suite
2.2510
true
Guia de instalação do Automation Suite no OpenShift
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

banco de dados SQL

Configuração do banco de dados SQL e pré-requisitos para o Automation Suite no OpenShift.

Importante:

Apenas o Microsoft ODBC Driver 17 é compatível.

Salvo especificação em contrário nas seções dedicadas a requisitos, esses requisitos são aplicáveis a todos os produtos do Automation Suite.

Você deve trazer um servidor SQL externo para instalar os produtos do Automation Suite e da UiPath®. Microsoft SQL Server 2019 e 2022, edições Standard e Enterprise são compatíveis.

Additional Microsoft SQL platforms, such as Azure SQL Database, Azure SQL Managed Instance, or Amazon Relational Database Service, are also supported as long as the Microsoft SQL Server database engine meets the requirements. For details, refer to Compatibility matrix.

Os seguintes produtos exigem um banco de dados PostgreSQL dedicado além do Microsoft SQL Server:

Observação:

Certifique-se de que o SQL Server possa ser acessado a partir dos nós do cluster.

Suporte de produto individual é variado.

Para cada produto que você planeja implantar, você deve:

  • verifique a versão suportada do SQL Server conforme exigido pelo produto;
  • atender aos requisitos de configuração do SQL Server, incluindo permissões de usuário do SQL Server, conforme o produto exigir.

Requisitos de Hardware​

Os requisitos mínimos gerais de hardware para o Microsoft SQL Server são os seguintes:

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

The minimum requirements are general guidance and do not guarantee reliable operation in a production deployment. Capacity planning is required to determine the hardware requirements for reliable operation. For details, refer to Capacity planning.

Cada produto da UiPath® requer seu próprio banco de dados SQL.

Fluxo de trabalho de criação de banco de dados​

O instalador interativo cria automaticamente bancos de dados usando o seguinte fluxo de trabalho:

  1. O script do instalador interativo verifica o valor do parâmetro sql.create_db no arquivo input.json .

    • Se o parâmetro sql.create_db estiver definido como true, o instalador gerará automaticamente todos os bancos de dados em seu nome. Nesse caso, o instalador usa os nomes de bancos de dados e modelos padrão e ignora quaisquer nomes de bancos de dados personalizados que você forneceu.
    • Se sql.create_db estiver definido como false, você deve trazer seus próprios bancos de dados. Nesse caso, você deve configurar manualmente seus bancos de dados. Observe que você pode usar nomes de banco de dados personalizados, desde que siga as convenções de nomenclatura fornecidas. Essa etapa é fundamental porque usamos o nome do banco de dados em conjunto com o modelo de conexão para formar a string de conexão com banco de dados. Se você não seguir a convenção de nomenclatura recomendada, deve fornecer as strings de conexão SQL por conta própria.

    For details, refer to Bring your own databases.

  2. O instalador interativo gera as strings de conexão da seguinte forma:

    • Se você não definiu uma string de conexão para seu serviço, o instalador usará o modelo de conexão com o banco de dados para gerar todas as strings de conexão com banco de dados.
    • Se você definiu uma string de conexão para seu serviço, o instalador usará a string de conexão fornecida para seu banco de dados.

Cria automaticamente os bancos de dados necessários​

Importante:

Para o Process Mining no Automation Suite, você precisa criar manualmente o banco de dados PostgreSQL para AutomationSuite_Airflow antes de instalar ou atualizar para o Automation Suite 2.2510. O banco de dados PostgreSQL para Airflow não será criado automaticamente pelo instalador.

Se quiser que o instalador crie os bancos de dados, preencha os seguintes campos do arquivo input.json :

ParâmetroDescription
sql.create_dbDefina como true para permitir que o instalador crie os bancos de dados. Observe que o instalador usa os nomes de bancos de dados e modelos padrão e ignora quaisquer nomes de bancos de dados personalizados que você forneceu.
sql.server_urlFQDN do SQL Server, onde você deseja que o instalador configure o banco de dados.
sql.portNúmero da porta na qual uma instância de banco de dados deve ser hospedada no SQL Server.
sql.usernameNome de usuário/ID do usuário para se conectar ao SQL Server.
sql.passwordSenha do nome de usuário fornecido anteriormente para se conectar ao SQL Server.
Observação:
  • Certifique-se de que o usuário tenha a função dbcreator. Isso concede a eles permissão para criar o banco de dados no SQL Server. Caso contrário, a instalação falha.
  • A criação automática dos bancos de dados necessários não funciona em combinação com a autenticação de diretório. Se você usa a autenticação de diretórios, deve trazer seus próprios bancos de dados.
  • A conexão ODBC não aceita nomes de usuário que contenham caracteres especiais. Para nomes de usuário de banco de dados no AI Center, Document Understanding e Apps, use apenas letras maiúsculas e minúsculas.

Traga seus próprios bancos de dados​

Se você optar por trazer seus próprios bancos de dados para uma nova instalação do Automation Suite, recomendamos fortemente a configuração de novos bancos de dados em vez de usar os existentes. Essa precaução é necessária para evitar quaisquer conflitos com a operação do Automation Suite que possam ocorrer devido a metadados restantes de bancos de dados antigos.

Se trouxer seu próprio banco de dados, você deve fornecer as strings de conexão do SQL para cada banco de dados. O Automation Suite oferece suporte aos seguintes formatos de string de conexão SQL:

Observação:

Para o Document Understanding, certifique-se de usar o mesmo banco de dados, a menos que indicado explicitamente de outra forma. Strings de conexão específicas são atribuídas a vários serviços e trabalhos que se conectam ao mesmo banco de dados.

Modelos de strings de conexão​

ParâmetroDescriptionProdutos
sql_connection_string_templateString de conexão completa do ADO.NET onde o nome do catálogo é definido como DB_NAME_PLACEHOLDER. O instalador substituirá esse espaço reservado pelos nomes de banco de dados padrão para os serviços do pacote instalado.Plataforma
Orchestrator
Automation Suite Robots
Test Manager
Automation Hub
Automation Ops
Insights
Integration Service
Data Service
Studio Web
Process Mining
Document Understanding
Gateway do LLM
ECS
Observabilidade de LLM
Soluções
Maestro
Agents
HubDoAgente
sql_connection_string_template_jdbcString de conexão completa do JDBC onde o nome do banco de dados é definido como DB_NAME_PLACEHOLDER. O instalador substituirá esse espaço reservado pelos nomes de banco de dados padrão para os serviços do pacote instalado.AI Center
Integration Service
sql_connection_string_template_odbcString de conexão completa do ODBC onde o nome do banco de dados é definido como DB_NAME_PLACEHOLDER. O instalador substituirá esse espaço reservado pelos nomes de banco de dados padrão para os serviços do pacote instalado.Document Understanding
Apps
Integration Service
sql_connection_string_template_sqlalchemy_pyodbcString de conexão SQL alchemy PYODBC completa na qual o nome do banco de dados é definido como DB_NAME_PLACEHOLDER. O instalador substituirá esse espaço reservado pelos nomes de banco de dados padrão para os serviços do pacote instalado.Document Understanding
postgresql_connection_string_template_sqlalchemy_pyodbcString de conexão SQL alchemy PSYCOPG2 completa na qual o nome do banco de dados é definido como DB_NAME_PLACEHOLDER. O instalador substituirá esse espaço reservado pelos nomes de banco de dados padrão para os serviços do pacote instalado.Process Mining
Temporal como um serviço (TaaS)
postgresql_connection_string_template_sqlalchemy_asyncpgString de conexão completa do PostgreSQL onde o nome do banco de dados é definido como DB_NAME_PLACEHOLDER. O instalador substituirá esse espaço reservado pelos nomes de banco de dados padrão para os serviços do pacote instalado.Autopilot para desenvolvedores

Se sua senha contiver caracteres de URL reservados, substitua cada caractere especial por seu equivalente codificado percentual na string de conexão. Por exemplo, se sua senha for P@ssw0rd#1!, você deve codificá-la como P%40ssw0rd%231%21.

A senha para os bancos de dados do Apps e do Integration Service não deve conter #{ em par.

Por padrão, TrustServerCertificate é definido como False, e você deve fornecer um certificado de CA adicional para o SQL Server. Isso é necessário se o certificado do SQL Server for autoassinado ou assinado por uma CA interna. Se você não fornecer o certificado do SQL Server nesse cenário, a verificação de pré-requisitos falhará.

sql_connection_string_template​

O exemplo a seguir mostra uma string de conexão 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;
sql_connection_string_template_jdbc​

O exemplo a seguir mostra uma string de conexão 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"
sql_connection_string_template_odbc​

O exemplo a seguir mostra uma string de conexão 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​

O exemplo a seguir mostra uma string de conexão 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​

O exemplo a seguir mostra uma string de conexão postgresql_connection_string_template_sqlalchemy_pyodbc para o Process Mining:

postgresql+psycopg2://<user>:<password>@<host>:<port>/DB_NAME_PLACEHOLDER
postgresql+psycopg2://<user>:<password>@<host>:<port>/DB_NAME_PLACEHOLDER
Observação:

If your password contains special characters, you must URL-encode them in the connection string. For details, refer to How to URL-encode a PostgreSQL connection string password.

O exemplo a seguir mostra uma string de conexão combinada de sql_connection_string_template e postgresql_connection_string_template_sqlalchemy_pyodbc para o 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"

O exemplo a seguir mostra uma string de conexão combinada de sql_connection_string_template e sql_connection_string_template_sqlalchemy_pyodbc para o 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"

O exemplo a seguir mostra os nomes padrão e opcionais do banco de dados para os serviços do 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"
}
Observação:

Se você quiser substituir a string de conexão de algum dos serviços mencionados, defina sql_connection_str para esse serviço específico.

Você ainda precisa criar esses bancos de dados manualmente antes de executar o instalador.

Orchestrator e plataforma​

O exemplo a seguir mostra como substituir a string de conexão padrão para o Orchestrator e a plataforma:

{
  "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;"
  }
}

Para substituir as strings de conexão do banco de dados para outros produtos, defina sql_connection_str nos blocos de produto correspondentes. A string de conexão deve ter um formato compatível com o respectivo produto.

AI Center​

O exemplo a seguir mostra uma amostra de string de conexão do AI Center usando o formato JDBC necessário:

"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​

O exemplo a seguir mostra uma amostra de string de conexão do 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"
        }
    }

A string de conexão SQL do Data Manager é opcional; especifique-o apenas se quiser substituir o padrão.

Process Mining​

As strings de conexão do Process Mining têm as seguintes diferenças das strings de conexão do modelo:

  • Os nomes das strings de conexão do modelo (postgresql_connection_string_template_sqlalchemy_pyodbc, sql_connection_string_template) diferem dos nomes dos bancos de dados que você traz seu próprio banco de dados (sqlalchemy_pyodbc_sql_connection_str, sql_connection_str).
  • Se você trouxer seu próprio banco de dados e o configurar usando sql_connection_str e sqlalchemy_pyodbc_sql_connection_str na seção processmining de input.json, as strings de conexão do modelo sql_connection_string_template e postgresql_connection_string_template_sqlalchemy_pyodbc serão ignoradas.

The app_security_mode setting controls how SQL users are created for Process Mining apps. In the default app_security_mode="system_managed" mode, a new SQL user is created for every Process Mining app, which requires advanced permissions for the database user. In app_security_mode="single_account" mode, a single SQL user account is used for all process apps. For details, refer to Configuring process app security.

Se você usar um Multi-AZ com configuração Always On SQL, defina o parâmetro MultiSubnetFailover em suas strings de conexão do Process Mining. O valor difere de acordo com o tipo de string de conexão: use MultiSubnetFailover=True para sql_connection_str e master_sql_connection_str e MultiSubnetFailover=Yes para sqlalchemy_pyodbc_sql_connection_str. Observe que, para pyodbc você usa "=Sim" em vez de "=True".

Para autenticação do Kerberos, use os parâmetros Integrated Security e Trusted_Connection em vez de um nome de usuário e senha. Defina Integrated Security como true e Trusted_Connection como yes para autenticar usando as credenciais do usuário atualmente logado.

Exemplos de strings de conexão​

O exemplo a seguir mostra uma amostra de string de conexão do Process Mining (PostgreSQL):

  "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;",
  }

O exemplo a seguir mostra uma string de conexão do Process Mining para uma configuração com autenticação do Kerberos (PostgreSQL):

"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;"
      },
  },

O exemplo a seguir mostra uma string de conexão do Process Mining para uma configuração em que o banco de dados de metadados e o data warehouse usam um SQL Server separado (autenticação não 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;",
},

O exemplo a seguir mostra uma string de conexão do Process Mining para uma configuração usando app_security_mode personalizado:

"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​

O exemplo a seguir mostra uma amostra de string de conexão do 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;"
      },

Permissões​

Certifique-se de que a conta do SQL especificada nas strings de conexão tenha a função db_owner para todos os bancos de dados do Automation Suite. Se as restrições de segurança não permitem o uso de db_owner, a conta do SQL deve ter as seguintes funções e permissões em todos os bancos de dados:

  • db_securityadmin
  • db_ddladmin
  • db_datawriter
  • db_datareader
  • EXECUTE permissão no esquema dbo, dt, authz, e messagebus

O Insights requer que a função db_owner seja atribuída para uma instalação bem-sucedida.

Collation de SQL​

O Automation Suite é compatível com agrupamento de SQL definido como SQL_Latin1_General_CP1_CI_AS no nível do servidor e do banco de dados. Recomendamos fortemente essa configuração específica para um desempenho e estabilidade ideais.

Embora você tenha a flexibilidade de usar um agrupamento de sua escolha, esteja ciente de que configurações não testadas podem levar a problemas inesperados.

Importante:

Não recomendamos usar SQL binário ou quaisquer agrupamentos que diferenciem maiúsculas e minúsculas, pois causam problemas conhecidos ao instalar o Automation Suite.

Codificações do SQL server​

Apenas as cifras SQL listadas são suportadas no 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

A Contextualização e o Document Understanding exigem que o SQL Server tenha o componente Pesquisa de Texto Completo do Mecanismo de Banco de Dados do SQL Server, que nem sempre é instalado por padrão.

Se você não selecionou Pesquisa de Texto Completo quando instalou o SQL Server, execute a Instalação do SQL Server novamente para adicioná-la antes de configurar o Document Understanding.

Para obter mais informações, consulte este guia sobre como adicionar/instalar recursos no servidor SQL. Você também pode encontrar uma lista completa de componentes do SQL Server, que inclui Pesquisa de texto completo.

Requisitos de SQL para Insights​

Observação:

O Insights não oferece suporte à autenticação do Azure AD. Se você se autenticar usando o Azure AD, os painéis não poderão ser carregados e os dados não poderão ser buscados a partir do banco de dados Microsoft SQL.

O Insights requer o SQL Server 2019 ou 2022, incluindo suporte para índice columnstore e funções .json . O SQL Server Enterprise é recomendado devido ao threading e escalabilidade mais eficientes.

Para Azure SQL, certifique-se de que o banco de dados seja S3 Service Object ou superior.

Certifique-se de que o nível de compatibilidade do banco de dados Insights esteja definido como 130 ou superior. Na maioria dos casos, as configurações padrão atendem a esse requisito. Para obter mais informações, consulte Exibir ou alterar o nível de compatibilidade de um banco de dados - SQL Server.

A instalação valida ambas as condições e alerta você se os requisitos mínimos não forem atendidos.

SQL requirements for Data Service​

Se você criar seu próprio banco de dados, certifique-se de conceder as seguintes permissões de serviço do Data Service aos seus usuários:

  • 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};

SQL requirements for Process Mining​

Importante:

Nas versões 2.2510.0 e 2.2510.1 do Automation Suite, não é possível usar um nome de banco de dados personalizado para o banco de dados Plataforma se o Process Mining estiver habilitado. Se você especificar um nome personalizado, o trabalho de preenchimento do OMS falhará.

Para evitar isso, use AutomationSuite_Platform como o nome do banco de dados da plataforma ao instalar o Process Mining.

Quando você habilita o Process Mining para instalação no Automation Suite, você deve trazer um banco de dados AutomationSuite_Airflow para . PostgreSQL é o único tipo de banco de dados compatível com AutomationSuite_Airflow.

AutomationSuite_Airflow banco de dados PostgreSQL​

Observação:

Antes de instalar ou atualizar para o Automation Suite 2.2510, você precisa criar manualmente o banco de dados PostgreSQL para AutomationSuite_Airflow. O banco de dados PostgreSQL para Airflow não será criado automaticamente pelo instalador.

Ao migrar do Microsoft SQL Server para PostgreSQL, a migração de dados não é necessária. Com uma configuração correta definida, o banco de dados é recriado ao executar o Sync Airflow.

Versões do PostgreSQL compatíveis​

As versões 12.x a 16.x do PostgreSQL são compatíveis. É recomendável usar a versão mais recente do PostgreSQL dentro desse intervalo para compatibilidade e desempenho ideais.

Requisitos de Hardware​

A máquina na qual o banco de dados PostgreSQL para Airflow está instalado deve atender aos seguintes requisitos de hardware.

  • Núcleos: 4
  • Memória: 16 GiB
  • Armazenamento: 128 GiB
  • IOPS: >=500 IOPS
Permissões necessárias​

O usuário do PostgreSQL Airflow (ou qualquer usuário de banco de dados dedicado) deve ter

  • Permissões "Todos os privilégios" para o banco de dados do Airflow designado.
  • "todas as concessões" no esquema público do servidor.
  • "search_path" definido como "public".
Observação:

Pode ser necessário atualizar o arquivo de autenticação baseada em host do PostgreSQL pg_hba.conf para adicionar o usuário do Airflow à lista de controle de acesso do banco de dados e recarregar a configuração do banco de dados para aplicar as alterações.

O código a seguir mostra um exemplo para configurar um banco de dados 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;

O código a seguir mostra um exemplo de validação de codificação de banco de dados.

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';

Para obter detalhes sobre como configurar um banco de dados PostgreSQL para Airflow, consulte a documentação oficial do Airflow.

Porta padrão do servidor​

A porta padrão do servidor para as conexões de banco de dados do Airflow com o PostgreSQL é 5432. Se você estiver usando o pool de conexões PgBouncer, é comum usar a porta 6432.

Os blocos de código a seguir mostram alguns exemplos de strings de conexão para PostgreSQL usando a porta 5432.

Exemplo de string de conexão:

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

Exemplo de string de conexão para usar o Kerberos:

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

Exemplo de string de conexão para usar Identidade Gerenciada:

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

A porta padrão do servidor pode ser configurada para usar qualquer porta disponível conforme os requisitos do seu sistema.

PgBouncer​

Como o Airflow usa conexões de vida curta, é altamente recomendável configurar o PgBouncer. O PgBouncer é um pool de conexões leve para o PostgreSQL.

Para obter detalhes sobre como configurar o PgBouncer, consulte a documentação oficial do PgBouncer.

AutomationSuite_ProcessMining_Warehouse database​

O Process Mining no Automation Suite requer um Microsoft SQL Server separado para AutomationSuite_ProcessMining_Warehouse para armazenamento de dados para aplicativos de processos do Process Mining.

Importante:

Para garantir o funcionamento adequado do Process Mining, é recomendável usar o Microsoft SQL Server 2022.

Esta é uma visão geral dos requisitos de hardware e recomendações para configurar uma máquina de banco de dados do Microsoft SQL Server para AutomationSuite_ProcessMining_Warehouse.

Para calcular os requisitos de hardware, você precisa ter uma indicação do:

  • número de (milhões) de eventos em seu processo.
  • the number of case and event fields in your output data.

Em um ambiente de desenvolvimento, é recomendável trabalhar em um pequeno conjunto de dados de desenvolvimento com um número limitado de registros por motivo de desempenho.

You can use the UiPath Automation Suite Install Sizing Calculator to determine the hardware requirements for setting up a dedicated Microsoft SQL Server machine for Process Mining. When you add Process Mining to the Product section, the minimum requirements for 1 Dedicated SQL Server are displayed. For details, refer to Hardware requirements.

The SQL user used in the connection strings must have the db_securityadmin database-level role both during and post-installation to enable per app security on the Process Mining data warehouse SQL Server. For details, refer to the official Microsoft documentation on Database-level roles and Configuring process app security.

É recomendável habilitar a diferenciação entre maiúsculas e minúsculas nos nomes de tabelas e colunas usando o seguinte comando:

ALTER DATABASE AutomationSuite_ProcessMining_Warehouse COLLATE SQL_Latin1_General_CP1_CS_AS
ALTER DATABASE AutomationSuite_ProcessMining_Warehouse COLLATE SQL_Latin1_General_CP1_CS_AS

Isso evita erros ao carregar dados causados por colunas com nomes semelhantes, como ID e id. Isso também garante que os valores textuais que diferem apenas em letras maiúsculas ou minúsculas sejam tratados como distintos. Por exemplo:

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

Isso evita problemas de duplicação em transformações SQL.

Requisitos de SQL para o AI Center​

Requisitos para o AI Center instalado em uma máquina habilitada para FIPS 140-2​

Para instalar o AI Center em uma máquina habilitada para FIPS 140-2, execute as seguintes etapas:

  1. Antes de iniciar a instalação do Automation Suite, siga os seguintes passos:
    1. Ative o FIPS 140-2 na máquina em que planeja instalar o Microsoft Server seguindo as instruções da Microsoft.
    2. Instale o Microsoft SQL Server na máquina habilitada para FIPS 140-2.
    3. Obtenha o certificado do Microsoft SQL Server executando o seguinte comando do SQL Server ou de qualquer servidor que possa se conectar ao servidor SQL com o nome do host SQL configurado:
      nmap -sV -p <port> -vv --script ssl-cert domain
      nmap -sV -p <port> -vv --script ssl-cert domain
      
  2. Durante a instalação do Automation Suite, execute as seguintes etapas:
    1. Acrescente os seguintes valores à string de conexão sql_connection_string_template_jdbc do AI Center no arquivo input.json: encrypt=true;trustServerCertificate=false;fips=true;.

      Exemplo:

      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"
      

      For details on database configuration, refer to Advanced installation experience and Updating the SQL database.

    2. Add the exported cert from step 1.c. to the trust store of the host machine. For details refer to Updating the CA Certificates.

SQL requirements for HA​

Para uma configuração de alta disponibilidade de seu SQL Server, selecione um grupo de disponibilidade Sempre Ativado. Para obter mais informações, consulte Visão geral dos grupos de disponibilidade Sempre Ativados.

Requisitos SQL para o Orchestrator​

Importante:

Para aumentar o desempenho, evite deadlocks e impeça leituras sujas no SQL, certifique-se de que a opção READ_COMMITTED_SNAPSHOT esteja definida como ON.

Para processar a mesma fila com vários robôs e se o isolamento de instantâneo estiver ativado, certifique-se de que a opção ALLOW_SNAPSHOT_ISOLATION esteja definida como ON.

Use esta consulta para verificar se READ_COMMITTED_SNAPSHOT e ALLOW_SNAPSHOT_ISOLATION estão habilitados ou desabilitados:

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'

Certifique-se de substituir PLACEHOLDER pelo nome do banco de dados do Orchestrator.

Se as configurações estiverem habilitadas, o valor retornado será 1.

Se as configurações estiverem desabilitadas, o valor retornado será 0. Use esta consulta para habilitá-lo:

# 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

Certifique-se de substituir <PLACEHOLDER> pelo nome do banco de dados do Orchestrator.

Requisitos de SQL para Temporal como um Serviço (TaaS)​

Quando o Maestro está habilitado no Automation Suite, o TaaS requer dois bancos de dados PostgreSQL dedicados:

  • Armazenamento de persistência (AutomationSuite_Taas) - armazena dados e histórico de execução de fluxo de trabalho.
  • Armazenamento de visibilidade (AutomationSuite_Taas_Visibility) - armazena metadados de fluxo de trabalho usados pela interface gráfica Temporal e APIs de visibilidade. Requer que a extensão btree_gin esteja disponível no servidor PostgreSQL.

Both databases are created automatically by the installer when sql.create_db is set to true. If you bring your own databases, create both before running the installer. For the default database names, refer to Default and optional DB names for Automation Suite services.

Para substituir as strings de conexão para TaaS, use postgresql_connection_string_template_sqlalchemy_pyodbc. Para o formato da string de conexão, consulte Traga seus próprios bancos de dados.

Versões do PostgreSQL compatíveis​

As versões 12.x a 16.x do PostgreSQL são compatíveis.

Requisitos de Hardware​

Dimensionar o banco de dados TaaS PostgreSQL com base no volume de fluxo de trabalho por dia. Três perfis de complexidade são usados para dimensionamento:

  • Simples : aproximadamente 3 tarefas BPMN por fluxo de trabalho
  • Moderado - aproximadamente 25 tarefas BPMN e 1 subprocesso (5 tarefas)
  • Complexo - aproximadamente 100 tarefas BPMN e 3 subprocessos (5 tarefas cada)

Encontre a linha que corresponde à sua carga de trabalho em qualquer coluna (OR, não AND) e leia os requisitos de hardware à direita. Você não precisa atender aos limites de todos as três colunas simultaneamente. Para cargas de trabalho de complexidade mista, use a calculadora de capacidade do Automation Suite - as contribuições em níveis de complexidade são cumulativas.

CPU e RAM​

A tabela a seguir descreve os requisitos de CPU e RAM com base no volume e na complexidade do fluxo de trabalho diário:

Fluxos de trabalho simples/diaModerar fluxos de trabalho/diaFluxos de trabalho complexos/diaCPUBATER
< 12.500< 1.900< 5252 vCores4GB
12.500–125.0001.900 a 19.200525–5.2754 vCores8 GB
Mais de 125.000Mais de 19.200Mais de 5.2758 vCores16 GB
Disco e IOPS​

O tamanho do disco depende do volume do fluxo de trabalho, da complexidade e do período de retenção do processo configurado no Orchestrator. Use a calculadora de capacidade do Automation Suite para obter uma recomendação orientada por cargas de trabalho. A tabela a seguir descreve o disco recomendado e o IOPS com base em seu tamanho de estado estável:

Disco recomendadoIOPs
100 GB500
150GB800
250GB1.110
500 GB2.300
1TB5,000
Importante:

É necessário o SSD Premium (ou equivalente). O SSD padrão não pode suportar a taxa de transferência de gravação de TaaS além de carga muito baixa.

Ler réplica​

Opcional – recomendado para implantações de alta disponibilidade.

O servidor PostgreSQL deve estar co-localizado com os componentes do cluster TaaS (por exemplo, no mesmo datacenter). Esse requisito se aplica tanto à região primária quanto a quaisquer regiões passivas ou de failover.

Requisitos de conexão​

O TaaS mantém um pool de conexões do lado do aplicativo por pod. A tabela a seguir descreve o valor max_connections necessário com base em seu perfil de implantação e volume de fluxo de trabalho diário:

Fluxos de trabalho simples/diaModerar fluxos de trabalho/diaFluxos de trabalho complexos/diapadrãoLiteha
< 12.500< 1.900< 525200200400
12.500–125.0001.900 a 19.200525–5.275200400500
Mais de 125.000Mais de 19.200Mais de 5.275200600600
Importante:

O valor max_connections padrão do PostgreSQL é 100, que é insuficiente para qualquer perfil TaaS. Use a tabela acima para determinar o valor necessário para seu perfil de implantação e volume de fluxo de trabalho e aumente max_connections no servidor PostgreSQL antes da instalação.

Restrições de conexão​
  • O TaaS não é compatível com conexões por meio do pgBouncer.
  • Apenas a autenticação de nome de usuário e senha é compatível. Identidade de carga de trabalho, Kerberos e autenticação do IAM não são compatíveis.

Ajustando o pool de conexões​

As configurações do pool de conexões padrão são adequadas para a maioria das implantações. Se sua instância do PostgreSQL tiver um limite max_connections menor, substitua os padrões usando advanced_configuration em 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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
Importante:

Reduzir maxConns de forma agressivo pode causar tempos limite de persistência do TaaS sob carga. Apenas ajuste esses valores se sua instância PostgreSQL não puder atender aos requisitos de conexão padrão.

Requisitos de SQL para o Autopilot para Developers (A4D)​

Autopilot™ para Developers requer um banco de dados PostgreSQL dedicado (AutomationSuite_A4D). O A4D usa o modelo de string de conexão postgresql_connection_string_template_sqlalchemy_asyncpg .

Requisitos de Hardware​

A tabela a seguir descreve os requisitos de hardware para o servidor A4D PostgreSQL:

RecursoRequisito
CPU2 vCores
Memória8 GB de RAM
Armazenamento128GB
IOPs100

Requisitos de conexão​

O valor max_connections exigido no servidor PostgreSQL é 100.

Se você usar bancos de dados diferentes para Testar Automação e/ou Atualizar Servidor, READ_COMMITTED_SNAPSHOT e ALLOW_SNAPSHOT_ISOLATION devem ser habilitados neles também.

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades