Siga com atenção antes as instruções descritas em Balanceamento de carga, alta disponibilidade e tolerância falha - cluster |
A configuração em Load Balance é a forma mais simples de se conseguir uma distribuição de carga e algum nível de alta disponibilidade.
A grande desvantagem é a necessidade de afinidade de sessão, ou seja, uma vez que o usuário logou acessando em uma instância, sempre será direcionado para a mesma instância (se essa instância cair, terá que logar novamente).
|
<socket-bindings port-offset="150" socket-binding-group="full-ha-sockets"/>
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:
|
<
simple
name
=
"java:global/wcm/globalDataDir"
value
=
"{pasta global}/wcmdir"
/>
猼慰瑳汹㵥昢湯慦業祬洺湯獯慰散㸢猼慰瑳汹㵥昢湯敷杩瑨戺汯㭤潣潬㩲㔣昴晦㭦慢正牧畯摮挭汯牯⌺晦晦晦∻☾瑬猻捯敫楢摮湩獧㰠猯慰㹮猼慰瑳汹㵥昢湯敷杩瑨戺汯㭤潣潬㩲㔣昴㕦㬴慢正牧畯摮挭汯牯⌺晦晦晦∻瀾牯景獦瑥⼼灳湡㰾灳湡猠祴敬∽潣潬㩲〣〰〰㬰慢正牧畯摮挭汯牯⌺晦晦晦∻㴾⼼灳湡㰾灳湡猠祴敬∽潦瑮眭楥桧㩴潢摬挻汯牯⌺晦㐵晦戻捡杫潲湵ⵤ潣潬㩲昣晦晦㭦㸢ㄢ〵㰢猯慰㹮猼慰瑳汹㵥昢湯敷杩瑨戺汯㭤潣潬㩲㔣昴晦㭦慢正牧畯摮挭汯牯⌺晦晦晦∻‾⼼灳湡㰾灳湡猠祴敬∽潦瑮眭楥桧㩴潢摬挻汯牯⌺㐵晦㐵戻捡杫潲湵ⵤ潣潬㩲昣晦晦㭦㸢潳正瑥戭湩楤杮札潲灵⼼灳湡㰾灳湡猠祴敬∽潣潬㩲〣〰〰㬰慢正牧畯摮挭汯牯⌺晦晦晦∻㴾⼼灳湡㰾灳湡猠祴敬∽潦瑮眭楥桧㩴潢摬挻汯牯⌺晦㐵晦戻捡杫潲湵ⵤ潣潬㩲昣晦晦㭦㸢昢汵慨猭捯敫獴㰢猯慰㹮猼慰瑳汹㵥昢湯敷杩瑨戺汯㭤潣潬㩲㔣昴晦㭦慢正牧畯摮挭汯牯⌺晦晦晦∻⼾朦㭴⼼灳湡㰾牢㰾猯慰㹮