一、安装jdk、Tomcat、Apache

1.安装jdk1.7

cd /home/java/software  #把软件下载到/home/java/software目录下,将应用安装到/home/java目录下。
wget http://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz
tar -zxvf jdk-7u80-linux-x64.tar.gz
mv jdk1.7.0_80 ../jdk1.7

2.安装Tomcat7

wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.63/bin/apache-tomcat-7.0.63.tar.gz
tar -zxvf apache-tomcat-7.0.63.tar.gz
mv apache-tomcat-7.0.63 ../Tomcat7

3.设置JAVA_HOME、PATH、CLASSPATH

vim /etc/profile  #在文件尾部加入如下内容:
export JAVA_HOME=/home/java/jdk1.7
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source /etc/profile  #使修改生效

4.给Tomcat设置JRE_HOME和JAVA_OPTS

cd /home/java/Tomcat7
vim bin/catalina.sh  #加入如下内容:
#JRE_HOME
JRE_HOME=/home/java/jdk1.7/jre
export JRE_HOME
#JAVA_OPTS
JAVA_OPTS="-Xms1024m -Xmx1024m"  #设置Java运行内容为1024M
export JAVA_OPTS

5.设置Tomcat编码

vim conf/server.xml  #在Connector标签里加入URIEncoding="UTF-8"
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"redirectPort="8443" URIEncoding="UTF-8"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"/>

6.安装Apache要指定apr、apr-util和pcre,所以要先安装这三个软件再安装apache。

#1.安装apr
cd /home/java/software  #把软件下载到/home/java/software目录下,将应用安装到/home/java目录下。
wget http://mirrors.hust.edu.cn/apache//apr/apr-1.5.2.tar.gz
tar -zxvf apr-1.5.2.tar.gz
cd apr-1.5.2
./configure --prefix=/home/java/apr
make
make install
cd ..
#2.安装apr-util
wget http://mirrors.hust.edu.cn/apache//apr/apr-util-1.5.4.tar.gz
tar -zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure --prefix=/home/java/apr-util --with-apr=/home/java/apr
make
make install
cd ..
#3.安装pcre
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.37.tar.gz
tar -zxvf pcre-8.37.tar.gz
cd pcre-8.37
./configure --prefix=/home/java/pcre
make
make install
cd ..
#4.安装apache
wget http://mirrors.cnnic.cn/apache//httpd/httpd-2.4.16.tar.gz
tar -zxvf httpd-2.4.16.tar.gz
httpd-2.4.16
./configure --prefix=/home/java/Apache2.4 --with-apr=/home/java/apr --with-apr-util=/home/java/apr-util --with-pcre=/home/java/pcre
make
make install
#5.默认配置的httpd就可以启动了,但会报httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message的警告,所以要在httpd.conf里指定ServerName。
cd /home/java/Apache2.4
vim conf/httpd.conf  #加入如下内容:
ServerName localhost:80

二、安装jk

cd /home/java/software  #把软件下载到/home/java/software目录下,将应用安装到/home/java目录下。
wget http://apache.fayea.com/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.40-src.tar.gz
tar -zxvf tomcat-connectors-1.2.40-src.tar.gz
cd tomcat-connectors-1.2.40-src/native/
./configure --with-apxs=/home/java/Apache2.4/bin/apxs  --with-java-home=/home/java/jdk1.7
make
make install

三、配置集群

1.配置jk_module模块,vim conf/httpd.conf增加如下内容

LoadModule jk_module modules/mod_jk.so
<IfModule jk_module>JkWorkersFile conf/workers.propertiesJkMount /* controller      #所有网页通过controller处理JkMount /jkstatus jkstatus   #访问http://IP/jkstatus来查看jkstatusJkLogFile logs/mod_jk.logJkLogLevel info
</IfModule>
<Location /jkstatus>Options MultiViewsAuthType BasicAuthName "Auther Center"AuthUserFile conf/.htpasswd  #认证用户存放文件require valid-user granted  #只有认证用户才可以访问
</Location>
将LoadModule rewrite_module modules/mod_rewrite.so前面#去掉。

2.在conf目录下vim workers.properties加入如下内容:

worker.list=controller,jkstatus
#========tomcat1========
worker.tomcat1.port=8009         #指定tomcat1服务器AJP的端口,默认为8009
worker.tomcat1.host=192.168.1.100 #指定tomcat1服务器IP或域名
worker.tomcat1.type=ajp13        #指定tomcat1与apache AJP通讯协议
worker.tomcat1.lbfactor=1       #指定负载平衡因数,只有启用了负载平衡才有用.
#========tomcat2========
worker.tomcat2.port=8009
worker.tomcat2.host=192.168.1.200
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=1  #========controller负载平衡控制器========
worker.controller.type=lb              #指定controller类型
worker.controller.balance_workers=tomcat1,tomcat2 #指定负载平衡的tomcat
worker.controller.sticky_session=1         #指定是否粘性session
worker.jkstatus.type=status
worker.jkstatus.read_only=1  #指定jkstatus为只读方式

3.修改每个tomcat的conf/server.xml

<Engine name="Catalina" defaultHost="localhost" jvmRoute="Tomcat1">
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="8"><Channel className="org.apache.catalina.tribes.group.GroupChannel"><Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"address="auto"port="4001"autoBind="100"selectorTimeout="5000"maxThreads="6"/></Channel>
</Cluster>

4.修改web应用里面WEB-INF目录下的web.xml文件,加入标签

<distributable/>

直接加在</web-app>之前就可以了
  做tomcat集群必须需要这一步,否则用户的session就无法正常使用。

5.添加jkstatus访问用户

bin/htpasswd -c conf/.htpasswd admin  #在conf目录建立.htpasswd文件并创建admin用户。
#之后会让你输入两次新用户admin的密码,最后通过[ls -al]就可以看到生成的密码文件了(它是隐藏文件,需要-a才能看到)
#第一次建立.htpasswd文件时候需要-c,以后添加其他用户时则不需要,如果加上-c则会把.htpasswd文件替换掉。
bin/htpasswd -m conf/.htpasswd admin  #修改admin用户登录密码
bin/htpasswd -D conf/.htpasswd admin  #删除admin用户

四、启动Tomcat和Apache

cd /home/java/Tomcat7
bin/startup.sh      #启动Tomcat
bin/shutdown.sh      #关闭Tomcat
cd /home/java/Apache2.4
bin/apachectl start   #启动Apache
bin/apachectl stop    #关闭Apache

五、参考文档

http://tomcat.apache.org/connectors-doc/reference/workers.html

http://tomcat.apache.org/tomcat-7.0-doc/cluster-howto.html

转载于:https://blog.51cto.com/liyong0802/1679055

Apache2.4+Tomcat7集群搭建相关推荐

  1. win 下 apache2.4 +tomcat7 集群

    为什么80%的码农都做不了架构师?>>>    反正每次来做一个不熟悉的东西,就是各种的search ,前一次去做过一个apache的东西,各种蛋疼,各种不能用.好多的东西也是比较旧 ...

  2. Zookeeper的Centos集群搭建

    一.Centos 集群搭建 服务器 端口 10.30.1.16 2181 2881 3881 10.30.1.37 2181 2881 3881 10.30.1.38 2181 2881 3881 1 ...

  3. redis安装、持久化、数据类型、常用操作、操作键值、安全设置、慢查询日志、存储session、主从配置、集群介绍、集群搭建配置、集群操作,php安装redis扩展...

    21.9 redis介绍 21.10 redis安装 21.11 redis持久化 21.12 redis数据类型 21.13/21.14/21.15 redis常用操作 21.16 redis操作键 ...

  4. twemproxy的安装及集群搭建

    linux环境-redis代理twemproxy的安装 安装twemproxy 1.下载redis代理源码到本地 2.安装 3.集群搭建 twemproxy(nutcracker)是一个快且轻量级的缓 ...

  5. Spark-----Spark 与 Hadoop 对比,Spark 集群搭建与示例运行,RDD算子简单入门

    目录 一.Spark 概述 1.1. Spark是什么 1.2. Spark的特点(优点) 1.3. Spark组件 1.4. Spark和Hadoop的异同 二.Spark 集群搭建 2.1. Sp ...

  6. 大数据调度平台Airflow(八):Airflow分布式集群搭建及测试

    目录 Airflow分布式集群搭建及测试 一.节点规划 二.airflow集群搭建步骤 1.在所有节点安装python3.7 2.在所有节点上安装airflow 三.初始化Airflow 1.每台节点 ...

  7. 2021年大数据Kafka(三):❤️Kafka的集群搭建以及shell启动命令脚本编写❤️

    全网最详细的大数据Kafka文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 Kafka的集群搭建以及shell启动命令脚本编写 一.搭建 ...

  8. 2021年大数据ZooKeeper(二):ZooKeeper集群搭建

    目录 ZooKeeper集群搭建 第一步:下载zookeeeper的压缩包,下载网址如下 第二步:解压 第三步:修改配置文件 第四步:添加myid配置 ​​​​​​​第五步:安装包分发并修改myid的 ...

  9. 基于zookeeper的solrCloud集群搭建

    转自:https://blog.csdn.net/yougoule/article/details/78445759  基于原文对实践遇到的问题稍作补充 1.安装及搭建相关环境 1.1环境准备 cen ...

最新文章

  1. matlab矩阵方块网络着色imshow_matlab中用imshow()显示图像与图像矩阵的数据类型的关系...
  2. todo文件说明已停止工作_番茄ToDo,一款颜值功能兼备的番茄钟。
  3. Where does the setting xx-bindingSuntax - complex take effect
  4. 5-1 unittest框架使用
  5. OpenCV学习笔记(十二):边缘检测:Canny(),Sobel(),Laplace(),Scharr滤波器
  6. 用户登录界面 - 记事本风格HTML代码
  7. from injection shell sql to_FROM SQL INJECTION TO SHELL: POSTGRESQL EDITION
  8. java挂黑链,挂黑链代码汇总
  9. 大一c语言作业操作题库,大学C语言考试题库(含答案)
  10. 微信设置字体后微信浏览器页面字体也会跟着改变的解决办法
  11. 程序员的奋斗史(三十三)——人在囧途之应聘篇(三)
  12. php 计费系统设计,仓储系统之计费模块设计
  13. 数据库技术-数据库概念设计
  14. win2008服务器系统玩红警,Win10系统不能玩红警2的解决方法
  15. 计算机在信息处理中的作品用,计算机信息处理技术在办公自动化中的运用
  16. 汉语计算机语言,从计算机编程语言说汉语的比较优势
  17. 实现两个变量的互换(不借助第三个变量)
  18. Docker推送镜像到自己的阿里云卡住,也不报错
  19. 我终于深入参与了一个分布式系统了,好多想法不一样了
  20. 一岁半宝宝不肯吃饭怎么办

热门文章

  1. matlab中help所有函数功能的英文翻译
  2. [转] Zend studio中开发常用
  3. 函数指针到文本反汇编
  4. 团队前四次作业——个人总结
  5. C#版 - Leetcode49 - 字母异位词分组 - 题解
  6. 大数据系列6:HBase – 基于Hadoop的分布式数据库
  7. edge.js架起node.js和.net互操作桥梁
  8. CQRS实践(3): Command执行结果的返回
  9. python构建json_如何使用Python构建JSON API
  10. vs2017 open从v_宣布#Open2017,这是面向开发人员的除夕直播流