1:负载均衡的定义
多台服务器组成一个集群,向外提供相同的服务,所有的请求经过apache服务器的
分配,到各台tomcat服务器处理请求。另外还需实现session共享,如果有一台tomcat
服务器宕机,那么请求马上转移到另外的tomcat服务器上面处理。
2:安装环境
linux操作系统 、Apache服务器、tomcat服务器多台,jk连接器
3:下载apache服务器安装文件
httpd-2.2.21.tar
解压文件:tar -xvf httpd-2.2.21.tar
进入文件:cd httpd-2.2.21
配置文件安装目录: ./configure --export="/usr/local/httpd"(这个自己定义)
编译文件:make
安装:make install
安装完成后,进入在usr/local/apache2目录bin下启动httpd服务
./apachectl
遇到问题:
make:编译源文件
make install:安装程序
如果是不是以root用户登录,则需要临时切换登录用户
sudo make install,实现安装
实现负载均衡:
把tomcat目录conf下server.xml里面的Engine放开,添加属性jvmRoute即可实现负载均衡
实现session共享:
如果是小规模的实现集群和session共享,可以默认释放第一行,all to all
如果是大规模的实现集群和session共享,要使用tomcat默认的配置。
Caused by: java.net.SocketException: No such device
一直包没有设备异常,最后上网百度,得知:
搭建环境参考博客地址:
http://blog.csdn.net/chaijunkun/article/details/6987443
解决session共享问题,实现组播路由地址
http://www.myexception.cn/apache/668998.html
tomcat集群和负载均衡的实现(session同步)补充
因为tomcat的session同步功能需要用到组播,windows默认情况下是开通组播服务的,但是linux默认情况下并没有开通,
可以通过指令打开route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0,
如果需要服务器启动时即开通组播需在/etc/sysconfig/static-routes文件内加入eht0 net 224.0.0.0 netmask 240.0.0.0。具体组播概念
请查阅CCNP相关内容。