remingtonsb
(usa Red Hat)
Enviado em 11/08/2016 - 18:07h
Obrigado Victor, pensei em usarmos o mod_jk, pois tenho dominio de configurar dessa forma, nada impede que tentemos usar o mod_cluster. Você tem alguma restrição com relação ao mod_jk ou algo que o obrigue a usar o mod_cluster?
Caso não tenha problema em usar o mod_jk vamos lá então:
Primeiramente é preciso que configure o seu Apache para funcionar com o mod_jk (https://tomcat.apache.org/tomcat-3.3-doc/mod_jk-howto.html) para essa configuração funcionar siga os seguintes passos:
1- Baixar o módulo mod_jk do seguinte link:
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/linux/jk-1.2.31/x86_64/mod_jk-1....
2- copiar arquivo baixado para /etc/httpd/modules do seu servidor onde está o apache
3- renomear o arquivo, que pode ser feito da seguinte forma : #mv /etc/httpd/mod_jk-1.2.31-httpd-2.0.x.so /etc/httpd/mod_jk.so
4- Crie o arquivo de configuração mod_jk.conf dentro do seu diretório /etc/httpd/conf.d/
(Comando)
#vim /etc/httpd/conf.d/mod_jk.conf
(INSIRA AS SEGUINTES CONFIGURACOES)
# Load mod_jk module
# Specify the filename of the mod_jk lib
LoadModule perl_module modules/mod_perl.so
LoadModule jk_module modules/mod_jk.so
# Uncomment for worker mpm
#JkWatchdogInterval 60
# Where to find workers.properties
JkWorkersFile conf/workers.properties
# Where to put jk logs
JkLogFile logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
# JkOptions indicates to send SSK KEY SIZE
JkOptions +ForwardKeySize +ForwardURICompatUnparsed -ForwardDirectories
# JkRequestLogFormat
JkRequestLogFormat "%w %V %T"
# Mount your applications
#JkMount /application/* node1
# You can use external file for mount points.
# It will be checked for updates every 60 seconds.
# The format of the file is: /url=worker
# /examples/*=loadbalancer
JkMountFile conf/uriworkermap.properties
# Add shared memory.
# This directive is present with 1.2.10 and
# later versions of mod_jk, and is needed for
# for load balancing to work properly
JkShmFile /var/cache/mod_jk/jk.shm
# Add jkstatus for managing runtime data
<Location /jkstatus/>
JkMount status
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Location>
4- Garanta que as configurações do seu apache estejam habilitadas para ler arquivos de configuração dentro do diretório conf.d, em no seu arquivo /etc/httpd/conf/httpd.conf deverá conter a seguinte entrada, caso não exista insira a mesma:
Include conf.d/*.conf
5- Dentro do diretorio /etc/httpd/conf crie os seguintes arquivos com os seus respectivos conteúdos
a. #vim /etc/httpd/uriworkermap.properties
#CONTEXTO PROCURADO NO SEU SERVIDOR DE APLICACAO (JBOSS)
/contexto_applicacao=loadbalancer
/contexto_applicacao/*=loadbalancer
b. #vim /etc/httpd/workers.properties
worker.list=loadbalancer,status,node1,node2
# node1
worker.node1.port=8009
worker.node1.host=nome_ou_ip_server_jboss_1
worker.node1.type=ajp13
worker.node1.ping_mode=A
worker.node1.lbfactor=1
#worker.node1.lbfactor=1
# node2
worker.node2.port=8009
worker.node2.host=nome_ou_ip_server_jboss_2
worker.node2.type=ajp13
worker.node2.ping_mode=A
worker.node2.lbfactor=1
# Balanceamento
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=node1,node2
worker.loadbalancer.sticky_session=1
#worker.loadbalancer.sticky_session_force=true
# Status worker for managing load balancer
worker.status.type=status
6- Inicie seus servidores de Aplicação (JBOSS) e monitore se a porta 8009 estão em Listen
#netstat -nltp | grep 8009
7- Inicie ou reinicie seus servidores apache
#service httpd start
ou
#service httpd restart
8- Agora valide se acessando seus servidores apache via browser seguigo do contexto da aplicação a mesma deve ser direcionada para o servidor 1 ou servidor 2
http://servidor_apache/contexto_aplicacao.
Após realizar os procedimentos acima me informe se teve sucesso ou não para tratarmos os problemas e depois de tudo estar funcinando temos um pequeno ajuste de jvm_route nos servidores do Jboss para ele trabalhar de forma inteligente o balanceamento.