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

[经验分享] Apache+Jobss cluster安装配置

[复制链接]

尚未签到

发表于 2017-1-2 06:59:05 | 显示全部楼层 |阅读模式
  系统环境:
OS:linux AS4 2.6.9-78.EL
APP: apache httpd-2.2.11.tar.gz
Jboss 4.2.3
需要mod_jk-1.2.28-httpd-2.2.X.so文件
一、Apache的安装配置
1、解压apache包
tar zxvf httpd-2.2.11.tar.gz
2、编译apache
./configure –prefix=/usr/local/apache2 –enable-module=so –enable-module=setenvif –enable-module=rewrite –enable-rewrite=shared –enable-proxy=shared –with-mpm=prefork –enable-so –enable-auth-anon –enable-file-cache=shared –enable-cache=shared –enable-disk-cache=shared –enable-mem-cache=shared
make clean
make make
install

3、修改httpd.conf文件
vi /usr/local/apache2/conf/httpd.confListen80此端口可以根据实际情况进行修改,此我没有修改我使用的是80
User daemon和Group daemon改为
User apache
Group apache
删除ServerName的#(注释)此处注意你如何修改了端口,最好加上端口。

4、在linux下建立apache组和用户
groupadd apache
useradd apache –g apache5、将下载的mod_jk-1.2.28-httpd-2.2.X.so文件修改并拷贝
mv mod_jk-1.2.28-httpd-2.2.X.so mode_jk (进行改名)
cp mode_jk /usr/local/apache2/modules (拷贝到这个modules下)
chmod +x /usr/local/apache2/modules/mode_jk
进入到/usr/local/apache2/conf目录下,修改httpd.conf文件
在httpd.conf最末尾增:
Include conf/mod_jk.conf 检查httpd.conf里有没有
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule status_module modules/mod_status.so
以上内容添加如下内容
       Order deny,allow
       allow from all
ProxyPass / balancer://proxy/   stickysession=JSESSIONID nofailover=On lbmethod=byrequests
ProxyPassReverse / balancer://proxy/
        BalancerMember ajp://192.168.133.133:8009/  loadfactor=50  route=note1
        BalancerMember ajp://192.168.133.233:8009/  loadfactor=50  route=note2
6、新建mod_jk.conf文件文件内容:
#Load mod_jk module
# Specify the filename of the mod_jk lib
LoadModule jk_module modules/mod_jk.so

# Where to find 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 info

# Select the log format
JkLogStampFormat  "[%a %b %d %H:%M:%S %Y]"

# JkOptions indicates to send SSK KEY SIZE
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

# JkRequestLogFormat
JkRequestLogFormat "%w %V %T"
              
# Mount your applications
JkMount /*.* loadbalancer

# You can use external file for mount points.
# It will be checked for updates each 60 seconds.
# The format of the file is: /url=worker
# /examples/*=loadbalancer
JkMountFile conf/uriworkermap.properties              

# Add shared memory.
# This directive is present with 1.2.10 and
# later versions of mod_jk, and is needed for
# for load balancing to work properly
JkShmFile logs/jk.shm
            
# Add jkstatus for managing runtime data
    JkMount status
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1
   
7、新建workers.properties文件内容如下
# Define list of workers that will be used
# for mapping requests
worker.list=loadbalancer,status
# worker.list=loadbalancer,node1,node2

# Define Node1
# modify the host as your host IP or DNS name.
worker.node1.port=8009
worker.node1.host=192.168.133.133
worker.node1.type=ajp13
worker.node1.lbfactor=1
worker.node1.cachesize=100

# Define Node2
# modify the host as your host IP or DNS name.
worker.node2.port=8009
worker.node2.host= 192.168.133.233
worker.node2.type=ajp13
worker.node2.lbfactor=1
worker.node2.cachesize=100

# Load-balancing behaviour
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=node1,node2
#1表示使用粘着0表示非粘着
worker.loadbalancer.sticky_session=0
#worker.list=loadbalancer

# Status worker for managing load balancer
worker.status.type=status
说明:
上面的文件中配置了两个节点,name分别为node1,node2,指定两个节点的IP,并在worker.loadbalancer.balance_workers中指定所有的node列表;worker.loadbalancer.sticky_session设置是否启用“粘着的”Session,sticky session是指来自同一IP的请求将被发送到同一个Jboss节点,sticky session设为0的话同一session的不同请求会被负载均衡分发到不同的jboss节点上。worker.node1.host、worker.node2.host要改成jboss集群各机器的实际IP.
8、新建uriworkermap.properties文件内容如下
/jmx-console=loadbalancer
/jmx-console/*=loadbalancer
/web-console=loadbalancer
/web-console/*=loadbalancer

二、Jboss的安装配置
1、JDK安装和环境变量配置我在这里就不再叙述了,大家可以上网查查,很简单。
2、解压JBOSS包我也不在叙述
3、有关JBOSS安装我也不叙述了,我这里直接说明有关JBOSS的配置
4、我在这里jobss以/usr/local/jboss目录为例
5、修改JBOSS端口和配置文件
进入到/usr/local/jboss/server/all/deploy/jboss-web.deployer/目录下
l        打开server.xml文件,修改如下
JBOSS_HOME/server/all/deploy/jboss-web.deployer/server.xml
->

以上说明,有关端口使用自己想定义的,此处我用的8080,把address修改同以上一样,不然启动jboss得到的地址将是127.0.0.1造成无法访问,增加jvmRoute=”node1”此处根据你的实际情况修改,每台机器都要修改。
进入/usr/local/jboss/server/all/deploy/jboss-web.deployer/META-INF目录
l        打开jboss-service.xml,
找到UseJK,改为true
进入到/usr/local/jboss/server/all/deploy/jboss-web-cluster.sar/META-INF/目录下
l        打开jboss-service.xml文件,做如下修改
找到将到全部注释掉.
找到 将到生效.并对该部分进行修改
(1)将全部down_thread和up_thread的false都改为true.
(2)在后填入本机的IP,比如
(3)在”后填入本机和集群其他全部Jboss节点的IP[7810],比如”192.168.133.133[7810],192.168.133.233[7810]”>
代码如下:
            
  tcp_nodelay="true"
  recv_buf_size="20000000"
  send_buf_size="640000"
  discard_incompatible_packets="true"
  enable_bundling="true"
  max_bundle_size="64000"
max_bundle_timeout="30"
  use_incoming_packet_handler="true"
  use_outgoing_packet_handler="false"
  down_thread="true" up_thread="true"
  use_send_queues="false"
  sock_conn_timeout="300"
            skip_suspected_members="true"/>
timeout="3000"
down_thread="true" up_thread="true"
num_initial_members="3"/>
down_thread="true" up_thread="true" min_interval="20000"/>
use_mcast_xmit="false" gc_lag="0"
        retransmit_timeout="300,600,1200,2400,4800"
down_thread="true" up_thread="true"
discard_delivered_msgs="true"/>
down_thread="true" up_thread="true"
max_bytes="400000"/>
down_thread="true" up_thread="true"
join_retry_timeout="2000" shun="true"
view_bundling="true"/>
min_threshold="0.10"/>
三、启动测试
启动时,要先启动apache,再启动jboss节点1,启动节点1完成后,再启动节点2;
jboss启动方式使用./run –c all方式,只有此才是集群,有关后台启动就不有我说了吧。呵呵
测试时,最好先看看apache能不能访问,可以了再试试jboss的各个节点可不可以访问,这样确保你的jboss都启动正常

好了,多谢大家了,这样就配置完成了,也多谢网上那些贡献的朋友们,没有他们的帮助我也可能做不出来。

运维网声明 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-322511-1-1.html 上篇帖子: [转]Apache ab 介绍 下篇帖子: Apache AB 测试结果分析
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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