APACHE-TOMCAT集群环境部署

—————————————————–Shanks

———————————————————————————————————————-

本集群不涉及session同步,但是会记录session会话。

1.1 OS:linux RedHat5u51.2 Soft:

httpd-2.2.17.tar.gz下载地址:http://httpd.apache.org/download.cgi

apache-tomcat-5.5.17.tar.gz下载地址:http://tomcat.apache.org/download-60.cgi

jdk1.6.0_22下载地址:http://java.sun.com/javase/downloads/previous.jsp

tomcat-connectors-1.2.31-src.tar.gz http://tomcat.apache.org/download-connectors.cgi

1.2.1 soft说明

apache:没啥说的,提供web jdk:java环境

tomcat:java容器 jk:调度器

1.3 安装部署步骤1.3.1 部署前准备

由于我在部署前发现在/usr/local/下跑着一个tomcat,所以只得新建个用户wangpo,在wangpo家目录下安装配置。这块需要注意的就是一个权限。部署结束时wangpo~目录下有4个目录:apache_test src tomcat_test1 tomcat_test2,apache_test是apache的主目录,在这个目录中,htdocs也就是web-root目录的权限要是wangpo.wangpo的,其他的目录权限可以是root的,并且我将apache的运行用户和用户组都改成了wangpo;tomcat_test1和tomcat_test2是tomcat主目录,这两个目录的所属者、组都是wangpo。到此,前期准备结束。

1.3.2 Jdk

其实由于之前已经有过java环境,所以不需要再次部署,不过我还是写上步骤

#chmod 755 jdk-1_5_0_16-linux-i586.bin
#./jdk-1_5_0_16-linux-i586.bin
# mv jdk-1_5_0_16 /usr/local/
到此JDK已经安装完成

到/usr/bin目录下,把原用的java,javac文件删除:

最好先备份
rm -rf java
rm -rf javac
在/usr/bin 下建立 软连接 java

ln -s /usr/local/jdk-1_5_0_16/bin/java /usr/bin/java
ln -s /usr/local/jdk-1_5_0_16/bin/javac /usr/bin/javac

测试下,shell>java;javac

为了方便下在的工作建立两个软链接:
ln -s /usr/local/jdk-1_5_0_16 /usr/local/jdk
ln -s /usr/local/jdk-1_5_0_16/jre /usr/local/jre

设置环境变量

JAVA_HOME=/usr/local/jdk
export JAVA_HOME
JRE_HOME=/usr/local/jre
export JRE_HOME
CLASSPATH=/usr=/usr/local/tomcat/common/lib/:/usr/local/jdk/lib:/usr/local/jre/lib
export CLASSPATH
PATH=$PATH:/home/wangpo/tomcat_test1/bin/:/home/wangpo/tomcat_test2/bin/:/home/wangpo/apache_test/bin:/usr/local/jdk/bin:/usr/local/jre/bin
export PATH

1.3.3 Apache

安装

我的apache开的是81端口,测试嘛,无所谓,不过在生产环境中最好改成大号,要不老是root启动,op得烦死。

tar zxf httpd-2.2.17.tar.gz && cd http -2.2.17

./configure –prefix=/usr/local/apache2 –enable-mods-shared=all –enable-cgi –enable-rewrite –with-mpm=worker –enable-module=most –enable-proxy –enable-proxy-ajp –enable-forward –enable-proxy-connect –enable-proxy-http –enable-so –enable-deflate –enable-headers –enable-include

上面的如果不行,执行这个

./configure –prefix=/usr/local/apache2 –enable-module=most –enable-proxy –enable-rewrite –with-mpm=worker –enable-proxy-ajp –enable-forward –enable-proxy-connect –enable-proxy-http –enable-so –enable-deflate –enable-headers –enable-include

# ./configure –prefix=/usr/local/apache2 –enable-so (备份原始记录)

#./configure –prefix=/usr/local/apache2 –enable-so –enable-ssl –enable-rewrite –with-ssl=/usr/local/ssl –enable-ssl=shared (安装 open ssl 用到的安装方法) (按这个要求安装)

#./configure –prefix=/usr/local/apache2 –enable-rewrite –with-ssl=/usr/local/ssl –enable-ssl=shared (CA 的要求)

配置

Cd /home/wangpo/apache_test/conf

Vim http.conf

—————————————————————————————————————

LoadModule jk_module modules/mod_jk.so #调用jk模块

<VirtualHost 172.22.1.82:81> #建个虚拟主机

DocumentRoot /home/wangpo/apache_test/htdocs

Errorlog ”/home/wangpo/apache_test/logs/tom_test_error.log”

JkMount /*.jsp controller #去找controller调度器

JkMount /*.txt controller

</VirtualHost>

JkWorkersFile conf/workers.properties #调度文件的位置

JkRequestLogFormat “%w %V %T %r”

JkLogFile “/home/wangpo/apache_test/logs/mod_jk.log”

JkLogLevel error

JkOptions +ForwardURICompatUnparsed

Vim workers.properties

worker.list=controller

#========worker1========

worker.worker1.port=8010

worker.worker1.host=172.22.1.82

worker.worker1.type=ajp13

worker.worker1.lbfactor = 1

#========worker2========

worker.worker2.port=8011 #tomcat端AJP监听的端口

worker.worker2.host=172.22.1.82 #主机名也行

worker.worker2.type=ajp13 #用AJP-13协议

worker.worker2.lbfactor = 1 #权重

#========controller,负载均衡控制器========

worker.controller.type=lb #调度算法

worker.controller.balance_workers=worker1,worker2 #这里的worker1只要与此文件里的一致就行,不用在tomcat上做任何调整

worker.controller.sticky_session=1 #开启会话记录,同一session找同一个tomcat,true和1都行

1.3.4 Jk

tar zxf tomcat-connectors-1.2.31-src.tar.gz&&cd tomcat-connectors-1.2.31-src/native

./buildconf.sh

./configure –with-apxs=/home/wangpo/apache_test/bin/apxs&&make && make install

之后就会在/home/wangpo/apache_test/modules下生成mod_jk.so

1.3.5 Tomcat

tar zxf apache-tomcat-5.5.17.tar.gz

mv apache-tomcat-5.5.17 /home/wangpo/tomcat_test1

cp /home/wangpo/tomcat_test1 /home/wangpo/tomcat_test2

—————————————————————————————————————-

vim /home/wangpo/tomcat_test1/conf/server.xml

<Server port=”8006″ shutdown=”SHUTDOWN”> #把8005改成8006

<Connector port=”8081″ maxHttpHeaderSize=”8192″ #把8080改成8081

<!– Define an AJP 1.3 Connector on port 8009 –> #把8009改成8010

<Connector port=”8010″

—————————————————————————————————————

vim /home/wangpo/tomcat_test2/conf/server.xml

<Server port=”8007″ shutdown=”SHUTDOWN”> #把8005改成8007

<Connector port=”8082″ maxHttpHeaderSize=”8192″ #把8080改成8082

<!– Define an AJP 1.3 Connector on port 8009 –> #把8009改成8011

<Connector port=”8011″

如果需要session记录则需要改jvm标识,要与apache中jk调度文件内的记录一致

<Engine name=”Catalina” defaultHost=”localhost” jvmRoute=”worker1″>

不需要的话那就算了,就不用调整了。。。

1.4 启动服务

Cd /home/wangpo/apache_test/bin&&./apachectl start 之后检查81端口

Cd /home/wangpo/tomcat_test1/bin&&./startup.sh 检查8006、8081、8010

Cd /home/wangpo/tomcat_test2/bin&&./startup.sh 检查8007、8082、8011

1.5 负载均衡的测试

Apache

——————————————————————————————————————-

Cd /home/wangpo/apache_test/htdocs&&vim index.html

<html><body><h1>It a test for tomcat!</h1></body></html>

<p><a href=”http://lalalalalal:81/tom_test/test.jsp”>tomcat_test</a></p>

——————————————————————————————————————-

Tomcat-1

Cd /home/wangpo/tomcat_test1/webapps&&mkdir tom_test && chown –R wangpo.wangpo tom_test && cd tom_test &&vim test,jsp

<HTML>

<HEAD>

<TITLE>JSP测试页面</TITLE>

</HEAD>

<%out.println(“<h1>Hello World! tom111111111111111111111111</h1>”);%>

</HTML>

——————————————————————————————————————

Tomcat-2

Cd /home/wangpo/tomcat_test2/webapps&&mkdir tom_test && chown –R wangpo.wangpo tom_test && cd tom_test &&vim test,jsp

<HTML>

<HEAD>

<TITLE>JSP测试页面</TITLE>

</HEAD>

<%out.println(“<h1>Hello World! Tom22222222222222</h1>”);%>

</HTML>

之后访问

http://lalalalalal:81 —à访问apache的index.html

或者直接访问jsp页面

http://lalalalalal:81/tom_test/test.jsp 如果刷新后111111和22222交替出现就ok了

不过如果当前环境下开启了session记录的话,在同一session下看到的只会是一个页面。

转载于:https://blog.51cto.com/shanks/1307641

APACHE-TOMCAT集群环境部署相关推荐

  1. apache+tomcat集群环境搭建

    apache+tomcat集群环境搭建 1. 什么是集群         简单理解就是:将项目同时部署在多台服务器上(tomcat)运行,通过一个web服务器(Apache/nginx)进行请求分发和 ...

  2. Nginx+Tomcat集群环境搭建

    Tomcat集群能带来什么? 提高服务的性能.并发能力.以及高可用性 提高项目架构的横向扩展能力 提高服务的性能 实际公司线上生产环境都会选择一台机器部署一个tomcat,多台机器完成集群,毕竟一台机 ...

  3. kafka 基础知识梳理及集群环境部署记录

    一.kafka基础介绍 Kafka是最初由Linkedin公司开发,是一个分布式.支持分区的(partition).多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特 ...

  4. centos6.5环境下zookeeper-3.4.6集群环境部署及单机部署详解

    centos6.5环境下Zookeeper-3.4.6集群环境部署 [系统]Centos 6.5 集群部署 [软件]准备好jdk环境,此次我们的环境是open_jdk1.8.0_101 zookeep ...

  5. Apache + Tomcat集群配置详解(1)

    Apache + Tomcat集群配置详解(1) 一.软件准备 Apache 2.2 : http://httpd.apache.org/download.cgi,下载msi安装程序,选择no ssl ...

  6. SUSE11 Oracle11gR2 RACASM双机集群环境部署

    Oracle RAC集群环境部署 一. 安装前准备 (1) Linux系统版本 SUSE Linux Enterprise Server 11 (x86_64) (2) Oracle database ...

  7. 现学现用大数据分布式集群环境部署

    导读:        随着大数据时代的到来,传统的GIS分析工具越来越难以满足对超大体量空间数据的分析需求.SuperMap iServer 9D(本文简称iServer)实现了地理信息服务的分布式集 ...

  8. 传统分布式架构部署(apache+tomcat集群)

    背景: 单一服务器部署应用在往往随着应用人数的增加和频率的提高及后续数据量的增大会达到瓶颈,服务器会出现卡顿.崩溃等情况:所以在不改变应用结构的情况下只能进行部署架构上的变化,即使用apache(Ap ...

  9. Pinpoint 集群环境部署

    前期准备 节点准备 本次节点列表如下: Ip Hostname 角色 192.168.2.131 pinpointNode1 hbase master节点:NameNode:pinpoint coll ...

最新文章

  1. imagick API 中文说明
  2. smarty安装与配置
  3. 中国采盐行业运营效益分析与项目投资可行性研究报告2022-2028年
  4. ubuntu上训练yolov3: Caught ValueError in DataLoader worker process 0. string indices must be integers.
  5. javascript一些底层方法总结及用法
  6. 今天上网感觉有点儿卡,上了路由器一看,数据包狂跳
  7. Linux下DIR,dirent,stat等结构体详解
  8. 【三边定位】 演示程序V0.1
  9. 全国植被覆盖度VFC逐月数据
  10. 【转】SD和SDHC和SDXC卡的区别
  11. 信息爆炸,物质丰富,你不得不知的奥卡姆剃刀原则
  12. 计算机视觉算法面试准备
  13. 华为鸿蒙会没有广告,为什么华为会选择不做任何预告突然发布鸿蒙系统?
  14. canvas画圆和线条动画
  15. 2021国产数据库领域最具商业合作价值企业盘点
  16. 3D 建模费时费力,Python 让照片秒变模型
  17. 路由器桥接chinanet拨号共享
  18. FPGA学习之数模转换(TLC5620)(通过4个按键输入,输出数模转换需要的数据和数码管显示需要的数据)
  19. python 学习分享之简单的播放音乐1(playsound)
  20. 你不知道的Redis数据结构

热门文章

  1. WebKit和Chrome源码分析
  2. 案例实作图解Asp.Net MVC教程
  3. php 循环从数据库分页取数据批量修改数据
  4. BZOJ 2744: [HEOI2012]朋友圈
  5. SqlHelper简单实现(通过Expression和反射)2.特性和实体设计
  6. android文件缓存,并SD卡创建目录未能解决和bitmap内存溢出解决
  7. 004-流程控制和类型转换
  8. 【android】错误集锦及解决办法
  9. ASP.NET页面的CheckBoxList组件
  10. 107条javascript常用小技巧