- Introdução
- Requisitos
- Melhores práticas
- Instalação
- Atualizando
- Servidor de Identidade
- Complemento de alta disponibilidade
Implantação na nuvem
Há várias opções de implantação de nuvem empresarial disponíveis para hospedar seu Orchestrator, como a Amazon Web Services (AWS), Microsoft Azure ou Google Cloud Platform (GCP). Aqui detalhamos uma implantação grande e escalonável usando as ofertas do Azure Infraestrutura como Serviço (IaaS). Os seguintes serviços são necessários:
- Conjunto de disponibilidade da VM para Orchestrator
- Conjunto de Disponibilidade de VM para Elasticsearch
- Azure SQL Server
- Balanceador de carga do Azure
- Azure Redis Cache para implantações de vários nós
- Serviço DNS distribuído (como o Cloudflare)
Os exemplos de arquitetura abaixo contêm componentes opcionais e/ou diferentes (por exemplo, CyberArk, Suplemento de Alta Disponibilidade da UiPath).
O Jumpbox apresentado não é necessário, mas é uma prática recomendada para seus ambientes de produção, fornecendo isolamento e segurança.
Esta seção descreve as configurações de hardware usadas para os testes de desempenho listados em Escalando sua Implantação, abaixo.
Cada nó do Orchestrator deve ser configurado da seguinte maneira:
VCPUs |
RAM (GB) |
SSD (GB) |
---|---|---|
16 |
32 |
128 |
As especificações da máquina virtual do SQL Server devem ser escaladas de acordo com o número de nós do Orchestrator:
Nós do Orchestrator |
VCPUs |
RAM (GB) |
---|---|---|
1-2 |
8 |
16 |
5 |
16 |
32 |
10 |
16 |
64 |
O conjunto de disponibilidade do Elasticsearch é composto de 3 nós mestre e 6 nós de dados, para um total de 9 nós, cada um com as seguintes especificações:
VCPUs |
RAM (GB) |
OS SSD (GB) |
Data SSD (TB) |
---|---|---|---|
8 |
16 |
128 (com 5000 IOPS e 100 MB/s Throughput) |
1 (com 5000 IOPS e 200 MB/s Throughput) |
Software |
Versão |
---|---|
Sistema Operacional |
Windows Server 2016 |
Bancos de dados |
SQL Server 2017 |
Geração de logs |
Elasticsearch 6.4.0 |
As versões listadas acima são aquelas usadas para implantações e cargas de desempenho testadas descritas. Para todas as versões compatíveis com o Orchestrator, consulte aqui.
Para implantações de vários nós, é recomendável usar dois balanceadores de carga Azure Standard:
- Um para os servidores do Orchestrator;
- Um para os servidores Elasticsearch.
As implantações de vários nós do Orchestrator usam o RESP (Protocolo de Serialização REdis) para comunicação e, sendo assim, podem ser configuradas usando qualquer solução que implementa esse protocolo, como o Azure Redis Cache neste exemplo.
As implantações de alta disponibilidade do Orchestrator são suportadas pelo UiPath somente se o complemento UiPath High Availability for usado.
Para implantações de vários nós, é recomendável usar duas instâncias separadas do Redis:
- Azure Redis Cache Premium com um cache de 6 GB - nó principal usado para estado de sessão e associações entre entidade e usuário;
- Azure Redis Cache Basic - usado para escalonar o serviço SignalR.
O número de nós necessários no seu conjunto de escala do Orchestrator depende do número de Robôs que estão sendo implantados:
Nós do Conjunto de Escala do Orchestrator |
Núm. de Robôs |
---|---|
1 |
até 4.000 |
2 |
até 8.000 |
5 |
até 24.000 |
10 |
até 48.000 |
Essas implantações foram testadas usando as configurações de hardware e software acima para exibir nenhuma perda de desempenho sob a carga especificada abaixo.
Dados estáticos
Dados estáticos se referem à carga inicial existente do Orchestrator.
Entidade |
Um nó |
Dois nós |
Cinco nós |
Dez nós |
---|---|---|---|---|
Tenants |
40 |
80 |
240 |
480 |
Ambientes |
2.000 |
4.000 |
12.000 |
24.000 |
Robôs
|
4.000
|
8.000
|
24.000
|
48.000
|
Pacotes |
8.000 |
16.000 |
48.000 |
96.000 |
Processos |
4.000 |
8.000 |
24.000 |
48.000 |
Filas |
200 |
420 |
1.200 |
2.400 |
Itens de Fila |
1.120.000 |
1.500.000 |
3.000.000 |
5.000.000 |
Ativos |
40.000 |
80.000 |
240.000 |
480.000 |
Agendamentos |
400 |
800 |
2.400 |
4.800 |
Dados dinâmicos
Os dados dinâmicos se referem aos dados adicionados ou alterados no Orchestrator, pois os processos são executados.
Entidade |
Um nó |
Dois nós |
Cinco nós |
Dez nós |
---|---|---|---|---|
Itens de fila (por dia) |
112.000 |
175,000 |
672.000 |
1.250.000 |
Trabalhos (por minuto) |
2.000 |
4.000 |
12.000 |
24.000 |
Logs (por minuto) |
20,000 |
20,000 |
20,000 |
25,000 |
Downloads do Nuget (máximo por minuto) |
2.000 |
4.000 |
12.000 |
24.000 |
Robôs conectados (máximo) |
4.000 |
8.000 |
24.000 |
48.000 |
Pulsação (por minuto) |
10,000 |
20,000 |
60,000 |
120,000 |
Notificações SignalR (por minuto) |
2.000 |
4.000 |
12.000 |
24.000 |
Robôs ocupados |
2.000 |
4.000 |
12.000 |
24.000 |
Robôs disponíveis |
2.000 |
4.000 |
12.000 |
24.000 |
- Arquitetura
- Arquitetura de nó único
- Arquitetura de vários nós
- Requisitos de Hardware
- Nós do Orchestrator
- SQL Server
- Conjunto de Disponibilidade do Elasticsearch
- Requisitos de software
- Balanceamento de carga
- Azure Redis Cache
- Configuração
- Configurações do UiPath.Orchestrator.dll.config
- Escalando sua Implantação
- Teste de desempenho