1 环境说明
1. 服务器有4台,一台内核的linux2.6.9安装apache,三台安装Tomcat。
2. apache2.2.4、apache-tomcat-5.5.17、jdk-6u1-linux-i586-rpm.bin或者jdk1.5.6
ip配置,一台安装apache的ip为180.200.1.189,三台安装tomcat的服务器ip分别为180.200.1.111/136/42。当然需要修改成你自己的IP地址。
3. 下载地址为
下载tomcat and apache
http://apache.org
下载jdk
http://java.sun.com
2 Tomcat安装
1. 在三台要安装tomcat的服务器上先安装jdk
2. 配置jdk的安装路径,在环境变量path中加入jdk的bin路径,新建环境变量JAVA_HOME指向jdk的安装路径
3. 在三台要安装tomcat的服务器上分别安装tomcat,调试三个tomcat到能够正常启动
4. 分别测试每个tomcat的启动是否正常
http://180.200.0.42:8080
http://180.200.0.136:8080
http://180.200.0.111:8080
3 Apache安装
解压httpd-2.2.4.tar.gz
在那台要安装apache的服务器上安装apache2.2.4。在home下建立apache目录,把httpd-2.2.4.tar.gz上传到该目录下
[iyunv@localhost apache]# tar xvzf httpd-2.2.4.tar.gz
[iyunv@localhost apache]# cd httpd-2.2.4
配置APACHE安装文件
这里需要注意编译前一定要将proxy proxy_http proxy_ftp proxy_connect headers这些参数加进去,以便编译出下面的so文件
mod_proxy.so
mod_proxy_connect.so
mod_proxy_http.so
mod_proxy_ftp.so
mod_proxy_ajp.so
mod_proxy_balancer.so
配置编译参数
[iyunv@localhost apache]#./configure --prefix=/usr/local/apache224 --enable-so --enable-mods-shared="proxy proxy_http proxy_ftp proxy_connect headers"
编译
[iyunv@localhost apache]# make
检查编译后的是否有编译出so文件
[iyunv@localhost apache]# cd /usr/local/apache224/modules
[iyunv@localhost modules]#]# ls
httpd.exp mod_proxy_ajp.so mod_proxy_connect.so mod_proxy_http.so
mod_headers.so mod_proxy_balancer.so mod_proxy_ftp.so mod_proxy.so
如果存在以上文件则说明编译成功
安装
[iyunv@localhost apache]# make install
启动APACHE
[iyunv@localhost apache]# /usr/local/apache224/bin/httpd -k start
测试
http://180.200.1.189/
如果输出IT works那么就ok了
4 配置负载均衡
4.1. Tomcat配置
分别修改三个tomcat的配置文件conf/server.xml以便测试
修改内容如下:
修改前
<!-- An Engine represents the entry point (within Catalina) that processes<br /> every request. The Engine implementation for Tomcat stand alone<br /> analyzes the HTTP headers included with the request, and passes them<br /> on to the appropriate Host (virtual host). -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :<br /> <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1"> <br /> -->
<!-- Define the top level container in our container hierarchy -->
修改后
<!-- An Engine represents the entry point (within Catalina) that processes<br /> every request. The Engine implementation for Tomcat stand alone<br /> analyzes the HTTP headers included with the request, and passes them<br /> on to the appropriate Host (virtual host). -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :-->
<!-- Define the top level container in our container hierarchy <br /> <Engine name="Catalina" defaultHost="localhost"><br /> -->
将其中的jvmRoute="jvm1"分别修改为jvmRoute="worker1"和jvmRoute=" worker2"和jvmRoute=" worker3"
然后重启三个tomcat,调试是否能够正常启动。
http://180.200.0.42:8080
http://180.200.0.136:8080
http://180.200.0.111:8080
4.2. Apache配置
4.2.1. 启用代理
1. 配置代理模块
[iyunv@localhost ~]#vi /usr/local/apache224/conf/httpd.conf
查找代理是否打开
/LoadModule proxy_module
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
如果被注释则需要打开注释,如果不存在则需要添加进去
查找httpd-vhosts.conf
/httpd-vhosts.conf
# Include conf/extra/httpd-vhosts.conf
打开注释
保存退出
:wq
4.2.2. 配置代理主机
[iyunv@localhost ~]#vi /usr/local/apache224/conf/extra/httpd-vhosts.conf
#注释掉以下所有行
ServerAdmin webmaster@dummy-host.www.serviceapache.com
DocumentRoot /www/docs/dummy-host.www.serviceapache.com
ServerName dummy-host.www.serviceapache.com
ServerAlias www.dummy-host.www.serviceapache.com
ErrorLog logs/dummy-host.www.serviceapache.com-error_log
CustomLog logs/dummy-host.www.serviceapache.com-access_log common
ServerAdmin webmaster@dummy-host2.www.serviceapache.com
DocumentRoot /www/docs/dummy-host2.www.serviceapache.com
ServerName dummy-host2.www.serviceapache.com
ErrorLog logs/dummy-host2.www.serviceapache.com-error_log
CustomLog logs/dummy-host2.www.serviceapache.com-access_log common
#添加以下信息
ServerName localhost
CustomLog logs/dmim_log combined
BalancerMember ajp://180.200.1.111:9109
BalancerMember ajp://180.200.0.42:8009
BalancerMember ajp://180.200.0.136:9309
BalancerMember ajp://180.200.1.189:8009
ProxyPass balancer://localhost/
#保存退出
:wq
5 部署
5.1. 编写测试代码
在三个tomcat的安装目录中的webapps建立相同的应用,我和应用目录名为apa,在三个应用目录中建立相同 WEB-INF目录和页面index.jsp,index.jsp的页面内容如下
<!--page contentType="text/html; charset=GBK"-->
<!--page import="java.util.*"-->
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com