¿Que es un balanceandor? (Wikipedia)
Un balanceador de carga fundamentalmente es un dispositivo de hardware o software que se pone al frente de un conjunto de servidores que atienden una aplicación y, tal como su nombre lo indica, asigna o balancea las solicitudes que llegan de los clientes a los servidores usando algún algoritmo (desde un simple Round Robin hasta algoritmos más sofisticados).1
Funcionamiento:
Instalación balanceador:
apt-get install apache2 openjdk-7-jre libapache2-mod-jk
Configuramos el fichero workers.properties
vi /etc/libapache2-mod-jk/workers.properties
Añadimos la siguiente configuración:
# Propiedades del entorno necesarias de configurar
workers.tomcat_home=/usr/local/tomcat
workers.java_home=/usr/lib/jvm/java-7-openjdk-amd64# Los servidores a balancear estarán definidos más abajo en «balancer»
worker.list=balancer#Configuramos tomcat 1
worker.worker1.port=8009
worker.worker1.host=192.168.1.80
worker.worker1.type=ajp13
worker.worker1.lbfactor=1#Configuramos tomcat2
worker.worker2.port=8009
worker.worker2.host=192.168.1.81
worker.worker2.type=ajp13
worker.worker2.lbfactor=1#Configuracion del balanceador
worker.balancer.type=lb
worker.balancer.balance_workers=worker1,worker2
worker.balancer.method=B# El siguiente parámetro indica al balanceador que todas las peticiones de una misma
# sesión (usuario) vayan al mismo servidor
worker.balancer.sticky_session=true
A continuación configuramos JkMount para que todas las peticiones se dirijan a los distintos servidores tomcat, para ello debemos configurar el fichero /etc/apache2/sites-enabled/000-default entre las etiquetas VirtualHost *:80 y VirtualHost
VirtualHost *:80>
ServerAdmin webmaster@localhostDocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory «/usr/lib/cgi-bin»>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
JkMount /node/* balancerJkMount /* balancer
ErrorLog ${APACHE_LOG_DIR}/error.log# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warnCustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Habilitamos la configuración de los modulos jk y procedemos a iniciar el apache
cp /etc/apache2/mods-available/jk.* /etc/apache2/mods-enabled/
/etc/init.d/apache2 restart
<TOMCAT_HOME>/conf/servers.xml
), modificamos el parámetro jvmRoute
del elemento Engine
.
<Engine name=»Catalina» defaultHost=»localhost» jvmRoute=»worker1″>
<Engine name=»Catalina» defaultHost=»localhost» jvmRoute=»worker2″>
cuando se configura el workers.properties y se configura el workers.tomcat_home=/usr/local/tomcat esto quiere decir que tambien debe tener el tomcat instalado???
En esta parte me pedí
Saludos.
Buenas,
Solo se instala el servicio tomcat en los servidores clustomcat01 y clustomcat02
En el servidor que se utiliza como balanceador se instalan apache y mod-jk (apt-get install apache2 openjdk-7-jre libapache2-mod-jk)
un saludo.
disculpe, soy totalmente nuevo en esto y tengo muchas dudas, una de ella es la siguiente:
Ya tengo configurado el balanceador de carga y tomcat, y cree una carpeta den webaps/tomcat-demo/helloword/index.jsp
coloco en el navegador: http://localhost:8080/tomcat-demo/helloword/index.jsp
y funciona muy bien. me muestra el mensaje indicado. mi duda es la siguiente. donde coloco mi proyecto.war para que se ejecute normalmente, en esa misma carpeta?? o lo subo a traves del manager de tomcat, y el apache atraves de la url que se especifico en el virtualhost lo reconocera automaticamente, que en el ejemplo pusiste.
JkMount /node/* balancer
JkMount /* balancer
Buenos días,
Para realizar un despliegue en tomcat y sí actualizar la web sería de la siguiente forma:
– Realiza un backup del .war a modificar
– Para el tomcat
– Mueve el nuevo .war a la carpeta de webapp path-tomcat/webapp/
– Borra la carpeta creada en webapp/ con el mismo nombre
– Borra los temporales creados en: path-tomcat/work/catalina/localhost/
– Inicia el tomcat
Ejemplo:
mv /usr/local/apache-tomcat-7.0.35/webapp/proyecto.war /backup
/etc/init.d/tomcat stop
cp proyecto.war /usr/local/apache-tomcat-7.0.35/webapp/
rm /usr/local/apache-tomcat-7.0.35/webapp/proyecto
rm /usr/local/apache-tomcat-7.0.35/work/Catalina/localhost/proyecto
/etc/init.d/tomcat start
Su proyecto iniciara en este ejemplo como: http://localhost:8080/proyecto
Tengo pendiente realizar un manual respecto a esto. Me lo apunto.
Un saludo.
hola, soy nuevo en el tema, para replicar sesiones en el tomcat se debe configurar un balanceador de cargar también?