ActiveMQ-CentOS6的主从架构

ActiveMQ的主从架构:

环境:

角色 IP 主机名
ActiveMQ主 172.16.0.211 ActiveMQ1
ActiveMQ从 172.16.0.212 ActiveMQ2
NFS集中存储 172.16.0.213 NFS

1. NFS

1.1 安装

# yum install -y rpcbind nfs-utils nfs4-acl-tools

1.2 创建共享目录

# mkdir -m 1777 /nfs4exports
# mkdir -m 1777 /nfs4exports/data
  -m 直接给目录设置权限

1.3 编辑配置文件

# vim /etc/exports

/nfs4exports/data *(rw,nohide,sync,insecure,root_squash,no_subtree_check,fsid=0)

1.4 启动

# service rpcbind  start
# service nfs start
# chkconfig rpcbind on
# chkconfig nfs on

2. ActiveMQ主

2.1 安装

2.1.1 安装NFS

# yum install -y nfs-utils nfs4-acl-tools

2.1.2 安装ActiveMQ

安装jdk
# ./jdk-1.7.sh

安装activemq 
# ./activemq-5.12.sh

重启
# reboot

检查端口启动是否正常
# netstat -antp | grep java
确认ActiveMQ正常启动。

访问:http://172.16.0.211:8161/

2.2 创建挂载点

# mkdir -m 1777 /nfs4exports
# mkdir -m 1777 /nfs4exports/data

2.3 挂载NFS共享

nfs4 
# mount -t nfs4  172.16.0.213:/ /nfs4exports/data/

将挂载命令添加到启动文件中,实现开机自动挂载
# vim /etc/rc.local
    ntpdate asia.pool.ntp.org
    mount -t nfs4 172.16.0.213:/ /nfs4exports/data/
    . /etc/profile
    activemq start	

2.4 修改ActiveMQ中的配置文件activemq.xml

# cd /opt/apache-activemq-5.12.0/conf/
# vim activemq.xml

 40   <broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="/nfs4exports">
 82             <kahaDB directory="/nfs4exports/data"/>
 116   <!--
 117        <transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
 118  -->

2.5 配置ActiveMQ官方样例为可持久化,及写入到上面配置的KahaDB目录中

# vim /opt/apache-activemq-5.12.0/examples/openwire/swissarmy/build.xml

 27     <property name="durable" value="true" />

3. ActiveMQ从

3.1 安装

3.1.1 安装NFS

# yum install -y nfs-utils nfs4-acl-tools

3.1.2 安装ActiveMQ

安装jdk
# ./j1.sh

安装activemq
# ./a1.sh

重启
# reboot
# netstat -antp | grep java
确认ActiveMQ正常启动。
访问:http://172.16.0.212:8161/

3.2 创建挂载点

# mkdir -m 1777 /nfs4exports
# mkdir -m 1777 /nfs4exports/data

3.3 挂载NFS共享

# mount -t nfs4  172.16.0.213:/ /nfs4exports/data/
# vim /etc/rc.local
    ntpdate asia.pool.ntp.org
    mount -t nfs4 172.16.0.213:/ /nfs4exports/data/
    . /etc/profile
    activemq start

3.4 修改ActiveMQ中的配置文件activemq.xml

# cd /opt/apache-activemq-5.12.0/conf/
# vim activemq.xml

 40     <broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="/nfs4exports">
 82             <kahaDB directory="/nfs4exports/data"/>
 116         <!--
 117             <transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
 118         --

3.5 配置ActiveMQ官方样例为可持久化,及写入到上面配置的KahaDB目录中

# vim /opt/apache-activemq-5.12.0/examples/openwire/swissarmy/build.xml

 27     <property name="durable" value="true" />

4. 测试集群:

4.1 关闭

---ActiveMQ主---
# activemq stop

---ActiveMQ从---
# activemq stop

4.2 先启动主,再启动从

---ActiveMQ主---
# activemq start

---ActiveMQ从---
# activemq start

*** 在【主|从】上到集中存储的目录查看是否有数据!!!
# df -h | tail -1
172.16.0.213:/       9.8G  399M  8.9G   5% /nfs4exports/data
# cd /nfs4exports/data/ ; ls
db-1.log  db.data  db.redo  lock

*** 在【主|从】上查看ActiveMQ的状态
主:
# netstat -antp | grep java
tcp 0 0 :::8161   :::*   LISTEN      1340/java
tcp 0 0 :::5672   :::*   LISTEN      1340/java
tcp 0 0 :::61614  :::*   LISTEN      1340/java
tcp 0 0 :::61616  :::*   LISTEN      1340/java
tcp 0 0 :::34232  :::*   LISTEN      1340/java
tcp 0 0 :::1883   :::*   LISTEN      1340/java

从:
# netstat -antp | grep java
tcp 0 0 :::35102  :::*   LISTEN      1341/java

4.3 在【主】上关闭ActiveMQ

# activemq stop

4.4 在【从】上查看ActiveMQ的端口

# netstat -antp | grep java
tcp 0 0 :::35102  :::*   LISTEN      1341/java
tcp 0 0 :::8161   :::*   LISTEN      1340/java
tcp 0 0 :::5672   :::*   LISTEN      1340/java
tcp 0 0 :::61614  :::*   LISTEN      1340/java
tcp 0 0 :::61616  :::*   LISTEN      1340/java
tcp 0 0 :::1883   :::*   LISTEN      1340/java

4.5 访问

http://172.16.0.211:8161/ 无法访问
http://172.16.0.212:8161/ 可以访问

END

发布了57 篇原创文章 · 获赞 3 · 访问量 993

猜你喜欢

转载自blog.csdn.net/weixin_42502744/article/details/103720889