首先搭建zookeeper集群:
参考URL: http://www.cnblogs.com/feiyun126/p/7244394.html
三台服务器:先设置hosts
10.0.0.231 node1
10.0.0.232 node2
10.0.0.233 node3
:下载apache-activemq-5.15.-bin.tar.gz
:解压apache-activemq-5.15.-bin.tar.gz到/usr/local目录
:创建软链接 ln -s apache-activemq-5.15. activemq
: 修改conf/activemq.xml文件
):修改 brokerName,名字随意
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}">
修改为:
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="myzly" dataDirectory="${activemq.data}"> ):修改persistenceAdapter
以下三行注释掉
<persistenceAdapter>
<kahaDB directory="${activemq.data}/kahadb"/>
</persistenceAdapter> 修改为:
<persistenceAdapter>
<replicatedLevelDB
directory="${activemq.data}/leveldb"
replicas=""
bind="tcp://0.0.0.0:62621"
zkAddress="10.0.0.231:2181,10.0.0.231:2181,10.0.0.231:2181"
zkPassword=""
hostname="node1"
sync="local_disk"
zkPath="/activemq/leveldb-stores"/>
</persistenceAdapter> zkAddress为zookeeper集群地址
zkPassword没有填空
hostname填写本机hostname或都填写本机地址
:在bin目录下启动 ./activemq start :三台主机配制相同,只是hostname配制本机对应hostname或ip地址 调用时url配制:failover://(tcp://10.0.0.231:61616,tcp://10.0.0.232:61616,tcp://10.0.0.233:61616)?initialReconnectDelay=1000
7:测试
http://10.0.0.231:8161/admin/queues.jsp
http://10.0.0.232:8161/admin/queues.jsp
http://10.0.0.233:8161/admin/queues.jsp
因为使用zookeeper做负载均衡,
三台只有一台是master,其他两台处于等待状态,
所以只有其中一台提供服务,
但一旦这台服务器宕机以后,会有另外一台顶替上来,
所以其他几个ip地址是打不开的,只有一台能打开
8:设置activemq开机启动 ) 切换到/etc/rc.d/init.d/目录下
) 创建activemq文件:touch activemq
) 更新权限:chmod +x activemq
) 编辑文件,在activemq里面输入如下内容 #!/bin/bash
#chkconfig:
#description:activemq
#processname:activemq
export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$PATH
case $ in
start) /usr/local/activemq/bin/activemq start;;
stop) /usr/local/activemq/bin/activemq stop;;
status) /usr/local/activemq/bin/activemq status;;
restart) /usr/local/activemq/bin/activemq restart;;
kill) /usr/local/activemq/bin/activemq kill;;
*) echo "require start|stop|status|restart" ;;
esac ) chkconfig activemq on
) 验证
chkconfig --add activemq 把activemq添加到开机启动里面
chkconfig --list activemq 查看是否添加的activemq到开机启动