Esta página foi revisada para considerar as novas configurações de server do fluig para a atualização 1.5.6. Caso possua uma atualização anterior do fluig acesse: ARQ 019 - Fluig em Load Balance com Apache mod_proxy em Linux. |
Antes de começar a instalação, é preciso estar com o ambiente preparado. Faça o seguinte:
Para efeitos de simplificação, esse tutorial irá considerar que: o servidor Realtime a ser usado será o instalado nesse nó; a instalação será feita na pasta padrão (“/opt/fluig”).
Em “<system-properties>”, adicione uma nova propriedade:
<property name="UseJK" value="true"/> |
Altere o valor da propriedade de binding “wcm/globalDataDir” para apontar para a pasta compartilhada entre as instâncias:
<simple name="java:global/wcm/globalDataDir" value="{pasta global}"/> |
Ainda no sysbsystem “jboss:domain:web” adicionar o conector AJP, logo abaixo do conector http:
<connector name="ajp" protocol="AJP/1.3" scheme="http" socket-binding="ajp" enabled="true"/> |
Na pasta “/opt/fluig/jboss/bin”, crie o script “node1.sh”. Em “ip-do-servidor” coloque o endereço IP do servidor onde o Fluig está rodando;
#!/bin/sh ./standalone.sh -c standalone.xml -b {ip-do-servidor} -Djboss.server.base.dir=../standalone-node1 -Djboss.node.name=node1 -Djboss.socket.binding.port-offset=100 |
Inicie o primeiro nó pelo script “node1.sh”:
./node1.sh |
Na pasta “/opt/fluig/jboss/bin”, crie o script “node2.sh”. Em “ip-do-servidor” coloque o endereço IP do servidor onde o Fluig está rodando.
#!/bin/sh ./standalone.sh -c standalone.xml -b {ip-do-servidor} -Djboss.server.base.dir=../standalone-node2 -Djboss.node.name=node2 -Djboss.socket.binding.port-offset=200 |
Em “<system-properties>”, adicione uma nova propriedade:
<property name="UseJK" value="true"/> |
Altere o valor da propriedade de binding “wcm/globalDataDir” para apontar para a pasta compartilhada entre as instâncias:
<simple name="java:global/wcm/globalDataDir" value="{pasta global}"/> |
Ainda no sysbsystem “jboss:domain:web” adicionar o conector AJP, logo abaixo do conector http:
<connector name="ajp" protocol="AJP/1.3" scheme="http" socket-binding="ajp" enabled="true"/> |
Na pasta “/opt/fluig/jboss/bin”, crie o script “node3.sh”. Em “ip-do-servidor” coloque o endereço IP do servidor onde o Fluig está rodando
#!/bin/sh ./standalone.sh -c standalone.xml -b {ip-do-servidor} -Djboss.server.base.dir=../standalone-node3 -Djboss.node.name=node3 |
Certifique-se que a pasta "/app/fluig/jboss/apps" seja a mesma pasta compartilhada utilizada pelos node1 e node2.
Inicie o primeiro nó pelo script “node3.sh”:
./node3.sh |
Abra o arquivo httpd.conf e adicione o seguinte código:
Header add Set-Cookie "FLUIGCOOKIE=%{UNIQUE_ID}e.%{BALANCER_WORKER_ROUTE}e; path=/" env=!VARCOOKIE <Proxy balancer://mycluster> Order deny,allow Allow from all BalancerMember http://{ip-servidor-1}:8180 route=node1 BalancerMember http://{ip-servidor-1}:8280 route=node2 BalancerMember http://{ip-servidor-2}:8080 route=node3 ProxySet stickysession=FLUIGCOOKIE </Proxy> <VirtualHost *:80> ProxyPreserveHost On ProxyPass / balancer://mycluster/ stickysession=FLUIGCOOKIE nofailover=Off DocumentRoot /var/www <Directory /var/www> Options -Indexes Order allow,deny Allow from all </Directory> </VirtualHost> |
O que é importante entender aqui:
Altere a tag abaixo no arquivo $FLUIG_HOME/jboss/standalone/configuration/standalone.xml de cada servidor do Fluig para: <subsystem xmlns="urn:jboss:domain:web:1.5" default-virtual-server="default-host" instance-id="${jboss.node.name:fluignd2}" native="false"> Onde:
|