设为首页 收藏本站
查看: 248|回复: 0

[经验分享] linux下配置apche2.2.6 && tomcat5.5集群

[复制链接]

尚未签到

发表于 2016-3-17 08:59:41 | 显示全部楼层 |阅读模式
linux下配置apche2.2.6 && tomcat5.5集群

到Apache官方网站下载所需要的文件:
httpd-2.2.6.tar.gz

apache-tomcat-5.5.23.tar.gz

mod_jk-1.2.27-httpd-2.2.6.so

一、安装apache

# tar xzvf httpd-2.2.6.tar.gz

# cd httpd-2.2.6

# ./configure --prefix=/usr/local/apache2 --enable-so
说明:--prefix为指定apache的安装路径(请按实际情况修改),其它项为预安装的模块, 除了 --enable-so 项外(--enable-so参数启用共享模块功能),可指定其它模块以后再安装

# make
# make install



二、复制mod_jk到modules

将 mod_jk-1.2.27-httpd-2.2.6.so放到apache下的modules文件夹下,并改名为mod_jk.so

注:mod_jk.so文件也可以在

http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/linux/下载。

(mod_jk-1.2.27-httpd-2.2.6.so is for Apache 2.2.x and works with Apache 2.2.6 and later;

如果这样则不需要编译tomcat-connectors-1.2.26-src.tar.gz。)

如果此处的mod_jk.so是通过其它方法或者途径得到的,在后面启动apache的时候可能会提示:

Cannot load /usr/local/termite/apache/modules/mod_jk.so into server: /usr/local/termite/apache/modules/mod_jk.so: invalid ELF header
#file mod_jk.so

可能会显示 mod_jk.so: MS-DOS executable (EXE), OS/2 or MS Windows
而正确的应该显示

mod_jk.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), not stripped  



三、在apache/conf/下面建立两个配置文件mod_jk.conf和workers.properties。

#cd /usr/local/apache2/conf/

# vi mod_jk.conf

添加如下内容:

#########################################################################

# 指出mod_jk模块工作所需要的工作文件workers.properties的位置

JkWorkersFile conf/workers.properties



# Where to put jk logs
JkLogFile logs/mod_jk.log



#Set the jk log level [debug/error/info]
JkLogLevel error



#将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理

JkMount /*.jhtml controller
JkMount /*.do controller



JkMountCopy all #详细见下面说明

注意:使用mod_jk 1.2.6+时,如果你希望声明一个全局的JkMount's或者JkMountFile's来代替每个虚拟主机,你需要引入’JkMountCopy all’作为全局变量。如果你不想为每个虚拟主机拷贝同样的JkMount/MkMountFile,你需要在虚拟主机指令中声明’JkMountCopy On’。如果不加入此项,则负载均衡会失败!



########################################################################

# vi workers.properties

添加内容如下:

#######################################################################

worker.list=controller

#========tomcat1========
worker.tomcat1.port=8009
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor=1

#========tomcat2========
worker.tomcat2.port=9009
worker.tomcat2.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=1

#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2
worker.controller.sticky_session=true
worker.controller.sticky_session_force=false

#######################################################################

说明如下:

################################3

1、其中worker.tomcat1.host中,tomcat1代表节点名,host值为节点IP, 如果有更多节点,顺序定义更多的node段,并在worker.controller.balance_workers后全部列出。

2、lbfactor是负载分配权重,值越大分配的负载越多。

3、worker.controller.sticky_session,设置为1或true使用粘着session,设置为0或false不使用粘着session。如果sticky_session设为true时,建议sticky_session_force设为false,此参数表明如果集群中某台服务器在多次请求没有响应后,将转发当前的请求到其它服务器上处理;sticky_session=false时,影响比较大,会导致转发到其它服务器上的请求,找不到原来的session,所以如果此时请求中有读取session中某些信息的话,就会导致应用的null异常。sticky_session、sticky_session_force的默认值分别为true,false。

sticky_session   sticky_session_force             含义
     true             false            SESSION会复制,有粘性
     true             true             SESSION不复制,有粘性
     false            false            SESSION会复制,无粘性
     false            true             SESSION会复制,无粘性

#################################



四、配置httpd.conf

1、在最后加入:

增加关于加载mod_jk的语句:
LoadModule jk_module modules/mod_jk.so

Include conf/mod_jk.conf

2、注意,apache默认配置的虚拟主机是没有访问权限,需要设置:

找到

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

将Deny 改为:allow

3、去掉前面的#符号

Include conf/extra/httpd-vhosts.conf
编辑httpd-vhosts.conf文件:添加虚拟主机:

<VirtualHost *:80>
    DocumentRoot D:/www/cpay
    ServerName www.e-baotong.com.cn
    ServerAlias e-baotong.com.cn
    DirectoryIndex  index.htm
</VirtualHost>



五、配置tomcat5.5

tomcat5.5的安装请参见:http://blog.sina.com.cn/s/blog_56d8ea900100bz2w.html



安装完之后,请配置server.xml文件,将

<Connector port="8009"
               enableLookups="false" redirectPort="8443" debug="0"
               protocol="AJP/1.3" URIEncoding="UTF-8"/>

打开。其他port可以关闭



六、测试服务

启动apache和各节点jboss服务
Apache启动和停止:
/usr/local/termite/apache/bin/apachectl start
/usr/local/termite/apache/bin/apachectl stop
或在/usr/local/termite/apache/bin目录下执行./httpd -k start,./httpd -k stop



其它:集群中webapp多节点更新方法:

1、自定义shell,scp命令实现

2、用sync来搞,同步的方式

  如果是程序发布,就直接先打成war包,然后再在远程写个脚本一执行就可以了,这样比较保险;

  如果是频繁的更新小文件,为了更新起来快一些,就用sync。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-191865-1-1.html 上篇帖子: Linux操作系统定时任务系统Cron入门 下篇帖子: 在linux上用apache james架设邮件服务器(1)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表