Jud con presentation_brazil_sergio-fantin
-
Upload
serjaumfantin -
Category
Technology
-
view
2.287 -
download
0
Transcript of Jud con presentation_brazil_sergio-fantin
![Page 1: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/1.jpg)
Clustering para Alta Disponibilidade (HA) em
JBoss AS 7
Sergio Fantin Solution Architect [email protected]
![Page 2: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/2.jpg)
Quem é Sergio Fantin?
• Solution Architect na Red Hat
• Trabalha com Finanças e Contas Estratégicas
• Quase 10 anos de experiência com Java
• Especialidades: JBoss AS, EJB, JSF, RichFaces
• Contribuidor de artigos revista Java Magazine
• Sun Java Certifications
• Blog: serjaum.wordpress.com
![Page 3: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/3.jpg)
Agenda
• JBoss AS 7
• Standalone X Domain
• JGroups/Infinispan
• mod_cluster
• Demo
• Perguntas
![Page 4: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/4.jpg)
JBoss AS 7
• Rápido!
• Arquivos de configuração simplificados:
• domain.xml/host.xml, standalone.xml
• Leve
• Domains
• Novas ferramentas de gerenciamento
![Page 5: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/5.jpg)
JBoss AS 7
![Page 6: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/6.jpg)
JBoss AS 7 - Standalone X Domain
![Page 7: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/7.jpg)
JBoss AS 7 – Domain Exemplo
![Page 8: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/8.jpg)
JBoss AS 7 – Gerenciamento
![Page 9: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/9.jpg)
JBoss AS 7 – Gerenciamento
![Page 10: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/10.jpg)
JBoss AS 7 – Módulos
![Page 11: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/11.jpg)
JBoss AS 7 – Perfis
![Page 12: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/12.jpg)
JBoss AS 7 – Perfis HA
![Page 13: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/13.jpg)
JBoss AS 7 – Infinispan e JGroups
![Page 14: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/14.jpg)
JBoss AS 7 – JGroups
![Page 15: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/15.jpg)
JBoss AS 7 – JGroups
![Page 16: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/16.jpg)
JBoss AS 7 – Infinispan
![Page 17: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/17.jpg)
O que é mod_cluster
• Conjunto de módulos para Apache httpd e web
server baseado em Tomcat:
• JBoss AS 5.0.0.GA+, JBoss Web 2.1.1+, Tomcat 6;
• Permite que httpd aja como um balanceador de
carga
• Similar ao mod_jk e mod_proxy_balancer;
• Projeto JBoss.org:
• http://www.jboss.org/mod_cluster
![Page 18: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/18.jpg)
mod_cluster – Arquitetura
![Page 19: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/19.jpg)
mod_cluster – Vantagens
• Configuração:
• httpd não precisa saber antecipadamente da
topologia do cluster;
• mínima configuração do httpd;
• dinâmico;
• Balanceamento de carga melhorado:
• cálculos feitos nos servidores back-end, onde as
informações estão disponíveis;
• Maior controle do ciclo de vida da webapp:
• undeploy de nós sem erro 404;
![Page 20: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/20.jpg)
mod_cluster – Configuração dinâmica
• As instâncias se registram com o httpd no
startup;
• Nenhuma configuração estática é necessária:
• workers.properties
• uriworkermap.properties
• Servidores httpd se anunciam às instâncias via
multicast:
• Nenhuma configuração de topologia!
![Page 21: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/21.jpg)
mod_jk – workers.properties
worker.list=lb
worker.lb.type=lbworker.lb.balance_workers=node1,node2
worker.node1.type=ajp13worker.node1.host=192.168.2.1worker.node1.port=8009worker.node1.lbfactor=1
worker.node2.type=ajp13worker.node2.host=192.168.2.2worker.node2.port=8009worker.node2.lbfactor=1
![Page 22: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/22.jpg)
mod_cluster
Balanceador de carga aprimorado• As instâncias dizem ao httpd periodicamente
qual a carga que podem suportar:
• ”Load Balance Factor”: número entre 1 e 100;
• balanceador de carga utiliza fatores para tomada de
decisão;
• instâncias utilizam um conjunto de métricas para
derivar o fator;
![Page 23: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/23.jpg)
mod_cluster
Carregamento de métricas • Uma métrica rastreada pela instância é
utilizada para decidir o quão carrega ela está:
• utilização de Heap;
• utilização de CPU;
• Altamente configurável:
• rastreie as métricas e workload relevantes
específicas para sua aplicação;
![Page 24: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/24.jpg)
mod_cluster – Métricas disponíveis
• Utilização da camada web:
• sessões ativas, número de conexões, bytes
enviados, bytes recebidos, contador de requisições;
• Utilização do sistema:
• utilização da CPU, memória do sistema utilizada,
memória heap utilizada, número de threads
• Pool de conexão JCA utilizado;
• Escreva sua própria métrica, se quiser!
![Page 25: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/25.jpg)
mod_cluster – Instalação
• http://www.jboss.org/mod_cluster/downloads
![Page 26: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/26.jpg)
mod_cluster – Módulos utilizados
mod_proxy_cluster.somod_advertise.somod_slotmem.somod_manager.so
![Page 27: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/27.jpg)
mod_cluster – httpd.conf 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
Listen 192.168.122.146:10001 <VirtualHost 192.168.122.146:10001>
<Location /mod_cluster-manager> SetHandler mod_cluster-manager Order deny,allow Deny from all Allow from 192.168.122. # Allow from all </Location>
KeepAliveTimeout 60 MaxKeepAliveRequests 0 ManagerBalancerName mycluster ServerAdvertise On EnableMCPMReceive
</VirtualHost>
![Page 28: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/28.jpg)
JBoss AS 7 – web.xml
![Page 29: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/29.jpg)
Demo
![Page 30: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/30.jpg)
Perguntas?
![Page 31: Jud con presentation_brazil_sergio-fantin](https://reader031.fdocumento.com/reader031/viewer/2022021502/58eecda01a28abd1718b45a7/html5/thumbnails/31.jpg)
Obrigado!