ActiveMQ openwire协议集群

1、准备工作

两台安装完成ActiveMQ的虚拟机,IP地址为192.168.106.233 和 192.168.106.158。当单点时ActiveMQ启动正常。

2、NFS配置

本例采用共享文件的方式集群,共享文件的方式通过NFS实现。

① 设置192.168.106.233NFS服务器

检查233虚拟机NFS服务是否启动,执行以下命令:

[root@localhost share_dir] # rpm -q nfs-utils portmap

如果有显示,则说明已正确安装;若没有则安装这两个服务。

② 检查服务是否启动

[root@localhost share_dir] # service nfs status

rpc.mountd (pid 12810) is running... 
nfsd (pid 12807 12806 12805 12804 12803 12802 12801 12800) is running... 
rpc.rquotad (pid 12795) is running...

[root@localhost share_dir] # service portmap status

portmap (pid 12728) is running... 

若没有启动,则执行以下命令,则执行以下命令:

[root@localhost share_dir] # service portmap restart

[root@localhost share_dir] # service nfs restart

③ 设置共享文件

打开/etc/exports文件,并添加以下内容:

[root@localhost share_dir] # vi /etc/exports

添加内容:

/home/guoyanjun/ActiveMQ/AMQdir/ 192.168.106.233(rw,sync,no_root_squash) 192.168.106.158(rw,sync,no_root_squash)

语义:将NFS服务器共享目录给客户机IP,并给予读写、同步、不映射root用户。

完成以上设置后,保存退出,并重启服务。

④ 挂载NFS客户端

233 服务器上建立共享目录:/home/guoyanjun/ActiveMQ/data/share_dir

执行以下命令:

[root@localhost share_dir] # mount -t nfs 192.168.106.233: /home/guoyanjun/ActiveMQ/AMQdir/  /home/guoyanjun/ActiveMQ/data/share_dir

158 服务器上建立共享目录:/home/ActiveMQ/data/share_dir

执行以下命令:

[root@localhost share_dir] # mount -t nfs 192.168.106.233: /home/guoyanjun/ActiveMQ/AMQdir/  /home/ActiveMQ/data/share_dir

语义:将两个服务器上的目录挂载到/home/guoyanjun/ActiveMQ/AMQdir/目录上

⑤ 验证共享目录

233服务器的/home/guoyanjun/ActiveMQ/data/share_dir目录中创建任意一个文件,在158服务器的/home/ActiveMQ/data/share_dir目录中查看是否存在。若存在则说明文件共享成功。

3、ActiveMQ配置文件修改

① 配置ActiveMQ服务器,主要为配置$ACTIVEMQ_HOME/conf/activemq.xml文件

158服务器上,打开activemq.xml文件,修改为以下

81         <persistenceAdapter>

82             <!-- kahaDB directory="${activemq.data}/kahadb"/-->

83             <kahaDB directory="/home/ActiveMQ/data/share_dir/kahadb"/>

84         </persistenceAdapter>

 

233服务器上,打开activemq.xml文件,修改为以下

81  <persistenceAdapter>

82     <!-- kahaDB directory="${activemq.data}/kahadb"/-->

83     <kahaDB directory="/home/guoyanjun/ActiveMQ/data/share_dir/kahadb"/>

84  </persistenceAdapter>

4、启动ActiveMQ服务

重新启动ActiveMQ服务

5、测试

在服务重新启动后,打开$ACTIVEMQ_HOME/data/activemq.log文件,看到233正常启动,158机器会有未获取到文件锁的相关提示,或者158正常启动233机器未获得文件锁的相关提示。

 

分别起停.240.241机器上的ActiveMQ,master-slave切换正常。

修改ActiveMQ自带例子里的程序,让生产者线程不断生产消息以及消费者线程不断消费消息。检查在masterslave切换时数据无丢失。

测试用例:分别修改ListenerPublisher程序部分,测试部分使用openwire协议。

ActiveMQConnectionFactory  factory  =  new ActiveMQConnectionFactory("failover:(tcp://192.168.106.233:61616,tcp://192.168.106.158:61616)");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值