环境搭建---activeMQ

activeMQ部署

环境说明: 3台服务器部署6个activemq节点,采用zookeeper+activemq方式部署。

一、安装JDK:

1、查看Linux系统是否有自带的jdk:

# rpm -qa | grep java 

如果已有jdk并且版本和所需版本不同,则删除已有包:

# rpm -e --nodeps +包名

2、安装jdk

# rpm -ivh jdk-8u121-linux-x64.rpm

3、查看JDK版本:

# java -version

二、安装zookeeper

1、下载并解压zookeeper压缩包

# cd /daemon
# wget  http://us.mirrors.quenda.co/apache/zookeeper/zookeeper-3.4.14/apache-zookeeper-3.4.14.tar.gz
# tar -zxvf zookeeper-3.4.14.tar.gz

2、编辑配置文件

# cd apache-zookeeper-3.4.14/conf
# cp zoo_sample.cfg zoo.cfg
# vim zoo.cfg
dataDir=./dataDir
dataLogDir=./logDir

注意:在clientPort下面添加服务器的ip。如
server.1=192.168.51.32:2888:3888
server.2=192.168.51.33:2888:3888
server.3=192.168.51.34:2888:3888

3、在bin下创建目录

# mkdir -p apache-zookeeper-3.4.14/bin/dataDir apache-zookeeper-3.4.14/bin/logDir

4、myid文件

# cd apache-zookeeper-3.4.14/bin/dataDir
# vim myid

在data目录下创建文件,文件名为“myid”, 编辑该“myid”文件,并在对应的IP的机器上输入对应的编号。
如在192.168.51.32上,“myid”文件内容就是1。在192.168.51.33上,内容就是2。

5、启动zookeeper

5.1 进入到bin目录下,启动zkServer.sh
# cd /daemon/apache-zookeeper-3.4.14/bin 
# ./zkServer.sh start
5.2 .查看状态:
# ./zkServer.sh status

三、安装activeMQ

1、进入文件目录,解压

# cd /daemon/
# tar -zxvf apache-activemq-5.15.4-bin.tar.gz

2、关闭防火墙和SElinux:

# systemctl stop firewalld
# setenforce 0

3、防火墙的设置,添加8161和61616端口号:(若防火墙没有开启,跳过3、4步骤)

(–permanent永久生效,没有此参数重启后失效)

# firewall-cmd --zone=public --add-port=8161/tcp --permanent
# firewall-cmd --zone=public --add-port=61616/tcp --permanent

重新载入

# firewall-cmd --reload

4、查看端口是否设置成功:

# firewall-cmd --zone=public --list-ports

四、activeMQ集群配置

# mkdir node1 node2
# cp -a apache-activemq-5.15.4/* node1
# mv apache-activemq-5.15.4 node2

server1:

1、修改activemq.xml配置文件
node1:
# vim /daemon/node1/apache-activemq-5.15.4/conf/activemq.xml
brokerName="cluster"

在这里插入图片描述
<activemq支持5种协议:openwire、amqp、 stomp、mqtt、ws,这里我们只使用openwire协议,注释其它协议>

#将kahaDB 给注释掉,新增replicatedLevelDB,其中replicas表示为一个集群里面有几个mq节点

<!--
        <persistenceAdapter>
            <kahaDB directory="${activemq.data}/kahadb"/>
        </persistenceAdapter>
-->
        <persistenceAdapter>
          <replicatedLevelDB  
              directory="${activemq.data}/leveldb" 
              replicas="6"            #表示这个activemq集群内有六个mq节点
              bind="tcp://0.0.0.0:0"
              zkAddress="192.168.51.32:2181,192.168.51.33:2181,192.168.51.34:2181" 
              zkPath="/daemon/activemq/leveldb-stores"
              hostname="192.168.51.32/>"         #这个配置成各个mq节点的ip地址
       </persistenceAdapter>

#directory: 存储数据的路径
#replicas:集群中的节点数【(replicas/2)+1公式表示集群中至少要正常运行的服务数量】,3台集群那么允许1台宕机, 另外两台要正常运行
#bind:当该节点成为master后,它将绑定已配置的地址和端口来为复制协议提供服务。还支持使用动态端口。只需使用tcp://0.0.0.0:0进行配置即可,默认端口为61616。
#zkAddress:ZK的ip和port, 如果是集群,则用逗号隔开(这里作为简单示例ZooKeeper配置为单点, 这样已经适用于大多数环境了, 集群也就多几个配置)
#zkPassword:当连接到ZooKeeper服务器时用的密码,没有密码则不配置。
#zkPah:ZK选举信息交换的存贮路径,启动服务后actimvemq会到zookeeper上注册生成此路径
#hostname: ActiveMQ所在主机的IP

node2:
# vim /daemon/node2/apache-activemq-5.15.4/conf/activemq.xml
brokerName="cluster"

在这里插入图片描述

2、修改jetty.xml配置文件
node1:
# vim /daemon/node1/apache-activemq-5.15.4/conf/jetty.xml

在这里插入图片描述

node2:
# vim /daemon/node2/apache-activemq-5.15.4/conf/jetty.xml

在这里插入图片描述

server2:

同server1配置,每台配置两个节点

server3:

同server1配置,每台配置两个节点

3、修改程序的pid
# vim /daemon/node1/apache-activemq-5.15.4/bin/activemq

在这里插入图片描述

4、启动activemq服务
启动activemq服务
# cd apache-activemq-5.15.4/bin/
# ./activemq start
检查进程是否运行,即activemq是否启动成功
# ps -ef|grep activemq
# ./activemq status
查看服务端口61616,监听情况
# netstat -anp|grep 61616
# netstat -anp|grep 61617
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值