Índice
Índice |
---|
maxLevel | 4 |
---|
outline | true |
---|
exclude | .*ndice |
---|
style | none |
---|
|
...
Siga os procedimentos abaixo para realizar a instalação da primeira instância da plataforma em um ambiente Load Balance.
Deck of Cards |
---|
|
Card |
---|
default | true |
---|
id | 1 |
---|
label | Passo 1 |
---|
|
- Faça uma instalação normal, conforme o Guia de instalação, mas não inicie os serviços da plataforma.
|
Card |
---|
|
- Abra em um editor de texto o arquivo [Instalação fluig]/appserver/domain/configuration/domain.xml e altere as seguintes configurações:
- Localize a propriedade de binding "java:global/wcm/globalDataDir" e altere-a informando o caminho da pasta compartilhada entre as instâncias;
Bloco de código |
---|
| <simple name="java:global/wcm/globalDataDir" value="GLOBAL_DATA_DIR/wcmdir"/> |
Bloco de código |
---|
| <subsystem xmlns="urn:com.totvs.technology.wcm:1.0" dir="GLOBAL_DATA_DIR/apps" refresh="15"/> |
|
Card |
---|
|
- Abra em um editor de texto o arquivo [Instalação fluig]/repository/wcmdir/config/configuration.properties e altere a seguinte configuração:
- Localize a chave "wcm/cacheServerAddress" e altere o valor com o endereço do servidor de cache configurado conforme recomendação.
|
Card |
---|
|
- Mova o conteúdo da pasta [Instalação fluig]/repository/wcmdir para a pasta GLOBAL_DATA_DIR/wcmdir
- Mova o conteúdo da pasta [Instalação fluig]/appserver/apps para a pasta GLOBAL_DATA_DIR/apps
|
Card |
---|
|
- Configure o fluig Indexer (Solr) para ser executado em servidor separado, conforme instruções aqui.
|
Card |
---|
|
- Inicie os serviços do cache, fluig_Indexer e fluig_RealTime e em seguida inicie o fluig.
- Acesse a plataforma com o usuário "wcmadmin", crie uma nova empresa (tenant) e realize as configurações necessárias.
- Derrube a plataforma e os serviços do fluig_RealTime, fluig_Indexer e do cache.
|
|
...
É possível executar uma segunda instância na mesma instalação, ou seja, sem a necessidade de instalar tudo novamente.
Deck of Cards |
---|
history | false |
---|
id | SecondInstance |
---|
|
Card |
---|
default | true |
---|
id | 1 |
---|
label | Passo 1 |
---|
|
- Abra em um editor de texto o arquivo [Instalação fluig]/appserver/domain/configuration/host.xml
- Dentro dela haverão tags chamadas <server>
- Adicione uma nova tag <server>, conforme exemplo:
Bloco de código |
---|
| <server auto-start="true" group="fluig" name="fluig2">
<socket-bindings port-offset="150" socket-binding-group="full-sockets"/>
<jvm name="default">
<heap max-size="4g" size="2g"/>
<jvm-options>
<option value="-Dfile.encoding=utf8"/>
<option value="-Djsse.enableSNIExtension=false"/>
<option value="-XX:MaxMetaspaceSize=512m"/>
<option value="-Djavamelody.disabled=true"/>
</jvm-options>
</jvm>
</server> |
|
Card |
---|
|
- Certifique-se que o atributo name contenha um valor que jamais será repetido em outra instância.
- A primeira instância sempre deverá se chamar "fluig1", enquanto as demais instâncias podem ter qualquer nome definido.
|
Card |
---|
|
- O atributo auto-start indica se a instância deve ser iniciada imediatamente quando a plataforma for iniciada. Se informado false, será preciso iniciá-la manualmente posteriormente usando o painel de controle do servidor de aplicação.
|
Card |
---|
|
- Caso desejar ou for necessário, altere o atributo port-offset da tag socket-bindings. Cada nova instância precisa de um valor diferente (múltiplos de 150 são uma boa indicação).
|
Card |
---|
|
- Ajuste as configurações de memória na tag heap.
|
|
...
Criando uma instância em outra máquina
Deck of Cards |
---|
history | false |
---|
id | ThirdInstance |
---|
|
Card |
---|
|
- Instale a aplicação pelo procedimento normal e siga as instruções até o procedimento antes de iniciar o servidor.
|
Card |
---|
|
- Abra em um editor de texto o arquivo [Instalação fluig]/appserver/domain/configuration/host.xml.
- Localize a tag <servers>.
- Dentro dela haverão tags chamadas <server>. Altere o atributo name dessas tags. O valor desse atributo precisa ser diferente em cada instância.
|
|
...
A plataforma homologa o Apache com o módulo mod_proxy para fazer o balanceamento de carga.
Deck of Cards |
---|
|
Card |
---|
default | true |
---|
id | 1 |
---|
label | Passo 1 |
---|
|
|
Card |
---|
|
- Configure o Apache para carregar os módulos necessários (comumente feito através do arquivo /etc/apache2/mods-enabled/mod_proxy.load), conforme abaixo.
Nota |
---|
A ordem de carregamento dos módulos é extremamente importante. |
Bloco de código |
---|
| LoadModule lbmethod_bybusyness_module /usr/lib/apache2/modules/mod_lbmethod_bybusyness.so
LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule slotmem_shm_module /usr/lib/apache2/modules/mod_slotmem_shm.so
LoadModule proxy_balancer_module /usr/lib/apache2/modules/mod_proxy_balancer.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so |
|
Card |
---|
|
- Habilite o mod_proxy (em geral isso é feito criando o arquivo /etc/apache2/sites-enabled/mod_proxy.conf).
Bloco de código |
---|
| <VirtualHost *:80>
ProxyRequests Off
ProxyPreserveHost On
<Proxy balancer://mycluster>
BalancerMember http://{ip servidor 1}:8080 route=fluig1
BalancerMember http://{ip servidor 1}:8230 route=fluig2
BalancerMember http://{ip servidor 2}:8230 route=fluig3
</Proxy>
<Location /balancer-manager>
SetHandler balancer-manager
Order Deny,Allow
Allow from all
</Location>
<Location />
Order allow,deny
Allow from all
</Location>
ProxyPass / balancer://mycluster/ stickysession=FLUIGCOOKIE nofailover=Off
ProxyPassReverse / balancer://mycluster/
</VirtualHost>
|
Aviso |
---|
| - Cada “BalancerMember” indica um servidor e deve apontar para o IP e porta corretos.
- Um cookie chamado “FLUIGCOOKIE” é criado para manter a afinidade da sessão. Sem o cookie, o procedimento não irá funcionar.
|
|
|