Balanceamento de Carga no JBoss AS 6.1 – Parte 2 ( Final )

Publicado em 14 14America/Sao_Paulo fevereiro 14America/Sao_Paulo 2012. Filed under: Java, JBoss AS 6 | Tags:, , |

Mod Cluster  é um balanceador de carga HTTP,  mas diferente do mod_jk, o mod_cluster se baseia na carga da aplicação para distribuir as requisições. Vamos utilizar o Mod Cluster 1.1.3.

O primeiro passo é baixar os binários para o sistema operacional que será utilizado. Para isso execute o comando abaixo:

   wget http://downloads.jboss.org/mod_cluster//1.1.3.Final/mod_cluster-1.1.3.Final-linux2-x64-ssl.tar.gz
   wget mod_cluster-1.1.3.Final-linux2-x64-ssl.tar.gz

Copie os arquivos  *.so, para o diretório /etc/httpd/modules :

  • mod_slotmem.so
  • mod_manager.so
  • mod_proxy_cluster.so
  • mod_advertise.so

 cp /opt/opt/jboss/httpd/lib/httpd/modules/mod_slotmem.so /etc/httpd/modules/
 cp /opt/opt/jboss/httpd/lib/httpd/modules/mod_manager.so /etc/httpd/modules/
 cp /opt/opt/jboss/httpd/lib/httpd/modules/mod_proxy_cluster.so /etc/httpd/modules/
 cp /opt/opt/jboss/httpd/lib/httpd/modules/mod_advertise.so /etc/httpd/modules/

Edite o arquivo httpd.conf, e insira as linhas abaixo:

LoadModule slotmem_module modules/mod_slotmem.so
LoadModule manager_module modules/mod_manager.so
LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
LoadModule advertise_module modules/mod_advertise.so
<VirtualHost *:80>
<Directory />
  Order deny,allow
  Allow from all
</Directory>
<Location /mod_cluster_manager>
  SetHandler mod_cluster-manager
  Order deny,allow
  Allow from all
</Location>
  KeepAliveTimeout 60
  MaxKeepAliveRequests 0
  ManagerBalancerName testcluster
  AdvertiseFrequency 5
</VirtualHost>

Comente a linha LoadModule proxy_balancer_module modules/mod_proxy_balancer.so ,  para não ocorrer um conflito com LoadModule proxy_cluster_module modules/mod_proxy_cluster.so.
Incie o apache e acesse a url : http://ip/mod_cluster_manager , você deverá ver algo semelhante a imagem abaixo:
  • Mod Cluster Manager
Agora no JBoss AS 6.1, crie um novo profile , para ser utilizado no balanceamento:
  cd /opt/jboss-6.1.0.Final/server/
  cp -Rap all instance01

Para habilitar o profile instance01, edite o arquivo :
    vim /opt/jboss-6.1.0.Final/server/instance01/deploy/mod_cluster.sar/META-INF/mod_cluster-jboss-beans.xml

Altere a seguinte linha conforme abaixo:
     <property name="advertise">${jboss.mod_cluster.advertise.enabled:true}</property></div>

Outra forma é acrecentando o  parâmetro a linha de execução:
   -Djboss.mod_cluster.advertise.enabled=true

Edite o arqui server.xml :
  vim jboss-6.1.0.Final/server/instance01/deploy/jbossweb.sar/server.xml

Adicione o parâmetro para o JvmRoute :
 <Engine name="jboss.web" defaultHost="localhost" jvmRoute="${jboss.jvmRoute}">

Para finalizar, crei uma nova instância:
   cp -Rap instance01 instance02

Agora inicie as duas instâncias, utilizando os comandos abaixo:

./run.sh -b 0.0.0.0 -g mycluster -c instance01 -Djboss.service.binding.set=ports-default -Djboss.jvmRoute="instance01"  -Djboss.messaging.ServerPeerID=1

 ./run.sh -b 0.0.0.0 -g mycluster -c instance02 -Djboss.service.binding.set=ports-01 -Djboss.jvmRoute="instance02"  -Djboss.messaging.ServerPeerID=2

Acesse novamente http://ip/mod_cluster_manager ,  você deverá ver as instâncias que acabamos de inciar:
  • Mod Cluster Manager / Instances
Baixe o Java Bundles do Mod Cluster. Vamos utilizar as aplicações de demo, para realizar alguns testes:
  wget http://downloads.jboss.org/mod_cluster//1.1.3.Final/mod_cluster-1.1.3.Final-bin.tar.gz</div>
  tar -xvzf mod_cluster-1.1.3.Final-bin.tar.gz

Faça  o deploy da aplicação load-demo.war , na pasta farm de instance01 para que seja replicado para instance02.
   cp demo/server/load-demo.war /opt/jboss-6.1.0.Final/server/instance01/farm/

Veja que a aplicação já está disponível e pronto para os testes:
  • Mod Cluster Manager / Instances / Deploy
Agore execute o client, e divirta-se a vontade.
cd demo/client
./run-demo.sh

  • Client Demo – Client Controll
  • Client Demo – Server Load Controll
  • Client Demo – Request Balancing
  • Client Demo – Sesssion Balancing
Espero que tenha ajudado :)
Fonte: http://www.jboss.org/mod_cluster/

Ler Post Completo | Faça um comentário ( Nada até agora )

Recentemente, em Learning JBoss...

Utilizando LDAP Login Module no JBoss AS 7.1

Publicado em 12 12America/Sao_Paulo fevereiro 12America/Sao_Paulo 2012. Filed under: Java, JBoss AS 7 | Tags:, |

Qual JBoss Escolher?

Publicado em 12 12America/Sao_Paulo fevereiro 12America/Sao_Paulo 2012. Filed under: JBoss AS 5, JBoss AS 6, JBoss AS 7 | Tags: |

Café com Java 2012

Publicado em 11 11America/Sao_Paulo fevereiro 11America/Sao_Paulo 2012. Filed under: Diversos | Tags: |

Configurando Proxy Reverso Utilizando Nginx 1.0 / JBoss AS 7.1

Publicado em 3 03America/Sao_Paulo fevereiro 03America/Sao_Paulo 2012. Filed under: JBoss AS 7, Nginx | Tags:, |

Habilitando Log HTTP ( Request , Reponse ) no JBoss AS 5.1

Publicado em 31 31America/Sao_Paulo janeiro 31America/Sao_Paulo 2012. Filed under: Java, JBoss AS 5 | Tags:, , , |

JBoss Certified Application Administrator (JBCAA) – Parte 2

Publicado em 29 29America/Sao_Paulo janeiro 29America/Sao_Paulo 2012. Filed under: Diversos, Java, JBCAA, JBoss AS 5 | Tags:, |

Cluster de Servidores Standalone no JBoss AS 7.1 – Parte 1

Publicado em 29 29America/Sao_Paulo janeiro 29America/Sao_Paulo 2012. Filed under: Java, JBoss AS 7 | Tags:, , , |

Implantando Sua Aplicação Web No Contexto Raiz no JBoss AS 7.1

Publicado em 28 28America/Sao_Paulo janeiro 28America/Sao_Paulo 2012. Filed under: Java, JBoss AS 7 | Tags:, , , |

Salvando o Log no Banco de Dados no JBoss AS 7.1

Publicado em 28 28America/Sao_Paulo janeiro 28America/Sao_Paulo 2012. Filed under: Java, JBoss AS 7 | Tags:, , , |

Comandos Úteis no CLI utilizando o JBoss AS 7.1

Publicado em 27 27America/Sao_Paulo janeiro 27America/Sao_Paulo 2012. Filed under: Java, JBoss AS 7 | Tags:, |

Gostou deste aqui?
Por que não tentar os sites do blogroll ...

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.