05.activeMQ 集群搭建

上次已经把zookeeper集群搭建好了,那么这里就再zookeeper的一台服务上再搭建activeMQ的集群。
服务器地址:ssh://zzg:*@192.168.112.129:22
activemq 方案:
集群通信端口:62621,62622,62623
消息端口:51511,51512,51513
控制台端口:8161,8162,8163
节点目录:activemq-cluster/node1,activemq-cluster/node2,activemq-cluster/node3
开始搭建:

1.创建一个文件夹activeme-cluster,并将activemq.tar.gz安装包解压进去。并改名node1,复制另外两个节点,node2,node3.

[root@zzg local]# mkdir activemq-cluster
[root@zzg home]# tar zxvf apache-activemq-5.11.1-bin.tar.gz  -C /usr/local/activemq-cluster

[root@zzg local]# cd activemq-cluster/
[root@zzg activemq-cluster]# ls
apache-activemq-5.11.1
[root@zzg activemq-cluster]# mv apache-activemq-5.11.1/ node1
[root@zzg activemq-cluster]# cp -r node1 node2
[root@zzg activemq-cluster]# cp -r node1 node3

2.修改配置文件

1)修改控制台端口(默认8161),在mq安装路径下/conf/jetty.xml进行修改即可.(三个节点都要修改,且端口不能相同)

vim /usr/local/activemq-cluster/node1/conf/jetty.xml

修改此处:

<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
         <!-- the default port number for the web console -->
    <property name="host" value="0.0.0.0"/>
    <property name="port" value="8163"/>
</bean>

2)集群配置文件修改:修改mq安装目录下的conf/activemq.xml进行修改其中的持久化适配器,修改其中的bind、zkAddress、hostname、zkPath。 然后也要修改mq的brokerName,并且每个节点名称都必须相同。

[root@zzg conf]# vim /usr/local/activemq-cluster/node1/conf/activemq.xml 

修改brokername,三个节点的名称必须相同

<!--
    The <broker> element is used to configure the ActiveMQ broker.
-->
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="activemq-cluster" dataDirectory="${activemq.data}">

3)继续修改,注释kahaDB,换成速度更快的LevelDB

<persistenceAdapter>
            <kahaDB directory="${activemq.data}/kahadb"/>
        </persistenceAdapter>

修改之后:

        <persistenceAdapter>
           <replicatedLevelDB
                directory="${activemq.data}/leveldb"
                replicas="3"
                bind="tcp://0.0.0.0:62621"
                zkAddress="192.168.112.129:2181,192.168.112.130:2181,192.168.112.131:2181"
                zkPath="/activemq/leveldb-stores"
                hostname="127.0.0.1"
                />
        </persistenceAdapter>

注意修改persistenceAdapter节点

replicas:集群中节点的数量,这里配置了三台就是3
bind:当这个节点成为主节点后,就会默认绑定当前IP和端口(即开始规划的集群通讯端口62621)
zkAddress:三台zookeeper的服务ip和端口,用逗号隔开
zkPath:默认不用改
hostname:这里应该填写三台zookeeper可以互相访问的地址,如果用的是一台机器,就都写成127.0.0.1,如果你部署的是三台内网,这里就写相应的那台机器的内网IP。
directory:会自动创建配置的目录

4)修改通信端口,避免冲突。activemq.xml(三个节点都修改:51511,51512,51513)

<!--openwire 的61616修改为规划中的51511,主要修改的就是tcp协议。-->
        <transportConnectors>
            <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB -->
            <transportConnector name="openwire" uri="tcp://0.0.0.0:51511?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="mqtt" uri="mqtt://0.0.0.0:1883?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="ws" uri="ws://0.0.0.0:61614?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
        </transportConnectors>

搭建完成,开始启动!!!

第一步:启动zookeeper集群,zkServer.sh start (关闭stop)
第二步:启动activemq集群,顺序启动:
/usr/local/activemq-cluster/node1/bin/activemq start (关闭stop)
/usr/local/activemq-cluster/node2/bin/activemq start (关闭stop)
/usr/local/activemq-cluster/node3/bin/activemq start (关闭stop)
第三步:查看日志信息:
tail -f /usr/local/activemq-cluster/node1/data/activemq.log
tail -f /usr/local/activemq-cluster/node2/data/activemq.log
tail -f /usr/local/activemq-cluster/node3/data/activemq.log
第四步(负载均衡):负载均衡请自行百度。
集群的brokerUrl配置进行修改:

集群一中配置 集群二(activemq.xml 标签<transportConnectors>上面添加)
 <networkConnectors>      
   <networkConnector uri="static:(tcp://192.168.112.130:62624,tcp://192.168.112.130:62625,tcp://192.168.112.131:62626)" duplex="false" >
   </networkConnector>
  </networkConnectors>
集群二中配置集群一
 <networkConnectors>      
   <networkConnector uri="static:(tcp://192.168.112.129:62621,tcp://192.168.112.129:62622,tcp://192.168.112.129:62623)" duplex="false" >
   </networkConnector>
  </networkConnectors>

参考文章:
https://blog.csdn.net/yelllowcong/article/details/78758792

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值