Árvore de páginas

Conforme estudo realizado na plataforma da Azure, foram observados cenários computacionais gerando melhores insights dentro de sua arquitetura computacional. 

As recomendações desta página são baseadas nos testes de Benchmark realizados pelo time de Engenharia de Dados nas Máquinas Virtuais disponíveis da Azure.

Nos testes, foram utilizados Windows e Linux; constatamos que o Linux obteve melhor desempenho (em torno de 15% de melhora) quando comparado ao Windows dentro da arquitetura da Azure. Usando escalabilidade, o Linux obteve os melhores cenários.

VMs recomendadas

Foram testados diferentes VMs. A série que apresentou melhor performance foi a DSv2, que pode ser visualizada na documentação da fornecedora ou na planilha abaixo.

TamanhovCPUMemória: GiBArmazenamento temporário (SSD) GiBDiscos de dados máximosTaxa de transferência máxima de armazenamento em cache e temporária: IOPS/MBps (tamanho do cache em GiB)Taxa de transferência de disco sem cache: IOPS/MBpsMáximo de NICsLargura de banda de rede esperada (Mbps)
Standard_DS1_v213,5744000/32 (43)3200/482750
Standard_DS2_v2271488000/64 (86)6400/9621500
Standard_DS3_v2414281616000/128 (172)12800/19243000
Standard_DS4_v2828563232000/256 (344)25600/38486000
Standard_DS5_v216561126464000/512 (688)51200/768812000
Para mais informações da série, consulte a documentação da fabricante.

Configuração de cenário

Atenção

Não recomendamos o banco de dados como serviço da Azure, uma vez que as atualizações automáticas podem comprometer o funcionamento da aplicação.

  • Máquina Primária:  Possui a função de Gateway, direcionando as conexões para os Secundários. Se conecta nas máquinas Secundária, Secundária VIP, WF/WB/SCH/JOB, e Database.  
  • Máquina Secundária: De 1 a N, recebe as requisições da Primária para processamento. Não é recomendado instalar outros serviços. Elas podem ser escalonadas horizontalmente conforme a necessidade. Estas máquinas recebem conexões de usuário e processos.
  • Máquina Secundária VIP: Para cenários que necessitam de alta disponibilidade, pode ser definido uma VM das pré-desenhadas que não será desligada quando o consumo estiver abaixo de 10%. Neste cenário, é importante a configuração de um broker (balanceamento de carga) exclusivo após a escolha do blueprint.
  • Máquina WF/WB/SCH/JOB: Este servidor pode servir para Work Flow, WebService, Scheduler ou Jobs. 
  • Database: Recomendamos uma máquina específica dedicada ao banco de dados. 

Máquina TSS (SPED): Recomendamos que uma máquina específica seja dedicada ao TSS.

Clientes que utilizam dicionário no banco de dados não precisam utilizar Storage Pool ou LVM. Quanto maior o volume apresentado, melhor é o Disk Throughput na Azure.
Os testes na Azure utilizaram as maquinas Standard DS4 v2 com a linha de processadores Intel e distribuição de carga durante a avaliação, devido a arquitetura de baixo custo e à melhor perfomance apresentada até momento.

Para ambientes com C-Tree Server, recomendamos, além do Storage Pool (Windows) ou LVM (Linux), os seguintes vm´s

- Máquina Primária: VM Standard DSv2, com C-Tree, App Broker, App Broker VIP, App Compilação, App Balance (monitor), License Server, DBAccess SPOFless, DBAccess Secundário; Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a protheus_data, binários e repositório de dados do Protheus, recomendamos o disco Premium SSD, considerando a combinação do storage pool (Windows)/LVM (Linux). Leve em consideração o cálculo do throughput provisionado, conforme:

Quantidade

Disk tier

TamanhoIOPS provisionadoThroughput provisionado
4 x 128GiBP10512 GiB2000400 MB/s
4 x 256GiBP151024 GiB4400500 MB/s
4 x 512GiBP202048 GiB9200600 MB/s

- Máquina(s) Secundária(s): VM Standard DSv2, com Boundserver, AppServer Secundários, DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux); Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD.

- Máquina VM WebService/Job/Workflow: VM Standard DSv2, com Protheus WEBRest, Protheus WEBService, Protheus Workflow, Protheus JOB, Protheus Schedule, Protheus Mobile, e um DBAccess em modo Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD.

- Máquina VM TSS: VM Standard DSv2, com Broker (balance), Appserver Secundários e DBAccess (Single). Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD.

Clientes que utilizam dicionário no banco de dados não precisam utilizar Storage Pool ou LVM. Quanto maior o volume apresentado, melhor é o Disk Throughput na Azure.
Os testes na Azure utilizaram as maquinas Standard DS4 v2 com a linha de processadores Intel e distribuição de carga durante a avaliação, devido a arquitetura de baixo custo e à melhor perfomance apresentada até momento.

Não há necessidade do Storage Pool (Windows) ou LVM (Linux) para cenários com o dicionário no banco de dados, pois o workload está direcionado para o banco de dados.

Para ambientes com Dicionário no banco recomendamos os seguintes VM's (lembrando que, quanto maior o tamanho do disco, mais performático será o throughput): 

- Máquina(s) Secundária(s): VM Standard DSv2, com AppServer Secundários e DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD.Máquina Primária: VM Standard DSv2, com C-Tree, App Broker, App Broker VIP, App Compilação, App Balance (monitor), License Server, DBAccess SPOFless, DBAccess Secundário; Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 

- Máquina VM WebService/Job/Workflow: VM Standard DSv2, com Protheus WEBRest, Protheus WEBService, Protheus Workflow, Protheus JOB, Protheus Schedule, Protheus Mobile, e um DBAccess em modo Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD.

- Máquina VM TSS: VM Standard DSv2, com Broker (balance), Appserver Secundários e DBAccess (Single). Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD.

Clientes que utilizam dicionário no banco de dados não precisam utilizar Storage Pool ou LVM. Quanto maior o volume apresentado, melhor é o Disk Throughput na Azure.
Os testes na Azure utilizaram as maquinas Standard DS4 v2 com a linha de processadores Intel e distribuição de carga durante a avaliação, devido a arquitetura de baixo custo e à melhor perfomance apresentada até momento.

Os Proximity Placement Groups realizam o agrupamento lógico de recursos, e aproximam o posicionamento destes de maneira a diminuir a latência de rede e, consequentemente, reduzindo o risco de erros ocasionados por falhas relacionadas à distribuição de carga de trabalho. Este recurso está disponível para todas as regiões de nuvem pública da Azure (excluindo a India central), e é possível mover recursos já existentes para um Proximity Placement Group ou para fora deste.

Recomendamos, para o Protheus, o uso deste recurso, por diminuir a latência de rede entre os recursos.

Consulte a documentação da fabricante para mais informações sobre o recurso Proximity Placement Groups.

Você também pode consultar o anúncio de disponibilidade geral deste recurso e o post de apresentação do Proximity Placement Groups.

Atenção

Para minimizar a latência, escolha a região mais próxima à sua localização.


Para redes: visando segurança e melhores práticas, recomendamos trabalhar, no mínimo, com VNet para cada tipo de uso (Produção, Homologação e Desenvolvimento) e cada com duas subnets, sendo a primeira privada contendo as Appls e a segunda privada contendo as databases

Para segurança:

  • Use os grupos de segurança de rede (NSG) para permitir somente as portas necessárias (siga o modelo de least privileges para grupos e usuários)
  • Habilite MFA para usuários administradores
  • Use criptografia em trânsito e em armazenamento.

Para agrupamento de recursos:  

Produção

Aplicação

Database

Homologação

Aplicação

Database

Desenvolvimento

Aplicação

Database

Atenção

As portas exibidas foram utilizadas nos testes para homologação e são meramente sugestões. Não é obrigatório o uso de todas as portas determinadas neste documento; libere as portas que os serviços precisarão utilizar.

Tipo de ServiçosTCPWEB/HTTPWEB/HTTPsComentários
C-Tree Server5597

*Para clientes que utilizam dicionário em memória.
Broker10000


Boundserver5848 e 10200

*Para clientes que utilizam dicionário em memória.
Balance Monitor10100


License Server5555 e 22348020443
Lock Server (Linux)17000


DBAccess Primário7900


DBAccess Secundário7890


Instâncias Secundárias10001 ao 10999


Scheduler16000


Telnet12001 ao 12999


JOB13001 ao 13999


RPC/REST14001 ao 149998000 até 8999443 ao 4443
GravaBatch15001 ao 15999


Web Service/WorkFlow11001 ao 119998000 até 8999443 ao 4443

Para o funcionamento do Protheus será necessário que as portas dos serviços utilizados sejam liberadas no Network Security Group. Porém, não é obrigatória a liberação de todas as portas que estão descritas nesta tabela.

BoundServer/BoundClient

O AppServer BoundServer/BoundClient consome apenas memória, e pode ser utilizado apenas por clientes com C-Tree Server Enterprise. Para os clientes que já utilizam o dicionário no banco de dados, este recurso não é necessário.


Blueprints recomendadas de acordo com cada quantidade de usuários simultâneos

Não recomendamos VM´s maiores do que os listados para os servidores Secundários, sempre opte por escalonamento horizontal.

Atenção

Estas estimativas são referentes ao uso do produto (Protheus) padrão. Caso alterações sejam necessárias, o cliente pode fazer o scale-up/down (escalonamento vertical, adicionando recursos de processador e memória) ou o scale in/out (escalonamento horizontal, adicionando VMs secundárias).
As quantidades de usuários são referentes a usuários simultâneos acessando a aplicação. Threads em execução pelo Scheduler ou Jobs também são consideradas como usuários. 
Para os cenários que necessitam de uma Máquina secundária VIP é importante ter um serviço do Broker VIP exclusivo para este cenário após a escolha do Blueprint, conforme a sua demanda. Importante que este Broker VIP seja instalado na Máquina Primária (Gateway).

Nos cenários onde uma máquina não pode ser desligada, é possível utilizar uma máquina secundária VIP, que ficará disponível em períodos de baixo consumo de recursos.

Abaixo, sugerimos as VMs de cada máquina Secundária, de acordo com as quantidades de usuários.

  • Para até 32 usuários (ou até 60% de consumo de CPU): VM Standard DS2 v2, com 1 App Boundserver, 2 Appserver Secundários e 1 DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 
  • Para até 65 usuários (ou até 60% de consumo de CPU): VM Standard DS3 v2, com 1 App Boundserver, 2 Appserver Secundários e 1 DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 
  • Para até 130 usuários (ou até 60% de consumo de CPU): VM Standard DS4 v2, com 1 App Boundserver, 2 Appserver Secundários e 1 DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 
  • Para até 340 usuários (ou até 60% de consumo de CPU): VM Standard DS5 v2, com 1 App Boundserver, 2 Appserver Secundários e 1 DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 

  • Para até 40 usuários (ou até 60% de consumo de CPU): VM Standard DS2 v2, com 2 Appserver Secundários e 1 DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 
  • Para até 80 usuários (ou até 60% de consumo de CPU): VM Standard DS3 v2, com 2 Appserver Secundários e 1 DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 
  • Para até 180 usuários (ou até 60% de consumo de CPU): VM Standard DS4 v2, com 2 Appserver Secundários e 1 DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 
  • Para até 360 usuários (ou até 60% de consumo de CPU): VM Standard DS5 v2, com 2 Appserver Secundários e 1 DBAccess Secundário. Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 

Para ambientes que não terão as quantidades anteriores mencionadas de usuários simultâneos, recomendamos a mescla das máquinas recomendadas conforme sua necessidade, podendo variar entre VM Standard DS2v2, DS3v2 ou DS4v2, com AppServer Slaves, Boundserver e DBAccess Slave.  Para o sistema operacional, recomendamos o disco Standard SSD para a unidade C:/ (Windows) ou /.(root) (Linux). Para a unidade dos binários e repositório de dados do Protheus, recomendamos o disco Premium SSD. 

No exemplo abaixo, são definidas quatro VMs, com dois Appserver cada, e o exemplo para a configuração do Broker. Na seção [BALANCE_SMART_CLIENT_DESKTOP], as chaves REMOTE_SERVER_XX são referentes aos IPs de cada VM; estes endereços, portas e quantidades de usuários exibidos são meramente ilustrativos. 

O limite de processamento refere-se à quantidade que pode ser consumida sem atingir o limite de saturação. Neste cenário, o limite é considerado ao respeitar a quantidade de recursos estipulada ou utilizando até 60% de CPU.