Skip to content

Minha intenção é implementar a automação da infra do TOTVS RM.

Notifications You must be signed in to change notification settings

personrcunha/totvsrmappmesh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

personcunha/totvsrmappmesh

Instalação do TOTVS RM com Arquitetura de Operação na Nuvem

AppMesh para o TOTVS

Seria interessante usar as ferramentas da Hashicorp para prover conectividade segurança e orquestração da carga de trabalho das aplicações TOTVS.

Consul

  • Usar o recurso de Key Value database para armazenar as configurações e fazer uma central de configurações.

  • Usar o consul register para fazer o registros do serviços no catalogo de serviços.

  • usar o consul connect para restringir o fluxo de conectividade das aplicações, ex.: o banco apenas é acessado pelas aplicações APPSERVER e PORTALRM, bem como alguma ferramenta para rodar consultas podendo ser outro container com SQLPAD ou DREMIO para bigdata.

Consultemplate

Usar para renderizar os arquivos a serem usados pelo orquestrador Nomad, como artefato no template ao rodar o container das aplicações.

Nomad

Usar para orquestrar as cargas de trabalho das aplicações relativas a sustentação do ambiente dos ERP's TOTVS.

Vault

Usar este para gerir os certificados usados nas aplicações e dar acesso ao banco para as aplicações que necessitarem.

Terraform

Usado para provisionar a infra necessária para que os serviços sejam instanciados.

Fazer módulos que permitam o deploy de pelo menos: Vagrant, AWS, Azure e GCP.

Configurar o WebAPP

Os serviços protheus poder ser disponibilizados via web

O broker pode consultar o Catalogo de serviços do consul para renderizar as rotas: Brower Webapp

Implementação do Licence Server da TOTVS

Documentação da TOTVS - Instalação Licence Server Virtual

Tomar cuidado pois o licence server é um SPOF - PONTO UNICO DE FALHA

Guia de Gestão de Licenças do Portal TOTVS

No RM TOTVS configura-se o Licence server aqui:

Porém: no caso do appmesh deve-se usar o nome do serviço registrado no catalogo do consul, testar nome de porta também.

É possível que precise ser configurado

Usando a imagem:

  • Na pasta files deve ter um arquivo com as informações do contrato de Licença.

Compose

Há outro serviço que pode ser implantado em container pois pode ser agrupado ao de licença é o SmartClient que é em Java Tomcatch

Documentação do SmartClient

Smart Client Configuração WEB

PORTABILIDADE

Atentar quanto a portabilidade

Portal TOTVS RM

MS SQL Dockerizado

A minha maior duvida fica com relação ao licenciamento, entendo que cada container é encarado como uma máquina virtual na questão de licenciamento (DUVIDA!).

OBS: docs para imagem tomcat

Tutoria Docker TOMCAT

Para montar a imagem usa-se o comando: docker build -t=personcunha/totvsrmappmesh .

Configurações NOMAD

Como o portal é .Net e roda no windows podería-se usar o nomad com o driver do IIS para orquestrar os apps e catalogar no consul roteando com traefik para os endpoints terem https por padrão.

Driver IIS para o portal o S.O. Precisa ser Windows Server 2016

Agent

plugin "win_iis" {
client {
    enabled = true
    stats_interval = "30s"
}
}

Task

task "iis-test" {
driver = "win_iis"

config {
    path = "C:\\inetpub\\wwwroot"
    apppool_identity {
    identity="SpecificUser"
    username="vagrant"
    password="vagrant"
    }
}
}


Artefato MSI do portal

Powershell para instalar silenciosamente

buscar configuração do Consul

Implementar o serviço de Cache centralizado para o ERP usando redis

TDN - Documentação dos detalhes de implantação Outra documentacao mesmo assunto

TODO - Alterar para atender com Nomad usando driver docker.

RM.Host.Service.exe.config

Consul/Nomad Template pra renderizar os arquivos de configuração buscando dados da configuração no Key/Value do Consul

Portas de Serviços

Como Expor as Portas

Habilitar REST

About

Minha intenção é implementar a automação da infra do TOTVS RM.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published