Web服务器基于Apache集群与负载均衡之Tomcat篇.doc
《Web服务器基于Apache集群与负载均衡之Tomcat篇.doc》由会员分享,可在线阅读,更多相关《Web服务器基于Apache集群与负载均衡之Tomcat篇.doc(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Web服务器基于 Apache集群与负载均衡之Tomcat篇 编制: 桂双林 日期: 2012年1月 审核: 日期: 批准: 日期: 汇签: 修订记录版本状态修订内容实施日期编制审核批准A0起草2012年1月桂双林目录1背景31.1集群背景与发展31.2集群与云计算42TOMCAT集群原理52.1Tomcat集群组件52.2Tomcat集群结构53安装运行环境63.1准备安装软件63.2安装Apache63.3安装Tomcat63.4安装JK组件64TOMCAT负载均衡74.1Tomcat端口配置74.2Apache配置84.3平均请求测试104.4邦定请求测试125TOMCAT集群155.1
2、Apache配置155.2Tomcat配置155.3测试工程配置165.4集群之后测试171 背景群集技术与研究方向目前已非常成熟,本文不对集群技术再做详细介绍,也不对集群中的服务器硬件、网络适配器、第五层交换、第七层交换技术做讲述,直接以WEB集群的例子来展现集群技术的简单应用。1.1 集群背景与发展本文的集群指WEB服务器集群,只是集群技术中很小的分支。随着业务与需求的增长WEB服务器访问量不断的增加,客户对产品的负载能力与稳定性随之提高,在单一WEB服务器的架构中已经难以达到用户的需求,在进一步提高产品的质量外,需要寻求更可靠的技术支持。市场需要我们回答以下问题在产品稳定的情况下,如何面
3、对不断增长的访问量?在现有硬件的基础下,如何更进一步发挥硬件的性能?WEB应用突发停止后,如何保证继续为客户提供服务?在更换新版本系统时,如果保证不间断的提供服务? 上面的问题是在所有WEB系统开发、运行、维护过程中都会碰到的问题。如果要解决这个问题则首先要采用:WEB服务器系统集群技术。系统集群在技术上还有很多问题尚未解决,不过,对于基本的WEB集成解决方案业界已经有了成熟的技术。采用集群技术之后解决WEB服务器容量带来的巨大挑战,服务器资源终究是有限的,大容量服务器对用户来说是一笔巨大的开支,也无法保障原来的投入,同时也解决不了根本问题。WEB系统集群技术为系统容量、扩展问题提供了良好的途
4、径,同时又能保护用户的投资,它能把一组服务器通过一定形式组织起来,对外提供强大的服务能力,也能在同一服务器上部署多个相同系统集群充分挖掘服务器的潜力。这种结构具有很高的性价比和良好的可靠性,并且可以通过增加虚拟服务器与物理服务器的方式不断的扩充系统容量,因此,WEB服务器集群已经成为构建大型网站系统的关键技术之一。1.2 集群与云计算集群是一个非常专业的学科,专业化的集群需要非常特殊的硬件与软件支持,在复杂的集群中有些几乎需要设置相同的硬件,并且运行特殊的操作系统版本才能保证他们同步。如果在网络底层进行集群还需要使用特殊的网络适配器来保证集群计算机的高速数据同步,要把不同地区的服务器集群还需要
5、高速专用网络的支持。数据同步方面,在集群WEB服务器时其中最典型的一点就是服务器间的Session同步问题。集群对各种条件要求比较高,它能实现高可用性,高稳定性,虚拟存储管理,服务器故障平滑转移及灾难恢复等复杂的应用,但是复杂的集群实现成本非常高,又难以对外提供商业化服务是阻碍其发展的重要原因。云计算是从集群技术、网络计算、分布式计算等技术发展起来的一种新应用服务形式,是建立在原来的基础之上隔离了集群技术的复杂性,直接以服务的形式交付给客户使用。从应用上来说云是位于集群、分布式技术等等的上层,它把硬件、软件、操作系统与用户隔离,用户看到的只是公开的网络服务、是可选择的网络商品,不需要了解背后采
6、用什么技术、使用什么操作系统等等。隔离了复杂技术的云计算,重点关注的是对外提供高质量的商业服务。2 TOMCAT集群原理2.1 Tomcat集群组件操作系统:WindowsHttp服务器:Apache Apache模块:Mod_JK Web服务器:Tomcat 2.2 Tomcat集群结构Tomcat集群主要包括三大部分 Apache,JK,Tomcat,三者之间的关系与处理过程如下图。HTTP请求客户请求ApacheJKTomcat1Tomcat2Tomcat 分配请求、负载均衡、服务器运行状态等Session复制、数据同步等集群管理3 安装运行环境3.1 准备安装软件操作系统:window
7、s(本文只测试了windows环境)Http服务器:Apache 版本为httpd-2.2.21-win32-x86-openssl-0.9.8r.msi,下载地址 http:/httpd.apache.org/Apache模块:Mod_JK 版本为mod_jk-1.2.31-httpd-2.2.3.so,下载地址 http:/archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/ 注意下载版本JK后所注明的http服务器版本一定要与 Apache版本相同或相近。Web服务器:Tomcat版本这里采用 Tomcat
8、5.0.28是比较老的版本,也可以采用 5.5.X或6.X等新版本,下载地址 http:/tomcat.apache.org/ 下载压缩版,这样便于复制安装。3.2 安装Apache下载完成之后,运行程序安装Apache,只要按默认设置进行安装即可,安装位置可以自己选择,本文安装目录为:D:Program FilesApache Software FoundationApache2.2。默认安配置装的Apache是 80端口为HTTP端口。3.3 安装Tomcat本文要集群三个独立的Tomcat,所以把下载后的压缩包解压后复制三份到不同目录,本文目录为:D:Tomcat5.0_8080; D:
9、Tomcat5.0_8081 ; D:Tomcat5.0_8082 。3.4 安装JK组件以本文为例把JK组件包mod_jk-1.2.31-httpd-2.2.3.so复制到Apache目录D:Program FilesApache Software FoundationApache2.2modules 下。4 TOMCAT负载均衡4.1 Tomcat端口配置安装环境之后,本文中Apache服务器要与3个Tomcat进行集成,为方便测试3个Tomcat都运行在同一台机器上,为了解决Tomcat端口冲突问题必须重新进行设置,端口分配如下表:downhttpajpproxy原始默认值8005808
10、080098082Tomcat_1_80808010808080208090Tomcat_2_80818011808180218091Tomcat_3_80828012808280228092如果三台服务器运行在不同的电脑中则不需要修改。找到Tomcat配置文件修改端口,Tomcat配置文件目录为Tomcat5.0confserver.xml 依次修改D:Tomcat5.0_8080 , D:Tomcat5.0_8081 , D:Tomcat5.0_8082中的配置文件,用记事本打开文件直接采用查找替换方式,按上表把原来的四个端口修改成新值。注意事项:server.xml 配置文件中proxy
11、 的8020端口内容是被注释掉的,需要去掉注释。完成修改后,测试运行3个Tomcat如下图:正常启动后,请注意各服务器的端口是不是正确的配置,如果没问题,则这部分配置顺利完成。4.2 Apache配置1 找到Apache服务器配置文件D:Program FilesApache Software FoundationApache2.2conf httpd.conf 2 用记事本打开httpd.conf文件,在最后增加一行代码:Include conf/mod-jk.conf 3 在httpd.conf文件同目录下创建mod-jk.conf 文件,全部代码如下:#加载mod_jk模块,注意名称与m
12、odules目录下的文件名保持一致.LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.3.so#指定workers.properties文件目录.JkWorkersFile conf/workers.properties#指定那些请求交给tomcat处理,controller为workers.propertise文件里指定的负载控制器.JkMount /* controller#JkMount /*.html controller#JkMount /*.jsp controller#JkMount /*.do controllerJkMo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Web 服务器 基于 Apache 集群 负载 均衡 Tomcat
限制150内