您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > eb服务器集群负载均衡技术
Web服务器集群环境配置与测试搭建环境软硬件环境的搭建(1)服务器有4台,一台安装apache,三台安装tomcat。(2)服务器的操作系统都是WindowsXP。(3)其中安装apache的服务器充当负载均衡器,其它三台是给用户真正服务的服务器。(4)IP配置,一台安装apache的IP为219.218.22.130,三台安装tomcat的服务器IP分别为219.218.22.131/132/133。3.1.2软件的安装与配置1)安装tomcat的服务器的配置(1)在三台安装tomcat的服务器上安装jdk。(2)配置jdk的安装路径,在环境变量path中加入jdk的bin路径,新建环境变量JAVA_HOME指向jdk的安装路径。(3)在三台要安装tomcat的服务器上分别安装tomcat,调试三个tomcat到能够正常启动。(4)tomcat的默认WEB服务端口是8080,默认的模式是单独服务,我配置的三个tomcat的Web服务端口修改为7080/8888/9999。修改位置为tomcat的安装目录下的conf/server.xml在文件中找到下面的语句:Connectorport=8080maxHttpHeaderSize=8192maxThreads=150minSpareThreads=25maxSpareThreads=75enableLookups=falseredirectPort=8443acceptCount=100”connectionTimeout=20000disableUploadTimeout=true/只需改动Port=”8080”为上面提到的端口号就行,对安装tomcat的三个服务器这个文件做改动。2)负载均衡服务器配置1(1)在那台要安装apache的服务器上安装apache,我的安装路径为默认C:\ProgramFiles\ApacheGroup\Apache2。(2)安装后测试apache能否正常启动,调试到能够正常启动http://219.218.22.130。(3)下载jk2.0.4后解压缩文件。(4)将解压缩后的目录中的modules目录中的mod_jk2.so文件复制到apache的安装目录下的modules目录中。(5)修改apache的安装目录中的conf目录的配置文件httpd.conf,在文件中LoadModule模块配置信息的最后加上一句LoadModulejk2_modules/mod_jk2.so。(6)分别修改三个tomcat的配置文件conf/server.xml在文件中找到下面的语句Enginename=”Standalone”defaultHost=”localhost”jvmRoute=”jvm1”只需改动jvmRoute的值,在这里分别改为tomcat1,tomcat2和tomcat3。3)均衡服务器的配置2在apache的安装目录中的conf目录下创建文件workers2.propertie,写入文件内容如下:#finethecommunicationchannel[channel.socket:219.218.22.130:8009]Info=Ajp13forwardingoversocket#配置第一个服务器tomcatId=tomcat1#要和tomcat的配置文件server.xml中的jvmRoute=tomcat1名称一致debug=0lb_factor=1#负载平衡因子,数字越大请求被分配的几率越高。类似地再配置其它的服务器。最后加上这样的句子info=Statusworker,displaysruntimeinformation[uri:/jkstatus.jsp]info=Displaystatusinformationandcheckstheconfigfileforchanges.Group=status:[uri:/*]info=MapthewholeWebappdebug=04)安装tomcat的服务器配置2在三个tomcat的安装目录中的webapps建立相同的应用,我和应用目录名为GroupTest,在三个应用目录中建立相同WEB-INF目录和页面index.jsp,index.jsp的页面的主要内容是打印出为客户服务的服务器的IP地址和端口号,当然还有其它一些内容,最主要的是这些内容,这样当我们在测试的时候也方便地知道为其提供服务的服务到底是哪一个服务器,这个信息是非常重要的,这样我们能看出当大量用户访问的时候我们能知道负载分配的情况。5)集群配置分别修改三个tomcat的配置文件conf/server.xml找到以下面语句开始的地方:!--ClusterclassName=org.apache.catalina.cluster.tcp.SimpleTcpCluster”ClusterListenerclassName=org.apache.catalina.cluster.session.ClusterSessionListener//Cluster--将最上,最下面的一行都改为!--modifybywhh--就可以了。然后再在Conf目录下建立jk2.properties文件,写入下面一行,其中端口为相应的channelSocket.port=80096)集群应用配置对于要进行负载和集群的tomcat目录下的webapps中的应用中的WEB-INF中的web.xml文件要添加如下一句配置distributable/到此为止配置完成剩下的就是测试环境的测试(1)首选分别测试每个tomcat的启动是否正常。http://219.218.22.131:7080http://219.218.22.132:8888http://219.218.22.133:9999(2)其次测试一下负载均衡服务器http://219.218.22.130/jkstatus.jsp再访问一下http://219.218.22.130/GroupTest/index.jsp以上测试成功,这说明负载均衡配置已经成功。3.3集群系统负载均衡测试利用多个客户端访问页面index.jsp[5][7][8],能够在客户端的浏览器中看到为其提供服务的服务器的IP地址和端口,以及其它一些信息。这说明,在并发请求的情况下,集群能够将请求进行分发,达到了负载平衡的目的。下面是本实验测试的一些数据,详细内容如表格所示:客户端数量服务器A,B,C权值服务器A,B,C处理请求数量30.5,0.8,0.31,2,040.5,0.8,0.31,2,170.5,0.8,0.32,3,2120.5,0.8,0.34,6,2190.5,0.8,0.36,9,43.4集群系统负载均衡测试分析由上面的表格可知,当增加客户端的访问数量的时候我们可以发现设置权值在的服务器处理的请求个数多,这说明这个负载均衡系统达到了我们的预定目标,这样的系统也适用于集群中的服务器处理能力不一致的情况。此系统具有良好的适应能力,非常好地解决了在单机思想下无法解决的系统瓶颈问题。3.5本系统的不足之处本系统在除了有单机思想不能比拟的优点之处,也有自己的不足之处,比如本系统不能根据每个服务器的实际运行情况动态地调整集群中的每一个服务器权值,因此当有大量的用户同时访问时并不能真正的做到绝对的负载均衡,只能相对比较均匀地将负载分配到集群中的每一个服务器中去。所以本系统也有待于进一步优化,比如实时地搜集每一服务器的信息,做到动态地调整每一个服务器的权值,有关系统的进一步优化问题,将做进一步的研究。
本文标题:eb服务器集群负载均衡技术
链接地址:https://www.777doc.com/doc-2910902 .html