fish3129 发表于 2018-11-17 13:03:02

APACHE 2.2.15+TOMCAT6.0.26配置负载均衡

  目标 :
  使用 apache 和 tomcat 配置一个可以应用的 web 网站,要达到以下要求:
  1、 Apache 做为 HttpServer ,后面连接多个 tomcat 应用实例,并进行负载均衡。
  2、 为系统设定 Session 超时时间,包括 Apache 和 tomcat
  3、 为系统屏蔽文件列表,包括 Apache 和 tomcat
  注:本例程以一台机器(操作系统 windows 2008)为例子,即同一台机器上装一个 apache 和 4个 Tomcat 。
  一、下载软件
  httpd-2.2.15-win32-x86-no_ssl
  jdk-6u18-windows-i586.exe
  apache-tomcat-6.0.26-windows-x86.zip
  二、安装程序
  1、 jdk 按默认安装,在环境变量中设置 JA V A_HOME
  (缺省的 JDK 目录为 C:\Program Files\Java\jdk1.6.0_18)
  A 、进入 windows 桌面,右键选择 “ 我的电脑 ” -->“ 属性 ”
  B 、选择 “ 高级 ” 页签,点开 “ 环境变量 ”
  C 、在 “ 系统变量 ” 下点击新建弹出 “ 新建系统变量 ” ,变量名输入 “JA V A_HOME” ,变量值 输入 “C:\Program Files\Java\jdk1.6.0_18” 后点击确定。
  2、 APAHCE 安装目录:D:\Apache。
  3、四个 TOMCAT 目录:自行解压到 (D:\Tomcat集群服务器 )下。分别为 tomcat6.0, tomcat6.01, tomcat6.02, tomcat6.03
  三、配置
  1、 Apache 配置
  1.1、 httpd.conf 配置
  修改 APACHE 的配置文件 D:\Apache \conf\httpd.conf
  将以下 Module 的注释去掉,这里并没有使用 mod_jk.so进行 apache 和 tomcat 的链接,从 2.X 以后 apache 自身已集成了 mod_jk.so的功能。只需简单的把下面几行去掉注释,就相当 于以前用 mod_jk.so比较繁琐的配置了。这里主要采用了代理的方法,就这么简单。 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_ajp_module modules/mod_proxy_ajp.so
  LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
  再找到 加上 index.jsp 修改成
  DirectoryIndex index.html index.jsp
  1.1.1、 在最下面加入
  ProxyRequests Off
  BalancerMember ajp://127.0.0.1:8009 loadfactor=1 route=jvm1
  BalancerMember ajp:// 127.0.0.1:9009 loadfactor=1 route=jvm2
  BalancerMember ajp:// 127.0.0.1:9001 loadfactor=1 route=jvm3
  BalancerMember ajp:// 127.0.0.1:9003 loadfactor=1 route=jvm4
  上面的四个 BalancerMember 成员是我们配置的 tomcat 集群。后面会说明的。
  1.2、 httpd-vhosts.conf 设置
  接下来进行虚拟主机的设置。 APACHE 的虚拟主机设置如下:
  首先要修改 conf/httpd.conf找到 (#Include conf/extra/httpd-vhosts.conf)
  把注释去掉。
Virtual hosts
  Include conf/extra/httpd-vhosts.conf
  在文件(extra/httpd-vhosts.conf)最下面加入
  ServerAdmin
  ServerName localhost
  ServerAlias localhost
  ProxyPass / balancer://cluster/ stickysession=jsessionid nofailover=On
  ProxyPa***everse / balancer://cluster/
  其中的域名和路径根据你自己情况设置
  然后再设置 TOMCAT 虚拟主机
  2 配置 tomcat
  2.1. 配置 server 的关闭
  我们需要在一台机器上跑 4 个不同的 tomcat ,需要修改不同的 tomcat 的关闭口,避免出 现端口被占用的情况。其中 tomcat6.0用默认值,不修改。其他三个修改。在
  tomcat6.01\conf, tomcat6.02\conf下和 tomcat6.03\conf下的 server.xml 中找到 server, 将:
  改为
  XXXX 在这里表示不同的端口:我的其它三个 tomcat 分别使用 9005, 8006 , 9007 2.2. 配置 Engine
  把原来的配置注释掉,把下面一句去掉注释。并标明 jvmRoute="jvm2".
  以下是原来的配置。
  其他(tomcat6.02和 tomcat6.03)也要同样 配置。注意:jvmRoute 配置不要一样。
  2.3. 配置 Connector
  原来的默认配置。
  这里是 apache 和 tomcat 链接的关键,前台 apache 就是通过 AJP 协议与 tomcat 进行通信的, 以完成负载均衡的作用。也可以用 HTTP 协议。大家注意它们是如何连接通信的,上面的红 色部分就是连接的接口了。
  把其他三个 tomcat 的 port分别改成与上面
  #与 tomcat6.0对应, route 与 对应。
  BalancerMember ajp://127.0.0.1:8009 loadfactor=1 route=jvm1
  #与 tomcat6.01对应, route 与 对应。
  BalancerMember ajp:// 127.0.0.1:9009 loadfactor=1 route=jvm2

页: [1]
查看完整版本: APACHE 2.2.15+TOMCAT6.0.26配置负载均衡