设为首页 收藏本站
查看: 916|回复: 0

[经验分享] activemq+zookeeper 集群部署基于levedb

[复制链接]

尚未签到

发表于 2019-1-8 09:15:17 | 显示全部楼层 |阅读模式

  •   集群图

  •   zookeeper集群,上一篇博客写了zookeeper集群的部署
    Ip服务注册端口
    主机名
    192.168.56.152181zk01
    192.168.56.16
    2181zk02
    192.168.56.17
    2181zk03

  •   activemq部署
      

    IP管控台端口集群通讯端口消息端口
    192.168.56.15
    81616162151511
    192.168.56.16
    816261622
    51512
    192.168.56.17
    81636162351513

  •   host解析必须做
[root@zk03 conf]# cat /etc/hosts
192.168.56.15 zk01
192.168.56.16 zk02
192.168.56.17 zk03  5.
  5.1 zookeeper 集群不在配置,参看前面博客
  5.2 activemq 安装包
说明:zk03 是zookeeper的 activemq03 是activemq的 jdk 是java环境 redis不用管
三台机器全部部署
[root@zk03 opt]# pwd
/opt
[root@zk03 opt]# ll
total 12
lrwxrwxrwx  1 root root    21 Dec 31 18:20 activemq03 -> apache-activemq-5.9.0
drwxr-xr-x 10  501 games 4096 Oct 15  2013 apache-activemq-5.9.0
lrwxrwxrwx  1 root root    11 Dec 25 01:27 jdk -> jdk1.7.0_80
drwxr-xr-x  8   10   143 4096 Apr 11  2015 jdk1.7.0_80
lrwxrwxrwx  1 root root    11 Dec 25 19:35 redis -> redis-3.0.6
drwxr-xr-x  4 root root    27 Dec 25 19:38 redis-3.0.6
drwxr-xr-x  2 root root   125 Dec 31 18:20 tools
lrwxrwxrwx  1 root root    15 Dec 25 01:29 zk03 -> zookeeper-3.4.9
drwxr-xr-x 12 1001  1001 4096 Dec 25 01:48 zookeeper-3.4.9
[root@zk03 opt]#  5.3 修改所有activemq管控台的端口
只需要该118行的端口
[root@zk01 conf]# pwd
/opt/activemq01/conf
[root@zk01 conf]# grep 8161 jetty.xml
118:      
[root@zk01 conf]# grep -n  8161 jetty.xml
118:        
[root@zk01 conf]#
[root@zk02 conf]# grep -n 8162  jetty.xml
118:        
135:                      #默认注释的端口 不用管
[root@zk02 conf]#
[root@zk03 conf]# grep -n  8163 jetty.xml
118:        
[root@zk03 conf]#  5.4 修改broker的名称
vi activemq.xml
只需要修改brokerName="dubboedu"   默认是localhost
三台改成一样的
  5.5 修改集群通讯的端口以及leveldb存储模式
vim activemq.xml文件中中的内容
  zk01:
        
              
        
  zk02:
      
                  
        
  zk03:
           
               
          

  5.6 修改消息端口
  activemq.xml配置文件
zk01
  [root@zk01 conf]# grep  -n  51511 activemq.xml
120:            
[root@zk01 conf]#
  zk02
  [root@zk02 conf]# grep  -n 51512 activemq.xml
120:            
[root@zk02 conf]#
zk03
[root@zk03 conf]# grep -n  51513 activemq.xml
120:              6.启动activemq

zookeeper一定要提前启动
顺序启动activemq
[root@zk01 bin]# /opt/activemq01/bin/activemq start
INFO: Using default configuration
(you can configure options in one of these file: /etc/default/activemq /root/.activemqrc)
INFO: Invoke the following command to create a configuration file
/opt/activemq01/bin/activemq setup [ /etc/default/activemq | /root/.activemqrc ]
INFO: Using java '/opt/jdk/bin/java'
INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
INFO: pidfile created : '/opt/activemq01/data/activemq-zk01.pid' (pid '4541')

[root@zk02 conf]# /opt/activemq02/bin/activemq start
INFO: Using default configuration
(you can configure options in one of these file: /etc/default/activemq /root/.activemqrc)
INFO: Invoke the following command to create a configuration file
/opt/activemq02/bin/activemq setup [ /etc/default/activemq | /root/.activemqrc ]
INFO: Using java '/opt/jdk/bin/java'
INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
INFO: pidfile created : '/opt/activemq02/data/activemq-zk02.pid' (pid '4492')
[root@zk02 conf]#

[root@zk03 conf]# /opt/activemq03/bin/activemq start
INFO: Using default configuration
(you can configure options in one of these file: /etc/default/activemq /root/.activemqrc)
INFO: Invoke the following command to create a configuration file
/opt/activemq03/bin/activemq setup [ /etc/default/activemq | /root/.activemqrc ]
INFO: Using java '/opt/jdk/bin/java'
INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
INFO: pidfile created : '/opt/activemq03/data/activemq-zk03.pid' (pid '2296')  7.查看分片以及zookeeper的信息
登录任意一台zookeeper就行
[root@zk02 bin]# pwd
/opt/zk02/bin
[root@zk02 bin]# ./zkCli.sh   -server 192.168.56.16:2181
[zk: 192.168.56.16:2181(CONNECTED) 0] ls  /
[activemq, dubbo, zookeeper]
[zk: 192.168.56.16:2181(CONNECTED) 1] ls /activemq
[leveldb-stores]
[zk: 192.168.56.16:2181(CONNECTED) 2] ls /activemq/leveldb-stores
[00000000002, 00000000001, 00000000000]
[zk: 192.168.56.16:2181(CONNECTED) 3]
elected值不为空的是消息activemq的master节点
[zk: 192.168.56.16:2181(CONNECTED) 3] get /activemq/leveldb-stores/00000000002
{"id":"dubboedu","container":null,"address":null,"position":-1,"weight":1,"elected":null}
cZxid = 0x400000012
ctime = Sat Dec 31 19:33:44 CST 2016
mZxid = 0x400000012
mtime = Sat Dec 31 19:33:44 CST 2016
pZxid = 0x400000012
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x259544b516a0000
dataLength = 89
numChildren = 0
[zk: 192.168.56.16:2181(CONNECTED) 4] get /activemq/leveldb-stores/00000000001
{"id":"dubboedu","container":null,"address":null,"position":-1,"weight":1,"elected":null}
cZxid = 0x400000008
ctime = Sat Dec 31 19:33:16 CST 2016
mZxid = 0x400000015
mtime = Sat Dec 31 19:33:45 CST 2016
pZxid = 0x400000008
cversion = 0
dataVersion = 8
aclVersion = 0
ephemeralOwner = 0x359544bcfbb0001
dataLength = 89
numChildren = 0
[zk: 192.168.56.16:2181(CONNECTED) 5] get /activemq/leveldb-stores/00000000000
{"id":"dubboedu","container":null,"address":"tcp://zk01:62621","position":-1,"weight":1,"elected":"0000000000"}
cZxid = 0x400000005
ctime = Sat Dec 31 19:32:51 CST 2016
mZxid = 0x40000000d
mtime = Sat Dec 31 19:33:17 CST 2016
pZxid = 0x400000005
cversion = 0
dataVersion = 4
aclVersion = 0
ephemeralOwner = 0x359544bcfbb0000
dataLength = 111
numChildren = 0
[zk: 192.168.56.16:2181(CONNECTED) 6]  8 测试高可用activemq

  8.1 正产三个节点:
[zk: 192.168.56.16:2181(CONNECTED) 3] ls /activemq/leveldb-stores
[00000000002, 00000000001, 00000000000]
[zk: 192.168.56.16:2181(CONNECTED) 4]  8.2 此时activemq02处于主节点,停掉主节点
停掉主节点activemq:
[root@zk02 bin]# ./activemq stop
查看消息队列的信息,可以看出重新选出来主节点
[zk: 192.168.56.16:2181(CONNECTED) 4] ls /activemq/leveldb-stores
[00000000002, 00000000000]
[zk: 192.168.56.16:2181(CONNECTED) 5] ls /activemq/leveldb-stores/00000000002
[]
[zk: 192.168.56.16:2181(CONNECTED) 6] get /activemq/leveldb-stores/00000000002
{"id":"dubboedu","container":null,"address":null,"position":-1,"weight":1,"elected":null}
cZxid = 0x400000012
ctime = Sat Dec 31 19:33:44 CST 2016
mZxid = 0x400000012
mtime = Sat Dec 31 19:33:44 CST 2016
pZxid = 0x400000012
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x259544b516a0000
dataLength = 89
numChildren = 0
[zk: 192.168.56.16:2181(CONNECTED) 7] get /activemq/leveldb-stores/00000000000
{"id":"dubboedu","container":null,"address":"tcp://zk01:62621","position":-1,"weight":1,"elected":"0000000000"}
cZxid = 0x400000005
ctime = Sat Dec 31 19:32:51 CST 2016
mZxid = 0x40000000d
mtime = Sat Dec 31 19:33:17 CST 2016
pZxid = 0x400000005
cversion = 0
dataVersion = 4
aclVersion = 0
ephemeralOwner = 0x359544bcfbb0000  8.3 启动activemq02
[root@zk02 bin]# ./activemq start
查看消息队列的信息  
[zk: 192.168.56.16:2181(CONNECTED) 8] ls /activemq/leveldb-stores            
[00000000003, 00000000002, 00000000000]               #重新加进来
[zk: 192.168.56.16:2181(CONNECTED) 9]  8.5java代码链接activemq
  java  conf 消息队列的配置文件
failover:(tcp://192.168.56.15:51511,tcp://192.168.56.16:51512.tcp://192.168.56.17:51513)?random=false
mq.username=admin
my.password=admin        #这是消息队列的用户名和密码 生产场景自己修改
mq.pool.maxConnection=10
queueName=队列的名称  9.开机自动启动不要忘了做了!!
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-660588-1-1.html 上篇帖子: zookeeper集群部署监控与选举同步流程等工作原理 下篇帖子: 依赖Zookeeper生成全局唯一序列号
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表