Mudanças entre as edições de "Requisitos Mínimos de um Servidor de Aplicação"
(40 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
Linha 8: | Linha 8: | ||
|- | |- | ||
|} | |} | ||
− | |||
== Instalação de Aplicações == | == Instalação de Aplicações == | ||
Linha 14: | Linha 13: | ||
'''- Configurações Mínimas de Hardware''' | '''- Configurações Mínimas de Hardware''' | ||
− | + | Sistema operacional: Windows Server Standard 2012 ou 2016 (Host 1, Host 2 e Host 3). | |
− | Como nossas aplicações são baseadas em Java, todas as aplicações utilizam mais recursos de memória do que I/O ou CPU, porém, é importante ressaltar que quando não houver mais memória para determinada aplicação, o mesmo poderá utilizar os recursos da CPU ou encerrar forçadamente exibindo o seguinte alerta : Java.lang.OutOfMemoryError: Java heap space como um de seus erros por falta de recursos. | + | SQL Server Standard 2014 ou Superior com nível com compatibilidade na base 120. Sobre o SQL Server, o mesmo utiliza alto nível de memória, CPU e I/O. Como recomendação, da própria Microsoft e fóruns, esta instância deve ser isolada de conflito de recursos com outras aplicações. |
+ | |||
+ | Como nossas aplicações são baseadas em Java, todas as aplicações utilizam mais recursos de memória do que I/O ou CPU, porém, é importante ressaltar que quando não houver mais memória para determinada aplicação, o mesmo poderá utilizar os recursos da CPU ou encerrar forçadamente exibindo o seguinte alerta : '''''Java.lang.OutOfMemoryError: Java heap space''''' como um de seus erros por falta de recursos. | ||
Para as referentes aplicações abaixo, segue o padrão médio de memória que irá utilizar: | Para as referentes aplicações abaixo, segue o padrão médio de memória que irá utilizar: | ||
+ | |||
+ | '''Host 1:''' | ||
+ | * EVO: 4Gb | ||
+ | |||
+ | '''Hosts 2:''' | ||
+ | * Apache: 10Mb | ||
+ | * ERP Importer: 2Gb | ||
+ | * ERP Integrator: 2Gb | ||
+ | * ReportGenerator: 1.5Gb | ||
+ | * TamoJunto: 2Gb | ||
+ | * GSOlad: 1.5Gb | ||
+ | |||
+ | '''Host 3:''' | ||
+ | * SQL Server: Alocação variável conforme uso das requisições. | ||
+ | |||
+ | Dependendo do seu nível de uso diário, essa memória pode ser mais alocada ou menos alocada temporariamente. No momento inicial é impossível prever a real memória utilizada por determinada aplicação. | ||
+ | Para o Java, utilizações acima de 4Gb são instáveis e não alocados por menos de 4Gb. O ambiente pode ter mais memória disponível para uso, mas jamais irá utilizar por premissas do próprio Java. | ||
+ | Referente ao uso de CPU, conforme informado acima, as aplicações farão inicialmente mais uso de memória e após isso irá consumir a CPU para manter seu funcionamento. Para este ambiente em específico, são utilizados 8x núcleos de CPU podendo ser necessário ou não upgrade conforme o uso. | ||
+ | Referente ao uso de I/O, como as aplicações não escrevem tanto, discos menos volumosos atendem a solução. Para este ambiente em específico, 500Gb de espaço em SSD (Solid State Drive) podendo ser necessário ou não upgrade conforme o uso. | ||
+ | |||
+ | '''- Centralização de Requisições''' | ||
+ | |||
+ | Todas as requisições feitas dos clientes para as aplicações serão gerenciadas por um Apache que deverá ser instalado e configurado dentro do mesmo host (Host 2) que estará as aplicações auto embarcadas. | ||
+ | Via Prompt, dentro do diretório do Apache, execute o seguinte comando: | ||
+ | |||
+ | '''''httpd -k install''''' | ||
+ | |||
+ | Com isso, o Apache estará acessível para iniciar como um serviço. | ||
+ | O projeto repassado terá as configurações necessárias para o envio das requisições para as referentes aplicações. Para maiores informações, consultar as documentações do Apache em https://www.apache.org/. | ||
+ | |||
+ | '''- Pré-requisito de Funcionamento de Aplicações''' | ||
+ | |||
+ | Como nossas aplicações rodam em Java é OBRIGATÓRIO que a aplicação Java JDK (Java SE Development Kit) esteja instalada no servidor. | ||
+ | |||
+ | '''IMPORTANTE:'''Se o Java SE JDK for atualizado, as variáveis nas aplicações precisam ser atualizadas. | ||
+ | |||
+ | É obrigatório que a conexão entre o servidor das aplicações (Host 1 e Host 2) e o banco de dados exista para que as aplicações funcionem corretamente. | ||
+ | |||
+ | '''- Instalação do Tomcat 9 (Host 1)''' | ||
+ | |||
+ | Para comportar o portal EVO, é necessário a instalação do Apache Tomcat, onde seu setup deverá ser seguido, como será mostrado abaixo: | ||
+ | |||
+ | [[Arquivo:Configuracao - instalacao - aplicacao - palusa1.png|centro]] | ||
+ | |||
+ | Aceite os termos de uso. | ||
+ | |||
+ | [[Arquivo:Configuracao - instalacao - aplicacao - palusa2.png|centro]] | ||
+ | |||
+ | Selecione as features a serem usadas | ||
+ | |||
+ | [[Arquivo:Configuracao - instalacao - aplicacao - palusa3.png|centro]] | ||
+ | |||
+ | Informe as referentes portas de uso do Tomcat e insira uma usuário e senha de acesso ao gerenciamento do sistema conforme imagem abaixo | ||
+ | |||
+ | [[Arquivo:Configuracao - instalacao - aplicacao - palusa4.png|centro]] | ||
+ | |||
+ | Informe onde exatamente está o Java SE JDK instalado neste Host. Em alguns casos, o Apache Tomcat já localiza e auto configura: | ||
+ | |||
+ | [[Arquivo:Configuracao - instalacao - aplicacao - palusa5.png|centro]] | ||
+ | |||
+ | Informe o diretório onde o Apache Tomcat será instalado e clique em ‘Install’. Pode ser de sua escolha. | ||
+ | |||
+ | [[Arquivo:Configuracao - instalacao - aplicacao - palusa6.png|centro]] | ||
+ | |||
+ | Após a instalação do Apache Tomcat, é necessário inserir a aplicação EVO dentro do container. Para isso, basta inserir o arquivo ROOT.war fornecido pela Geosales dentro do diretório webapps. Após isso, o Tomcat irá fazer seu autodeploy da aplicação e assim subir o serviço. Para maiores informações, consultar os logs dentro da pasta logs. | ||
+ | |||
+ | '''Execução de Aplicações (Host 2)''' | ||
+ | |||
+ | Algumas aplicações GeoSales são auto embarcadas sendo necessário então somente da aplicação em Java e um script de inicialização da aplicação em si. Todas as aplicações abaixo terão uma pasta própria onde estarão os arquivos necessários para seu funcionamento: | ||
+ | |||
+ | * ERP Importer | ||
+ | * ERP Integrator | ||
+ | * ReportGenerator | ||
+ | * TamoJunto | ||
+ | * GSOlad | ||
+ | |||
+ | Não é necessário fazer nenhuma instalação. Basta executar o startup da referente aplicação que o mesmo estará disponível para uso. | ||
+ | Vale ressaltar que os startups devem ter um atalho inserido no diretório do Windows onde serão executados toda vez que a máquina for reiniciada e logada com o usuário novamente: | ||
+ | |||
+ | [[Arquivo:Configuracao - instalacao - aplicacao - palusa7.png]] | ||
+ | |||
+ | |||
+ | '''Configurações de host''' | ||
+ | |||
+ | O servidor que irá comportar as aplicações precisa ter valores em suas variáveis de ambiente pois cada aplicação faz uso de uma variável diferente. Os valores mais comuns a serem usados serão: | ||
+ | |||
+ | '''Host 1:''' | ||
+ | # SPRING_PROFILES_ACTIVE=prod | ||
+ | # HOST_BASE=”IP do banco de dados” | ||
+ | # BASE_USERNAME=”usuário de banco que tenha permissão para manipular dados e executar triggers e procedures” | ||
+ | # BASE_PASSWORD=”senha do usuário setado na variável BASE_USERNAME” | ||
+ | # AWS_ACCESS_KEY_S3=AKIAIJEQFJQPIUYE7MNQ | ||
+ | # AWS_SECRET_KEY_S3=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 | ||
+ | # PRIVATE_TOKEN=TVGy-JunWkJZFBDAqoDe | ||
+ | # URL_RELATORIO_SERVICE_PROD=”IP do host2”/report-generator | ||
+ | # URL_PASSWORD_RECOVERY_PROD=”IP do host2”/passwordrecovery | ||
+ | # URL_CNPJ_CPF_SERVICE_PROD=”IP do host2”/consultacpfcnpj/ | ||
+ | |||
+ | '''Host 2:''' | ||
+ | # SPRING_PROFILES_ACTIVE=prod | ||
+ | # HOST_BASE=”IP do banco de dados” | ||
+ | # BASE_USERNAME=”usuário de banco que tenha permissão para manipular dados e executar triggers e procedures” | ||
+ | # BASE_PASSWORD=”senha do usuário setado na variável BASE_USERNAME” | ||
+ | |||
+ | Estes valores podem ser configurados em: | ||
+ | |||
+ | [[Arquivo:Configuracao - instalacao - aplicacao - palusa8.png|centro]] | ||
+ | |||
+ | |||
+ | [[Arquivo:Configuracao - instalacao - aplicacao - palusa9.png|centro]] |
Edição atual tal como às 16h46min de 16 de março de 2020
Histórico de Alterações
Data | Quem | Comentários |
---|---|---|
16/03/2020 | Jardel Sampaio | Criação do Documento |
Instalação de Aplicações
- Configurações Mínimas de Hardware
Sistema operacional: Windows Server Standard 2012 ou 2016 (Host 1, Host 2 e Host 3). SQL Server Standard 2014 ou Superior com nível com compatibilidade na base 120. Sobre o SQL Server, o mesmo utiliza alto nível de memória, CPU e I/O. Como recomendação, da própria Microsoft e fóruns, esta instância deve ser isolada de conflito de recursos com outras aplicações.
Como nossas aplicações são baseadas em Java, todas as aplicações utilizam mais recursos de memória do que I/O ou CPU, porém, é importante ressaltar que quando não houver mais memória para determinada aplicação, o mesmo poderá utilizar os recursos da CPU ou encerrar forçadamente exibindo o seguinte alerta : Java.lang.OutOfMemoryError: Java heap space como um de seus erros por falta de recursos. Para as referentes aplicações abaixo, segue o padrão médio de memória que irá utilizar:
Host 1:
- EVO: 4Gb
Hosts 2:
- Apache: 10Mb
- ERP Importer: 2Gb
- ERP Integrator: 2Gb
- ReportGenerator: 1.5Gb
- TamoJunto: 2Gb
- GSOlad: 1.5Gb
Host 3:
- SQL Server: Alocação variável conforme uso das requisições.
Dependendo do seu nível de uso diário, essa memória pode ser mais alocada ou menos alocada temporariamente. No momento inicial é impossível prever a real memória utilizada por determinada aplicação. Para o Java, utilizações acima de 4Gb são instáveis e não alocados por menos de 4Gb. O ambiente pode ter mais memória disponível para uso, mas jamais irá utilizar por premissas do próprio Java. Referente ao uso de CPU, conforme informado acima, as aplicações farão inicialmente mais uso de memória e após isso irá consumir a CPU para manter seu funcionamento. Para este ambiente em específico, são utilizados 8x núcleos de CPU podendo ser necessário ou não upgrade conforme o uso. Referente ao uso de I/O, como as aplicações não escrevem tanto, discos menos volumosos atendem a solução. Para este ambiente em específico, 500Gb de espaço em SSD (Solid State Drive) podendo ser necessário ou não upgrade conforme o uso.
- Centralização de Requisições
Todas as requisições feitas dos clientes para as aplicações serão gerenciadas por um Apache que deverá ser instalado e configurado dentro do mesmo host (Host 2) que estará as aplicações auto embarcadas. Via Prompt, dentro do diretório do Apache, execute o seguinte comando:
httpd -k install
Com isso, o Apache estará acessível para iniciar como um serviço. O projeto repassado terá as configurações necessárias para o envio das requisições para as referentes aplicações. Para maiores informações, consultar as documentações do Apache em https://www.apache.org/.
- Pré-requisito de Funcionamento de Aplicações
Como nossas aplicações rodam em Java é OBRIGATÓRIO que a aplicação Java JDK (Java SE Development Kit) esteja instalada no servidor.
IMPORTANTE:Se o Java SE JDK for atualizado, as variáveis nas aplicações precisam ser atualizadas.
É obrigatório que a conexão entre o servidor das aplicações (Host 1 e Host 2) e o banco de dados exista para que as aplicações funcionem corretamente.
- Instalação do Tomcat 9 (Host 1)
Para comportar o portal EVO, é necessário a instalação do Apache Tomcat, onde seu setup deverá ser seguido, como será mostrado abaixo:
Aceite os termos de uso.
Selecione as features a serem usadas
Informe as referentes portas de uso do Tomcat e insira uma usuário e senha de acesso ao gerenciamento do sistema conforme imagem abaixo
Informe onde exatamente está o Java SE JDK instalado neste Host. Em alguns casos, o Apache Tomcat já localiza e auto configura:
Informe o diretório onde o Apache Tomcat será instalado e clique em ‘Install’. Pode ser de sua escolha.
Após a instalação do Apache Tomcat, é necessário inserir a aplicação EVO dentro do container. Para isso, basta inserir o arquivo ROOT.war fornecido pela Geosales dentro do diretório webapps. Após isso, o Tomcat irá fazer seu autodeploy da aplicação e assim subir o serviço. Para maiores informações, consultar os logs dentro da pasta logs.
Execução de Aplicações (Host 2)
Algumas aplicações GeoSales são auto embarcadas sendo necessário então somente da aplicação em Java e um script de inicialização da aplicação em si. Todas as aplicações abaixo terão uma pasta própria onde estarão os arquivos necessários para seu funcionamento:
- ERP Importer
- ERP Integrator
- ReportGenerator
- TamoJunto
- GSOlad
Não é necessário fazer nenhuma instalação. Basta executar o startup da referente aplicação que o mesmo estará disponível para uso. Vale ressaltar que os startups devem ter um atalho inserido no diretório do Windows onde serão executados toda vez que a máquina for reiniciada e logada com o usuário novamente:
Configurações de host
O servidor que irá comportar as aplicações precisa ter valores em suas variáveis de ambiente pois cada aplicação faz uso de uma variável diferente. Os valores mais comuns a serem usados serão:
Host 1:
- SPRING_PROFILES_ACTIVE=prod
- HOST_BASE=”IP do banco de dados”
- BASE_USERNAME=”usuário de banco que tenha permissão para manipular dados e executar triggers e procedures”
- BASE_PASSWORD=”senha do usuário setado na variável BASE_USERNAME”
- AWS_ACCESS_KEY_S3=AKIAIJEQFJQPIUYE7MNQ
- AWS_SECRET_KEY_S3=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
- PRIVATE_TOKEN=TVGy-JunWkJZFBDAqoDe
- URL_RELATORIO_SERVICE_PROD=”IP do host2”/report-generator
- URL_PASSWORD_RECOVERY_PROD=”IP do host2”/passwordrecovery
- URL_CNPJ_CPF_SERVICE_PROD=”IP do host2”/consultacpfcnpj/
Host 2:
- SPRING_PROFILES_ACTIVE=prod
- HOST_BASE=”IP do banco de dados”
- BASE_USERNAME=”usuário de banco que tenha permissão para manipular dados e executar triggers e procedures”
- BASE_PASSWORD=”senha do usuário setado na variável BASE_USERNAME”
Estes valores podem ser configurados em: