代码拉取完成,页面将自动刷新
#springboot-order-mybaits-activeMQ
项目主框架采用springboot,介绍Zookeeper集群安装和ActiveMQ的高可用集群安装方式,以及基于ActiveMQ简单的消息队列应用场景!
开启一个虚拟机,虚拟机安装非本文范畴,可查阅相关资料。
在安装Zookeeper,ActiveMQ之前需要先将虚拟机防火墙关闭,并配置好网络。
虚拟机IP设置为:10.16.70.134,此处可根据自己网络环境自行设置。
需要保证虚拟机可连接外网,以方便执行wget,yum等命令安装相关软件。
需要保证虚拟机中已安装JDK1.8,并且已配置好环境变量,JDK安装非本文范畴,可查阅相关资料。
cd /usr/local/
wget http://apache.fayea.com/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
tar -zxvf zookeeper-3.4.6.tar.gz
# 服务器1
cp -r zookeeper-3.4.6 zookeeper-3.4.6_1
# 服务器2
cp -r zookeeper-3.4.6 zookeeper-3.4.6_2
# 服务器3
cp -r zookeeper-3.4.6 zookeeper-3.4.6_3
cd /usr/local/zookeeper-3.4.6_1
mkdir data
mkdir logs
cd /usr/local/zookeeper-3.4.6_2
mkdir data
mkdir logs
cd /usr/local/zookeeper-3.4.6_3
mkdir data
mkdir logs
cd /usr/local/zookeeper-3.4.6_1/conf
cp zoo_sample.cfg zoo.cfg
cd /usr/local/zookeeper-3.4.6_2/conf
cp zoo_sample.cfg zoo.cfg
cd /usr/local/zookeeper-3.4.6_3/conf
cp zoo_sample.cfg zoo.cfg
cd /usr/local/zookeeper-3.4.6_1/conf
# 设置内容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.4.6_1/data
dataLogDir=/usr/local/zookeeper-3.4.6_1/logs
clientPort=2181
server.1=10.16.70.134:2881:3881
server.2=10.16.70.134:2882:3882
server.3=10.16.70.134:2883:3883
# -----------------------------------
cd /usr/local/zookeeper-3.4.6_2/conf
vi zoo.cfg
# 设置内容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.4.6_2/data
dataLogDir=/usr/local/zookeeper-3.4.6_2/logs
clientPort=2182
server.1=10.16.70.134:2881:3881
server.2=10.16.70.134:2882:3882
server.3=10.16.70.134:2883:3883
# -----------------------------------
cd /usr/local/zookeeper-3.4.6_3/conf
vi zoo.cfg
# 设置内容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.4.6_3/data
dataLogDir=/usr/local/zookeeper-3.4.6_3/logs
clientPort=2183
server.1=10.16.70.134:2881:3881
server.2=10.16.70.134:2882:3882
server.3=10.16.70.134:2883:3883
vi /usr/local/zookeeper-3.4.6_1/data/myid #设置值为1
vi /usr/local/zookeeper-3.4.6_2/data/myid #设置值为2
vi /usr/local/zookeeper-3.4.6_3/data/myid #设置值为3
cd /usr/local
/usr/local/zookeeper-3.4.6_1/bin/zkServer.sh start
/usr/local/zookeeper-3.4.6_2/bin/zkServer.sh start
/usr/local/zookeeper-3.4.6_3/bin/zkServer.sh start
/usr/local/zookeeper-3.4.6_1/bin/zkServer.sh status
/usr/local/zookeeper-3.4.6_2/bin/zkServer.sh status
/usr/local/zookeeper-3.4.6_3/bin/zkServer.sh status
[root@centos7 local]# /usr/local/zookeeper-3.4.6_1/bin/zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6_1/bin/../conf/zoo.cfg
Mode: "follower"
[root@centos7 local]# /usr/local/zookeeper-3.4.6_2/bin/zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6_2/bin/../conf/zoo.cfg
Mode: "leader"
[root@centos7 local]# /usr/local/zookeeper-3.4.6_3/bin/zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6_3/bin/../conf/zoo.cfg
Mode: "follower"
cd /usr/local/
wget wget http://archive.apache.org/dist/activemq/apache-activemq/5.9.0/apache-activemq-5.9.0-bin.tar.gz
tar -zxvf apache-activemq-5.9.0-bin.tar.gz
# 服务器1
cp -r apache-activemq-5.9.0 activemq-5.9.0_1
# 服务器2
cp -r apache-activemq-5.9.0 activemq-5.9.0_2
# 服务器3
cp -r apache-activemq-5.9.0 activemq-5.9.0_3
# 节点1
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<property name="port" value="8161"/>
</bean>
# 节点2
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<property name="port" value="8162"/>
</bean>
# 节点3
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
<property name="port" value="8163"/>
</bean>
# 将broker标签的brokerName属性设置为统一的值,我将这个值设置为“order”,只有三个实例的brokerName一致,zookeeper才能识别它们属于同一个集群。
# 首先注释掉原来kahaDB的持久化方式,然后配置levelDB+zookeeper的持久化方式
# 节点1
<persistenceAdapter>
<replicatedLevelDB
directory="${activemq.data}/leveldb"
replicas="3"
bind="tcp://0.0.0.0:0"
zkAddress="localhost:2181,localhost:2182,localhost:2183"
hostname="10.16.70.134"
zkPath="/activemq/leveldb-stores"/>
</persistenceAdapter>
# 节点2
<persistenceAdapter>
<replicatedLevelDB
directory="${activemq.data}/leveldb"
replicas="3"
bind="tcp://0.0.0.0:0"
zkAddress="localhost:2181,localhost:2182,localhost:2183"
hostname="10.16.70.134"
zkPath="/activemq/leveldb-stores"/>
</persistenceAdapter>
# 节点3
<persistenceAdapter>
<replicatedLevelDB
directory="${activemq.data}/leveldb"
replicas="3"
bind="tcp://0.0.0.0:0"
zkAddress="localhost:2181,localhost:2182,localhost:2183"
hostname="10.16.70.134"
zkPath="/activemq/leveldb-stores"/>
</persistenceAdapter>
节点1:
<transportConnector name="openwire" uri="tcp://10.16.70.134:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
节点2:
<transportConnector name="openwire" uri="tcp://10.16.70.134:61617?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
节点3:
<transportConnector name="openwire" uri="tcp://10.16.70.134:61618?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
节点1:
/usr/local/activemq-5.9.0_1/bin/activemq start
节点2:
/usr/local/activemq-5.9.0_2/bin/activemq start
节点3:
/usr/local/activemq-5.9.0_3/bin/activemq start
节点1:
tail -f /usr/local/activemq-5.9.0_1/data/activemq.log
节点2:
tail -f /usr/local/activemq-5.9.0_2/data/activemq.log
节点3:
tail -f /usr/local/activemq-5.9.0_3/data/activemq.log
###参考
http://zookeeper.apache.org/
http://activemq.apache.org/
欢迎提出更好的意见,帮助完善我们的项目,以督促我们前行!
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。