vivion32 发表于 2017-1-8 10:42:36

Apache+tomcat 集群-简单HA(No-Session,LB+Failover)

  本文描述APACHE+TOMCAT的简单HA配置,实现负载均衡和故障转移,不考虑后端TOMCAT的SESSION。一般用于基于HTTP协议的接口服务。
  方案说明:
  1.以两台linux为基础环境分别为
  节点1:Hadoop00 10.10.10.11
  节点2:Hadoop01 10.10.10.12
  2.在两个节点分别安装TOMCAT,作为后端服务。
  2.第1台机器上安装apache作为集群WEB服务器。
  环境参数:JDK1.6以上,Apache-2.2.21,Tomcat-6.0.35
  1.Tomcat安装和配置
  登录节点1,下载TOMCAT
  # cd /opt
  # wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-6/v6.0.33/bin/apache-tomcat-6.0.33.tar.gz
  # tar -zxvf apache-tomcat-6.0.33.tar.gz
  部署测试工程cluster到TOMCAT
  下载测试工程WAR包:http://dl.iteye.com/topics/download/00ce84ef-3579-3582-a0cd-18ce6b0bddfb
  # cd /opt/apache-tomcat-6.0.33/webapps
  # ls
  cluster
  测试节点TOMCAT部署
  # /opt/apache-tomcat-6.0.33/bin/startup.sh
  浏览器中访问 http://10.10.10.11:8080/cluster
  拷贝节点1部署好的TOMCAT到节点2
  # zip -r tomcat.zip apache-tomcat-6.0.33
  # scp tomcat.zip root@10.10.10.12://opt/
  tomcat.zip                                                100% 5412KB   5.3MB/s   00:01 
  登录节点2部署TOMCAT
  # cd /opt/
  # unzip tomcat.zip 
  启动和测试节点2
  # /opt/apache-tomcat-6.0.33/bin/startup.sh
  浏览器中访问 http://10.10.10.12:8080/cluster
  Apache安装
  参考:http://zp820705.iteye.com/blog/1347749
  本例假设Apache安装在/opt/apache2/
  Apache配置
  检查LoadModule配置,vi打开/opt/apache2/conf/httpd.conf主配置文件

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule speling_module modules/mod_speling.so
LoadModule rewrite_module modules/mod_rewrite.so
  打开vhost配置的自配置文件引用

# Virtual hosts
Include conf/extra/httpd-vhosts.conf
  配置http-vhost.conf以host方式配置代理转发
  以VI方式打开/opt/apache-2.2.21/conf/extra/httpd-vhosts.conf
  删除或注释掉原有的VirtualHost配置,加入如下配置

<VirtualHost *:80>
ErrorLog "logs/localhost-error_log"
LogFormat "%{Host}i %h %l %u %t \"%r\" %s %b" vcommon
CustomLog logs/localhost-access_log vcommon
ProxyRequests Off
ProxyPreserveHost on
# apache+tomcat cluster
ProxyPass / balancer://tomcat-cluster/
ProxyPassReverse / balancer://tomcat-cluster/
<Proxy balancer://tomcat-cluster/>
BalancerMember http://10.10.10.11:8080 loadfactor=1
BalancerMember http://10.10.10.12:8080 loadfactor=1
ProxySet lbmethod=bybusyness
</Proxy>
</VirtualHost>
  保存后退出。
  检查配置,启动apache
  # ./httpd -S
  # cd /opt/apache2/bin/
  测试集群 
  1.浏览器访问测试:http://10.10.10.11/cluster
  


  2.测试Load Balance
  反复刷新浏览器,测试是否后端服务器是否切换。
  首次访问:
  
 
  刷新页面:

  3.测试Failover
  关闭其中一台后,反复刷新界面,测试是否可以正常使用。
页: [1]
查看完整版本: Apache+tomcat 集群-简单HA(No-Session,LB+Failover)