|
原文:http://www.weiruoyu.cn/?p=698
0.做集群,首先安装jdk,tomcat,apache。
在apache端
1.先停止后删除
# service httpd stop
# yum remove httpd
2.安装apche的命令:
[root@localhost httpd-2.2.18]#./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared="proxy proxy_http proxy_ftp proxy_connect proxy_balancer headers"
[root@localhost httpd-2.2.18]#make
[root@localhost httpd-2.2.18]#make install
之所以但说这个安装,是因为我们使用的是mod_proxy,安装后确定
[root@localhost ~]# ll /usr/local/apache/modules/
总计 636
-rw-r--r-- 1 root root 9149 10-24 15:59 httpd.exp
-rwxr-xr-x 1 root root 42995 10-24 16:00 mod_headers.so
-rwxr-xr-x 1 root root 100940 10-24 16:00 mod_proxy_ajp.so
-rwxr-xr-x 1 root root 57525 10-24 16:00 mod_proxy_balancer.so
-rwxr-xr-x 1 root root 29815 10-24 16:00 mod_proxy_connect.so
-rwxr-xr-x 1 root root 72951 10-24 16:00 mod_proxy_ftp.so
-rwxr-xr-x 1 root root 75321 10-24 16:00 mod_proxy_http.so
-rwxr-xr-x 1 root root 41224 10-24 16:00 mod_proxy_scgi.so
-rwxr-xr-x 1 root root 178832 10-24 16:00 mod_proxy.so
下面要有这几个*.so的文件。
1.然后修改httpd.conf文件
1.1:Include conf/extra/httpd-vhosts.conf前面的#去掉。(是为了连接httpd-vhosts这个文件,使用其配置)
1.2:最下面添加:
- ProxyRequests Off
-
- BalancerMember ajp://127.0.0.1:6045 loadfactor=1route=tomcat_test1
- BalancerMember ajp://127.0.0.1:6055 loadfactor=1route=tomcat_test2
-
注意:127.0.0.1是本机,可以换为其它IP。6045是端口,tomcat里server.xml的端口,这个端口是:。
2.修改apache目录下/usr/local/apache/conf/extra/httpd-vhosts.conf
-
- ServerAdmin xy5300@qq.com
- ServerName localhost
- ServerAlias localhost
- ProxyPass / balancer://cluster/ stickysession=jsessionidnofailover=On
- ProxyPa***everse / balancer://cluster/
- ErrorLog "logs/clustertest-error.log"
- CustomLog "logs/clustertest-access.log" common
-
把这个字段前面都加上#,然后在最下面添加
其中的的virtualHost*:80为HttpServer监听端口。
ServerAdmin:管理员邮箱
ServerName: 服务器名称
ServerAlias: 配置服务器域名或IP,如果有多个域名或者域名和IP同时使用,则使用空格隔开。
ProxyPass / balancer:// 是告诉Apache需要进行负载均衡的代理,后面的cluster是集群名,可以随意取,转发时带上session的名称。
ProxyPa***everse 这行配置的含义是,使Apache调整HTTP重定向应答中Location, Content-Location, URI头里的URL。这样可以避免在Apache作为反向代理使用时,后端服务器的HTTP重定向造成的绕过反向代理的问题。
两个日志引擎日志名可以自己取
ErrorLog负责记录错误日志
CustomLog负责记录所有的http访问以及返回状态
3.修改tomcat。
3.1如果同一台机器2个tomcat则需要修改3个端口,保持不一样,反之跳过3.1步骤。
(关闭端口)
(连接端口)
(集群链连接端口)
3.2 找到删除,并添加
tomcat_test1 是对应httpd.conf里的route=tomcat_test1参数
并在下面添加:
两个tomcat都要做修改,其中注意上面代码里面的part="4000",两个tomcat在同一台服务器上,要修改为不同的,如4001.
3.3 添加 这个是最容易忽略的。
在所使用的工程应用下,web.xml里倒数第二行添加即可。
4.测试了
4.1测试负载均衡
4.2测试session复制
上面两个测试在上一篇文章有提到,可能比较乱。
把下面的两个下载放到tomcat里面webapps里面然后重启进行测试。
附件:http://down.51cto.com/data/2359151
|
|
|
|
|
|
|