How to Configure Tomcat/JBoss and Apache HTTPD for Load Balancing and Failover
2014-02-10 09:39
525 查看
http://java.dzone.com/articles/how-configure-tomcatjboss-and
In this post we will see how to setup a load balanced JBoss or Tomcat environment with the fail-over capability.
This post assumes that both Jboss/Tomcat and Apache httpd are setup and running properly.
Configure Apache Httpd Step 1: Configure apache’s workers.properties
Go to /usr/local/apache2/conf/extra and open workers.properties and configure the properties indicated in bold.
The property balance_workers is used to specify the nodes to load balance. For example, if we specify only ‘node’, all requests will be routed to the server named ‘node’. Modify this to test that requests are going to both servers.
Step 2: Configure mod-jk.conf
Go to /usr/local/apache2/conf/extra and open mod-jk.conf and configure the bold properties according to your requirements.
The JkMount /* loadbalancer indicates that all requests are to be routed through the load balancer.
Step 3: Go to /usr/local/apache2/conf and edit httpd.conf
Add
view source
print?
to the end of the file.
Configure Tomcat/JBoss
These settings need to be made for each of the nodes we intend on placing behind the load balancer.
We need to modify the server.xml file which is located at
For Tomcat
../apache-tomcat/conf/
For JBoss
../jboss-5.1.0.GA/server/default/deploy/jbossweb.sar
Edit the following tag:
view source
print?
where the jvmRoute attribute is configured to ‘node’ (which is the name we gave the first worker while configuring workers.properties.)
Next, locate the following tag and edit the port to be the same as while configuring the workers.properties.
view source
print?
Configure the other node(s) accordingly.
Next, Start Apache httpd and the Jboss/tomcat node(s) that you have configured.
Published at DZone with permission of Faheem Sohail, author and DZone MVB. (source)
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)
Tags:
Apache Tomcat
enterprise integration
JBoss
Tips and Tricks
Integration
Enterprise Integration is a huge problem space for developers, and with so many different technologies to choose from, finding the most elegant solution can be tricky. MuleSoft provides the #1 open source Enterprise Service Bus, Mule, along with SOA integration cloud services that are used by customers like eBay, Amazon, and Walmart. Learn More about SOA Best Practices,Mobile E-Commerce, and Legacy Integration.
In this post we will see how to setup a load balanced JBoss or Tomcat environment with the fail-over capability.
This post assumes that both Jboss/Tomcat and Apache httpd are setup and running properly.
Configure Apache Httpd Step 1: Configure apache’s workers.properties
Go to /usr/local/apache2/conf/extra and open workers.properties and configure the properties indicated in bold.
# for mapping requests # The configuration directives are valid # for the mod_jk version 1.2.18 and later # worker.list=loadbalancer,status # Define node # modify the host as your host IP or DNS name. worker.node.port=8009 worker.node.host=192.168.0.3 #(IP or DNS name of the server on which Jboss is running) worker.node.type=ajp13 worker.node.lbfactor=1 worker.node2.port=8009 worker.node2.host=192.168.0.4 #(IP or DNS name of the server on which Jboss is running) worker.node2.type=ajp13 worker.node2.lbfactor=1 # Load-balancing behaviour worker.loadbalancer.type=lb worker.loadbalancer.balance_workers=node,node2 worker.loadbalancer.sticky_session=1 worker.status.type=status
The property balance_workers is used to specify the nodes to load balance. For example, if we specify only ‘node’, all requests will be routed to the server named ‘node’. Modify this to test that requests are going to both servers.
Step 2: Configure mod-jk.conf
Go to /usr/local/apache2/conf/extra and open mod-jk.conf and configure the bold properties according to your requirements.
#Load mod_jk module # Specify the filename of the mod_jk lib LoadModule jk_module modules/mod_jk.so # Where to find workers.properties JkWorkersFile conf/extra/workers.properties # Where to put jk logs JkLogFile /var/apache/logs/mod_jk.log # Set the jk log level [debug/error/info] JkLogLevel debug # Select the log format JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" # JkOptions indicates to send SSK KEY SIZE # Note: Changed from +ForwardURICompat. # See http://tomcat.apache.org/security-jk.html JkOptions +ForwardKeySize +ForwardURICompatUnparsed -ForwardDirectories JkOptions +FlushPackets # JkRequestLogFormat JkRequestLogFormat "%w %V %T" # Mount your applications JkMount /* loadbalancer # You can use external file for mount points. # It will be checked for updates each 60 seconds. # The format of the file is: /url=worker # /examples/*=loadbalancer JkMountFile conf/extra/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 # Note: Replaced JkShmFile logs/jk.shm due to SELinux issues. Refer to # https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=225452 JkShmFile /var/run/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>
The JkMount /* loadbalancer indicates that all requests are to be routed through the load balancer.
Step 3: Go to /usr/local/apache2/conf and edit httpd.conf
Add
view source
print?
1.
Include conf/extra/mod-jk.conf
to the end of the file.
Configure Tomcat/JBoss
These settings need to be made for each of the nodes we intend on placing behind the load balancer.
We need to modify the server.xml file which is located at
For Tomcat
../apache-tomcat/conf/
For JBoss
../jboss-5.1.0.GA/server/default/deploy/jbossweb.sar
Edit the following tag:
view source
print?
1.
&
lt
;Engine name=
"jboss.web"
defaultHost=
"localhost"
jvmRoute=
"node"
&
gt
;
where the jvmRoute attribute is configured to ‘node’ (which is the name we gave the first worker while configuring workers.properties.)
Next, locate the following tag and edit the port to be the same as while configuring the workers.properties.
view source
print?
1.
&
lt
;Connector protocol=
"AJP/1.3"
port=
"8009"
address=
"${jboss.bind.address}"
redirectPort=
"8443"
/&
gt
;
Configure the other node(s) accordingly.
Next, Start Apache httpd and the Jboss/tomcat node(s) that you have configured.
Published at DZone with permission of Faheem Sohail, author and DZone MVB. (source)
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)
Tags:
Apache Tomcat
enterprise integration
JBoss
Tips and Tricks
Integration
Enterprise Integration is a huge problem space for developers, and with so many different technologies to choose from, finding the most elegant solution can be tricky. MuleSoft provides the #1 open source Enterprise Service Bus, Mule, along with SOA integration cloud services that are used by customers like eBay, Amazon, and Walmart. Learn More about SOA Best Practices,Mobile E-Commerce, and Legacy Integration.
相关文章推荐
- How to Configure Tomcat/JBoss and Apache HTTPD for Load Balancing and Failover
- How to configure Apache and Tomcat to realize the load balancing?
- Apache/Tomcat with Failover and Load Balancing in 20 minutes or less…
- How to setup and configure Sonar for Groovy projects
- How to configure XDB for using ftp and http protocols with ASM [ID 357714.1]
- How to Configure iOS for iPhone and iPad to Use So
- How to configure JMX on Apache Tomcat
- How to Install And Configure Apache In Ubuntu
- How to configure Gzip for JBoss?---refer
- How to get JBoss and Apache to work together
- How to configure FreeNAS 8 for iSCSI and connect to ESX(i)
- Howto Install and Configure Doxygen for QtCreator on Ubuntu
- How to Install Apache Tomcat 8 (on Windows, Mac OS X, Ubuntu) and Get Started with Java Servlet Prog
- EM11g: How to discover and monitor Tomcat apache server?
- How-to: Quickly Configure Kerberos for Your Apache Hadoop Cluster
- HOWTO Configure JBoss for HTTPS
- How to configure XDB for using ftp and http protocols with ASM [ID 357714.1]
- How to manage and balance “Huge Data Load” for Big Kafka Clusters---reference
- How To Configure IIS 6.0 and Tomcat with the JK 1.2 Connector
- How To Install and Configure PHD Virtual Backup For Citrix XenServer