Árvore de páginas

Nota:

Esta página foi revisada para considerar as configurações de server do TOTVS Fluig para a atualização 1.6.3 ou superiores.



Pré-requisitos


Para atualizar os parâmetros de configuração, deve-se obedecer aos seguintes pré-requisitos:

  • O usuário deve ser administrador da plataforma;
  • O usuário deve ter acesso aos arquivos de configuração da plataforma;
  • Possuir o NGINX na versão 1.20.1 ou superior instalado. Detalhes de instalação e configuração do NGINX estão disponíveis na documentação oficial;
  • Possuir a configuração de proxy reverso;
  • Possuir o nginx-sticky-module-ng (módulo externo), para implementar o comportamento de sticky sessions sem o uso do NGINX Plus. Esse procedimento só é necessário realizar na versão open-source do NGINX.

Atenção!

Antes de prosseguir com as instruções descritas nessa página, siga com atenção as instruções contidas na documentação Alta disponibilidade e Balanceamento de carga.


Considerações iniciais


A configuração de balanceamento de carga (load balance) é a forma mais simples de se obter distribuição de carga e algum nível de alta disponibilidade.

Importante!

Em ambientes com load balance, é muito importante manter todos os servidores com o horário sincronizado.

A grande desvantagem é a necessidade de afinidade de sessão, ou seja, uma vez que o usuário foi autenticado em uma instância, sempre será direcionado para a mesma instância. Nesse caso, se essa instância ficar indisponível, o usuário terá que se autenticar novamente na aplicação.


Instalando a primeira instância


Siga os procedimentos abaixo para realizar a instalação da primeira instância do Fluig em um ambiente load balance.



Criando uma segunda instância na mesma instalação


O Fluig permite executar uma segunda instância na mesma instalação, ou seja, sem a necessidade de instalar tudo novamente.


  • Abra o arquivo [diretório_instalação]/appserver/domain/configuration/host.xml em um editor de texto.
  • Localize a tag <servers>. Dentro dela existem tags chamadas <server>.
  • Adicione uma nova tag <server>, conforme o exemplo:
host.xml
<server auto-start="false" group="fluig" name="fluig2">
    <socket-bindings port-offset="150" socket-binding-group="full-sockets"/>
    <jvm name="default">
        <heap max-size="12g" size="4g"/>
        <jvm-options>
            <option value="-Dfile.encoding=utf8"/>
            <option value="-Djsse.enableSNIExtension=false"/>
            <option value="-XX:MaxMetaspaceSize=1024m"/>
            <option value="-Djavamelody.disabled=true"/>
        </jvm-options>
    </jvm>
</server>

É possível adicionar mais instâncias na mesma instalação. Basta replicar toda a seção <server> e tomar o cuidado de alterar, pelo menos, os atributos port-offset e name.

As instâncias que forem configuradas para não iniciar automaticamente (auto-start="false"), devem ser iniciadas manualmente utilizando a ferramenta jboss-cli, que se encontra em [diretório_instalação]/appserver/bin, com o comando abaixo, de acordo com o sistema operacional:

  • no Linux:

    Linux
    ./jboss-cli.sh --controller="<ip-da-maquina>:9990" --connect --command="/host=master/server-config=fluig2:start"
  • no Windows:

    Windows
    jboss-cli.bat --controller="<ip-da-maquina>:9990" --connect --command="/host=master/server-config=fluig2:start"

Onde <ip-da-maquina> é o endereço IP/hostname configurado no arquivo host.xml (localizado em [diretório_instalação]/appserver/domain/configuration), na seção:

<interface name="management">
    <inet-address value="192.168.2.3"/>
</interface>


Criando uma instância em outra máquina



  • Instale a aplicação pelo procedimento normal e siga as instruções até o procedimento antes de iniciar o servidor.


Configurando o balanceador


O Fluig homologa o NGINX com o upstream para fazer o balanceamento de carga.


  • Instale o servidor NGINX, versão 1.20.1 ou superior.


Ambiente HTTPS


Quando o Fluig estiver configurado em HTTPS, é necessário que as flags de segurança "Secure" e "HttpOnly" dos cookies estejam habilitadas na sessão. Para isso, siga a instrução abaixo:

    sticky name=SERVERID expires=1h path=/ domain=exemplo.com  httponly secure;