keepalived+httpd+tomcat实现高可用负载均衡
2015-07-25 14:36
639 查看
一、环境
centos 6.5
keepalived keepalived-1.2.19.tar.gz
httpd httpd-2.4.12.tar.gz
tomcat apache-tomcat-7.0.63.tar.gz
二、部署
安装 httpd
配置httpd
安装Apache Tomcat Connector(mod_jk)
tar -zxvf tomcat-connectors-1.2.40-src.tar.gz
cd tomcat-connectors-1.2.40-src/native/
./buildconf.sh
这里会提示缺少autoconf
autoconf not found.
You need autoconf version 2.59 or newer installed to build mod_jk from SVN.
yum -y install autoconf
然后,我们继续./buildconf.sh
靠,还让不让人活啊,又缺少libtool
libtool not found.
You need libtool version 1.4 or newer installed to build mod_jk from SVN.
yum -y install libtool
接着./buildconf.sh
./configure –with-apxs=/usr/local/apache2/bin/apxs
make && make install
如果成功结束,你可以在/usr/local/apache2/modules/下找到mod_jk.so文件。
安装tomcat
需要修改配置文件server.xml,
在
在后添加如下内容
centos 6.5
keepalived keepalived-1.2.19.tar.gz
httpd httpd-2.4.12.tar.gz
tomcat apache-tomcat-7.0.63.tar.gz
二、部署
安装 httpd
tar -zxvf httpd-2.4.12.tar.gz cd httpd-2.4.12 ./configure --prefix=/usr/local/apache2 --enable-mods-share=all 这里会报错提示: configure: error: APR not found. Please read the documentation. 解决办法如下: 到Apache官网下载缺少的软件包,下载地址http://apr.apache.org/download.cgi 下载 apr-1.5.2.tar.gz apr-util-1.5.4.tar.gz 安装缺少的依赖的软件包 tar -zxvf apr-1.5.2.tar.gz cd apr-1.5.2 ./configure --prefix=/usr/local/apr 这里会提示没有gcc 提示内容如下 checking for chosen layout... apr checking for gcc... no checking for cc... no checking for cl.exe... no configure: error: in `/opt/httpd/apr-1.5.2': configure: error: no acceptable C compiler found in $PATH See `config.log' for more details 需要添加gcc支持 yum -y install gcc yum -y install gcc-c++ 完成之后我们接着安装apr ./configure --prefix=/usr/local/apr make && make install tar -zxvf apr-util-1.5.4.tar.gz cd apr-util-1.5.4 ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config make && make install 然后接着配置httpd ./configure --prefix=/usr/local/apache2 --enable-mods-share=all 在这个后面添加 -with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util 合起来之后是 ./configure --prefix=/usr/local/apache2 --enable-mods-share=all -with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util 好无语到了这里竟敢有提示缺少依赖包!!! 提示内容如下: configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org 没办法我们接着添加依赖,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=/usr/local/pcre make && make install 然后,我们接着装httpd ./configure --prefix=/usr/local/apache2 --enable-mods-share=all -with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre/bin/pcre-config 终于完成配置了! make && make install
配置httpd
vim /usr/local/apache2/conf/httpd.conf 在其中添加 # Load mod_jk module LoadModule jk_module modules/mod_jk.so # Specify jk log file. JkLogFile /log/httpd/mod_jk.log JkShmFile /var/log/httpd/mod_jk.shm # Specify jk log level [debug/error/info] JkLogLevel info # Specify workers.properties, this file tell jk: # how many nodes and where they are. JkWorkersFile /opt/tomcat/conf/workers.properties # Specify which requests should handled by which node. JkMount /* controller 并且放开 # Server-pool management (MPM specific) Include conf/extra/httpd-mpm.conf 这里是配置httpd并发数,他有三种工作模式 Apache Prefork、Worker和Event!详细可参阅其他的文章 或者是参考官方文档(http://httpd.apache.org/docs/2.4/mod/mpm_common.html) 这里特别提醒如果想支持并发数超过400的需要添加 ServerLimit 256这个属性,这个支持最大并发数6400 如果还需要更大则需要从新编译httpd! 在启动httpd的时候发现没有成功可以到httpd的日志中查看原因!!!
安装Apache Tomcat Connector(mod_jk)
tar -zxvf tomcat-connectors-1.2.40-src.tar.gz
cd tomcat-connectors-1.2.40-src/native/
./buildconf.sh
这里会提示缺少autoconf
autoconf not found.
You need autoconf version 2.59 or newer installed to build mod_jk from SVN.
yum -y install autoconf
然后,我们继续./buildconf.sh
靠,还让不让人活啊,又缺少libtool
libtool not found.
You need libtool version 1.4 or newer installed to build mod_jk from SVN.
yum -y install libtool
接着./buildconf.sh
./configure –with-apxs=/usr/local/apache2/bin/apxs
make && make install
如果成功结束,你可以在/usr/local/apache2/modules/下找到mod_jk.so文件。
安装tomcat
需要修改配置文件server.xml,
在
在后添加如下内容
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="8"> <Manager className="org.apache.catalina.ha.session.DeltaManager" expireSessionsOnShutdown="false" notifyListenersOnReplication="true" /> <Channel className="org.apache.catalina.tribes.group.GroupChannel"> <Membership className="org.apache.catalina.tribes.membership.McastService" address="228.0.0.4" port="45564" frequency="500" dropTime="3000" /> <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver" address="auto" port="4000" autoBind="100" selectorTimeout="5000" maxThreads="6" /> <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter"> <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender" /> </Sender> <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector" /> <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor" /> </Channel> <Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter="" /> <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve" /> <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer" tempDir="/tmp/war-temp/" deployDir="/tmp/war-deploy/" watchDir="/tmp/war-listen/" watchEnabled="false" /> <ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener" /> <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener" /> </Cluster>
相关文章推荐
- java-模拟tomcat服务器
- i-jetty环境搭配与编译
- 实现单Tomcat多Server配置
- 生产环境下的Tomcat配置
- tomcat在opensuse下开机自启失败的原因分析及解决方法
- jsp项目中更改tomcat的默认index.jsp访问路径的方法
- Tomcat 多端口 多应用
- tomcat 5.0 + apache 2.0 完全安装步骤详解
- Tomcat安全设置 win2003 下tomcat权限限制
- Jsp和PHP共用80端口整合Apache和Tomcat(访问时无需加端口号)
- Tomcat服务器 安全设置第1/3页
- tomcat 6.0.20在一个机器上安装多个服务的方法
- Tomcat 5.5 数据库连接池配置
- Tomcat内存溢出分析及解决方法
- apache tomcat 一个网站多域名的实现方法
- Tomcat无法加载css和js等静态资源文件的解决思路
- Apache与Tomcat服务器整合的基本配置方法及概要说明
- tomcat 5.5连接池配置,如何让工程为默认工程
- eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池