Frank的学习之路

12.0_activemq安装步骤

假设两台装有activeMq服务的服务器分别为:
  1. 10.100.20.181
  2. 10.100.20.183
文件共享服务器10.100.10.145
并打算将181、183上activeMq目录的数据存储目录共享给145的activeMq服务。
145上配置:
1、安装NFS服务和rpcbind服务,服务器上一般都安装了这两个服务,可以使用命令"service nfs status"和"service rpcbind status"查看这两个服务是否已启动。如果系统中的确没有安装这两个服务,请先安装。
 
2、修改nfs的共享配置文件:/etc/exports
  1. # 文件路径  
  2. /mq_data 10.100.20.*(rw,sync,no_root_squash)
其中/mq_data 为要共享的文件夹:192.168.20.* 为可以访问该文件夹的地址(支持通配符*,如可以配置为10.100.20.*);rw表示支持读写操作;no_root_squash表示客户机以 root身份访问时映射为本机的nobody用户,这个参数很重要,必须指定,否则可能报没有权限访问的错误。    
 
3、关闭防火墙(service iptables stop)或者将相关端口启用(可以使用rpcinfo -p 10.100.20.145查看需要开启的端口号)。
 
4、重新启动nfs服务和rpcbind服务。
 
 
181、183上配置:
1、同145上1的配置。
 
2、创建目录/mq_data
3、修改activeMq的配置文件conf/activemq.xml,将
<persistenceAdapter>  
        <kahaDB directory="/${activemq.data}/kahadb"/>  
 </persistenceAdapter>  
修改为:
<persistenceAdapter>  
        <kahaDB directory="/mq_data"/>  
</persistenceAdapter>     
 
即 将activeMq的数据文件存储目录修改为第2步创建的目录:/mq_data。
 
 
4、检查可以挂载的文件系统:showmount -e 10.100.20.145系统会列出可以挂在的文件
       
Export list for 10.100.20.145:
/mq_data 10.100.20.*  
 
5、挂载文件系统
mount -t nfs 10.100.20.145:/mq_data /mq_data  
该命令就将145上目录/mq_data挂载到本机目录/mq_data上。
 
当然,最后将该目录自动挂载,避免系统重启后需手动挂载。自动挂载即修改配置文件/etc/fstab
 
这样,主从配置完成。
修改代码中的brokerURL:failover://(tcp://10.100.20.40:61616,tcp://10.100.20.41:61616),启用断线重连机制。
 
这样当kill掉181的activeMq时,系统就自动连接到183上了。如果启动181后,还想让其连接到181上,kill掉183的activeMq即可。
 
 
注意:
1、共享文件的主从配置,是通过文件共享锁来实现的。先拿到文件锁的服务就是master,其它为slave服务,slave服务默认每10秒试图拿一次文件锁,可以查看activeMq的控制台。
 
2、只有master的控制台(如http://10.100.20.181:8161/admin)能够访问,slave的控制台不能访问,原因就是slave没有拿到文件锁,不能访问文件。
 
问题解决:
clnt_create: RPC: Program not registered
服务端执行rpc.mountd
 
启用JMX需要在bin/activemq中增加如下配置:
ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Djava.rmi.server.hostname=自己的IP
 
返回顶部