ActiveMQ基于文件共享的主从配置方案

假设两台装有activeMq服务的服务器分别为:

<span style="white-space:pre">	</span>192.160.102.90
	192.168.102.91 

并打算将91上activeMq目录的数据存储目录共享给90的activeMq服务。

91上配置:

1、安装NFS服务和rpcbind服务,服务器上一般都安装了这两个服务,可以使用命令"service nfs status"和"service rpcbind status"查看这两个服务是否已启动。如果系统中的确没有安装这两个服务,请先安装。

2、修改nfs的共享配置文件:/etc/exports

# 文件路径
/usr/local/apache-activemq-5.7.0/data/kahadb 192.168.102.90(rw,no_root_squash)

其中/usr/local/apache-activemq-5.7.0/data/kahadb 为要共享的文件夹:192.168.102.90 为可以访问该文件夹的地址(支持通配符*,如可以配置为192.168.102.*);rw表示支持读写操作;no_root_squash表示客户机以root身份访问时映射为本机的nobody用户,这个参数很重要,必须指定,否则可能报没有权限访问的错误。

3、关闭防火墙(service iptables stop)或者将相关端口启用(可以使用rpcinfo -p 192.168.102.91查看需要开启的端口号)。

4、重新启动nfs服务和rpcbind服务。

90上配置:

1、同91上1的配置。

2、创建目录/data/activemq

3、修改activeMq的配置文件conf/activemq.xml,将

<span style="white-space:pre">	</span><persistenceAdapter>
            <kahaDB directory="/${activemq.data}/kahadb"/>
        </persistenceAdapter>

修改为:

  <span style="white-space:pre">	</span><persistenceAdapter>
            <kahaDB directory="/data/activemq"/>
        </persistenceAdapter>   

即 将activeMq的数据文件存储目录修改为第2步创建的目录:/data/activemq。

4、检查可以挂载的文件系统:showmount -e 192.168.102.91系统会列出可以挂在的文件

Export list for 192.168.102.91:
/usr/local/apache-activemq-5.7.0/data/kahadb 192.168.102.90

5、挂载文件系统

mount -t nfs 192.168.102.91:/usr/local/apache-activemq-5.7.0/data/kahadb /data/activemq

该命令就将91上目录/usr/local/apache-activemq-5.7.0/data/kahadb挂载到本机目录/data/activemq上。

当然,最后将该目录自动挂载,避免系统重启后需手动挂载。自动挂载即修改配置文件/etc/fstab

这样,主从配置完成。

修改代码中的brokerURL:failover://(tcp://192.168.102.90:61616,tcp://192.168.102.91:61616),启用断线重连机制。

这样当kill掉90的activeMq时,系统就自动连接到91上了。如果启动90后,还想让其连接到90上,kill掉91的activeMq即可。

注意:

1、共享文件的主从配置,是通过文件共享锁来实现的。先拿到文件锁的服务就是master,其它为slave服务,slave服务默认每10秒试图拿一次文件锁,可以查看activeMq的控制台。

2、只有master的控制台(如http://192.168.102.91:8161/admin)能够访问,slave的控制台不能访问,原因就是slave没有拿到文件锁,不能访问文件。

时间: 2024-08-27 04:54:46

ActiveMQ基于文件共享的主从配置方案的相关文章

ActiveMQ 基于zookeeper的主从(levelDB Master/Slave)搭建以及Spring-boot下使用

0:说明 ActiveMQ 5.9.0新推出的主从实现,基于zookeeper来选举出一个master,其他节点自动作为slave实时同步消息.因为有实时同步数据的slave的存在,master不用担心数据丢失,所以leveldb会优先采用内存存储消息,异步同步到磁盘,所以该方式的activeMQ读写性能最好因为选举机制要超过半数,所以最少需要3台节点,才能实现高可用.如果集群是两台则master失效后slave会不起作用,所以集群至少三台.此种方式仅实现主备功能,避免单点故障,没有负载均衡功能

mysql 主从配置 和 主主配置

一:主从配置 A机:192.168.1.67 (主) B机:192.168.1.20 (从) A机操作: 1:备份要做主从的数据库. mysqldump -uroot -pkobe24 -S /tmp/mysql.sock discuz > /home/discuz.back #备份discuz至/home/discuz.back. scp /home/discuz.back [email protected]:/home/discuz.back #远程复制到从服务器上. 2:修改my.cnf

ActiveMQ主从配置

这种方式有个问题,activemq1有消息没消费完但是突然宕机,虽然程序会自动连到activemq2.但是activemq1的消息只有等机器恢复后才会被消费. 1.启动:我这里使用的是apache-activemq-5.13.3,是在windows下使用的,发现根据文档说的双击activemq.bat启动不了,那就只好使用命令启动,CMD进入到apache-activemq-5.13.3\bin下,输入activemqbat start.这样就可以启动了. 2.主从配置:第一个activemq解

mysql主从配置&&基于keepalived的主备切换

mysql互为主从设置 && 主备切换配置 需求说明: 1.公司架构一直是一台单独的mysql在线上跑,虽然一直没有出现什么宕机事件,但是出于一个高可用的考虑,提出主从备份.主备切换的需求: 2.实现这个需求的前一段时间只是在做数据库备份的时候实现了主从热备,为了实现主备切换功能,继续操作上述需求: 实验环境: master1:10.1.156.3:3306 master2:10.1.156.5:3306 my.cnf配置文件关于主从这块的修改: master1: server-id =

基于ZK构建统一配置中心的方案和实践

背景: 近期使用Zk实现了一个简单的配置管理的小东西,在此开源出来,有兴趣的希望提出您的宝贵意见.如果恰巧您也使用或者接触过类似的东西, 也希望您可以分享下您觉得现在这个项目可以优化和改进的地方. 项目地址: https://github.com/cncduLee/zk-ucc 需求: 1.不需要重启应用.修改代码就可以对业务做开关操作 2.避免不必要的重复拉取配置信息,降低网络IO,节省服务器资源. 例如1:开发一个评论系统,违禁词这个东西,应该是可配置的,同时又是变动极少的.如何设计这个违禁

Centos DNS服务(二)-bind主从配置与基于TSIG加密的动态更新

DNS的主从配置 DNS从服务器也叫辅服DNS服务器,如果网络上某个节点只有一台DNS服务器的话,首先服务器的抗压能力是有限的,当压力达到一定的程度,服务器就可能会宕机罢工,其次如果这台服务器出现了硬件故障那么服务器管理的区域的域名将无法访问.为了解决这些问题,最好的办法就是使用多个DNS服务器同时工作,并实现数据的同步,这样两台服务器就都可以实现域名解析操作. 从服务器要点 1.应该为一台独立的名称服务器 2.主DNS服务器的区域解析库文件中必须有一条NS记录指向从服务器 3.从DNS服务器只

redis集群(主从配置)

市面上太多kv的缓存,最常用的就属memcache了,但是memcache存在单点问题,不过小日本有复制版本,但是使用的人比较少,redis的出现让kv内存存储的想法成为现实.今天主要内容便是redis主从实现简单的集群,实际上redis的安装配置砸门ttlsa之前就有个文章,废话少说,进入正题吧 Redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串). list(链表).set(集合)和zset(有序

MySQL编译安装及主从配置

说明:本实验配置以Cenos6.6和MySQL5.6.35为例 一.编译安装MySQL 1.避免在安装过程中出现问题,先安装系统依赖包yum install apr autoconf automake bison cloog-ppl cpp curl curl-devel fontconfig fontconfig-devel freetype freetype freetype-devel gcc gcc-c++ gtk+-devel gd gettext gettext-devel glib

DNS2之bind安装、主从配置同步、子域创建、view配置

主DNS配置从服务器: 我们知道,DNS服务器在网络服务中可能出现故障当机等状况,会导致DNS服务瘫痪,显然在实际的网络应用中我们不希望出现这种状况,所有我们就要配置从服务器来在主DNS服务器出现故障时代替他来工作,然而作为价格昂贵的服务器本身你又不希望出现这种极大的浪费,所有从服务器在实际工作中是和主服务器共同分担DNS解析任务的,这样既解决了服务器故障导致的问题,还可以缓解DNS服务器的压力. 那么要配置一个从服务器我们又该怎么做呢? 前提:我们要为本地配置一个从服务器aolens2.从服务