(一)環(huán)境說明
(1)服務(wù)器有4臺,一臺安裝apache,三臺安裝tomcat
(2)apache2.0.55、tomcat5.5.15、jk2.0.4、jdk1.5.6或jdk1.4.2
(3)ip配置,一臺安裝apache的ip為192.168.0.88,三臺安裝tomcat的服務(wù)器ip分別為192.168.0.1/2/4
(二)安裝過程
(1)在三臺要安裝tomcat的服務(wù)器上先安裝jdk
(2)配置jdk的安裝路徑,在環(huán)境變量path中加入jdk的bin路徑,新建環(huán)境變量JAVA_HOME指向jdk的安裝路徑
(3)在三臺要安裝tomcat的服務(wù)器上分別安裝tomcat,調(diào)試三個tomcat到能夠正常啟動
(4)tomcat的默認(rèn)WEB服務(wù)端口是8080,默認(rèn)的模式是單獨(dú)服務(wù),我的三個tomcat的WEB服務(wù)端口修改為7080/8888/9999
v修改位置為tomcat的安裝目錄下的conf/server.xml
修改前的配置為
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
修改后的配置為
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
依次修改每個tomcat的監(jiān)聽端口(7080/8888/9999)
(5)分別測試每個tomcat的啟動是否正常
http://192.168.0.1:7080
http://192.168.0.2:8888
http://192.168.0.4:9999(三)負(fù)載均衡配置過程
(1)在那臺要安裝apache的服務(wù)器上安裝apache2.0.55,我的安裝路徑為默認(rèn)C:\Program Files\Apache Group\Apache2
(2)安裝后測試apache能否正常啟動,調(diào)試到能夠正常啟動http://192.168.0.88
(3)下載jk2.0.4后解壓縮文件
(4)將解壓縮后的目錄中的modules目錄中的mod_jk2.so文件復(fù)制到apache的安裝目錄下的modules目錄中,我的為C:\Program Files\Apache Group\Apache2\modules
(5)修改apache的安裝目錄中的conf目錄的配置文件httpd.conf,在文件中加LoadModule模塊配置信息的最后加上一句LoadModule jk2_module modules/mod_jk2.so
(6)分別修改三個tomcat的配置文件conf/server.xml,修改內(nèi)容如下修改前
修改后
將其中的jvmRoute="jvm1"分別修改為jvmRoute="tomcat1"和jvmRoute="tomcat2"和jvmRoute="tomcat3"
(7)然后重啟三個tomcat,調(diào)試能夠正常啟動。
(8)在apache的安裝目錄中的conf目錄下創(chuàng)建文件workers2.propertie,寫入文件內(nèi)容如下
# fine the communication channel
[channel.socket:192.168.0.1:8009]
info=Ajp13 forwarding over socket
配置第一個服務(wù)器tomcatId=tomcat1 #要和tomcat的配置文件server.xml中的jvmRoute="tomcat1"名稱一致debug=0 lb_factor=1 #負(fù)載平衡因子,數(shù)字越大請求被分配的幾率越高
# Define the communication channel
[channel.socket:192.168.0.2:8009]
info=Ajp13 forwarding over socket
tomcatId=tomcat2
debug=0
lb_factor=1
# Define the communication channel
[channel.socket:192.168.0.4:8009]
info=Ajp13 forwarding over socket
tomcatId=tomcat3
debug=0
lb_factor=1
[status:]
info=Status worker, displays runtime information.
[uri:/jkstatus.jsp]
info=Display status information and checks the config file for changes.
group=status:
[uri:/*]
info=Map the whole webapp
debug=0
(9)在三個tomcat的安裝目錄中的webapps建立相同的應(yīng)用,我和應(yīng)用目錄名為TomcatDemo,在三個應(yīng)用目錄中建立相同 WEB-INF目錄和頁面index.jsp,index.jsp的頁面內(nèi)容如下
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.util.*" %>
Cluster App Test
Server Info:
<%
out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"
");%>
<%
out.println("
ID " + session.getId()+"
");
// 如果有新的 Session 屬性設(shè)置
String dataName = request.getParameter("dataName");
if (dataName != null && dataName.length() > 0) {
String dataValue = request.getParameter("dataValue");
session.setAttribute(dataName, dataValue);
}
out.print("Session 列表");
Enumeration e = session.getAttributeNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = session.getAttribute(name).toString();
out.println( name + " = " + value+"
");
System.out.println( name + " = " + value);
}
%>
名稱:
值:
(10)重啟apache服務(wù)器和三個tomcat服務(wù)器,到此負(fù)載 均衡已配置完成。測試負(fù)載均衡先測試apache,訪問http://pic02.newdu.com/uploads/202503/19/1156.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
將集群配置選項(xiàng)的注釋放開即可,如上。
(3)重啟三個tomcat.到此tomcat的集群已配置完成
(1)服務(wù)器有4臺,一臺安裝apache,三臺安裝tomcat
(2)apache2.0.55、tomcat5.5.15、jk2.0.4、jdk1.5.6或jdk1.4.2
(3)ip配置,一臺安裝apache的ip為192.168.0.88,三臺安裝tomcat的服務(wù)器ip分別為192.168.0.1/2/4
(二)安裝過程
(1)在三臺要安裝tomcat的服務(wù)器上先安裝jdk
(2)配置jdk的安裝路徑,在環(huán)境變量path中加入jdk的bin路徑,新建環(huán)境變量JAVA_HOME指向jdk的安裝路徑
(3)在三臺要安裝tomcat的服務(wù)器上分別安裝tomcat,調(diào)試三個tomcat到能夠正常啟動
(4)tomcat的默認(rèn)WEB服務(wù)端口是8080,默認(rèn)的模式是單獨(dú)服務(wù),我的三個tomcat的WEB服務(wù)端口修改為7080/8888/9999
v修改位置為tomcat的安裝目錄下的conf/server.xml
修改前的配置為
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
修改后的配置為
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
依次修改每個tomcat的監(jiān)聽端口(7080/8888/9999)
(5)分別測試每個tomcat的啟動是否正常
http://192.168.0.1:7080
http://192.168.0.2:8888
http://192.168.0.4:9999(三)負(fù)載均衡配置過程
(1)在那臺要安裝apache的服務(wù)器上安裝apache2.0.55,我的安裝路徑為默認(rèn)C:\Program Files\Apache Group\Apache2
(2)安裝后測試apache能否正常啟動,調(diào)試到能夠正常啟動http://192.168.0.88
(3)下載jk2.0.4后解壓縮文件
(4)將解壓縮后的目錄中的modules目錄中的mod_jk2.so文件復(fù)制到apache的安裝目錄下的modules目錄中,我的為C:\Program Files\Apache Group\Apache2\modules
(5)修改apache的安裝目錄中的conf目錄的配置文件httpd.conf,在文件中加LoadModule模塊配置信息的最后加上一句LoadModule jk2_module modules/mod_jk2.so
(6)分別修改三個tomcat的配置文件conf/server.xml,修改內(nèi)容如下修改前
修改后
將其中的jvmRoute="jvm1"分別修改為jvmRoute="tomcat1"和jvmRoute="tomcat2"和jvmRoute="tomcat3"
(7)然后重啟三個tomcat,調(diào)試能夠正常啟動。
(8)在apache的安裝目錄中的conf目錄下創(chuàng)建文件workers2.propertie,寫入文件內(nèi)容如下
# fine the communication channel
[channel.socket:192.168.0.1:8009]
info=Ajp13 forwarding over socket
配置第一個服務(wù)器tomcatId=tomcat1 #要和tomcat的配置文件server.xml中的jvmRoute="tomcat1"名稱一致debug=0 lb_factor=1 #負(fù)載平衡因子,數(shù)字越大請求被分配的幾率越高
# Define the communication channel
[channel.socket:192.168.0.2:8009]
info=Ajp13 forwarding over socket
tomcatId=tomcat2
debug=0
lb_factor=1
# Define the communication channel
[channel.socket:192.168.0.4:8009]
info=Ajp13 forwarding over socket
tomcatId=tomcat3
debug=0
lb_factor=1
[status:]
info=Status worker, displays runtime information.
[uri:/jkstatus.jsp]
info=Display status information and checks the config file for changes.
group=status:
[uri:/*]
info=Map the whole webapp
debug=0
(9)在三個tomcat的安裝目錄中的webapps建立相同的應(yīng)用,我和應(yīng)用目錄名為TomcatDemo,在三個應(yīng)用目錄中建立相同 WEB-INF目錄和頁面index.jsp,index.jsp的頁面內(nèi)容如下
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.util.*" %>
Server Info:
<%
out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"
");%>
<%
out.println("
ID " + session.getId()+"
");
// 如果有新的 Session 屬性設(shè)置
String dataName = request.getParameter("dataName");
if (dataName != null && dataName.length() > 0) {
String dataValue = request.getParameter("dataValue");
session.setAttribute(dataName, dataValue);
}
out.print("Session 列表");
Enumeration e = session.getAttributeNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = session.getAttribute(name).toString();
out.println( name + " = " + value+"
");
System.out.println( name + " = " + value);
}
%>
名稱:
值:
(10)重啟apache服務(wù)器和三個tomcat服務(wù)器,到此負(fù)載 均衡已配置完成。測試負(fù)載均衡先測試apache,訪問http://pic02.newdu.com/uploads/202503/19/1156.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
將集群配置選項(xiàng)的注釋放開即可,如上。
(3)重啟三個tomcat.到此tomcat的集群已配置完成