Centos7上搭建activemq集群和zookeeper集群
Zookeeper集群的搭建
1、环境准备
Zookeeper版本:3.4.10。
三台服务器:
|
IP |
端口 |
通信端口 |
|
10.233.17.6 |
2181 |
2888,3888 |
|
10.233.17.7 |
2181 |
2888,3888 |
|
10.233.17.8 |
2181 |
2888,3888 |
下载上传zookeeper-3.4.10.tar.gz,解压到指定文件夹,并重命名为zookeeper-cluster
2、重命名配置文件
将{zookeeper-dir}/conf/zoo_sample.cfg文件重命名为zoo.cfg

2、修改配置文件
修改内容如下:
|
tickTime=2000 initLimit=10 syncLimit=5 dataDir=/sinotrans-cms/zookeeper-cluster/data clientPort=2181 server.1=10.233.17.9:2888:3888 server.2=10.233.17.11:2888:3888 server.3=10.233.17.31:2888:3888 |
3、新建myid文件
在zookeeper根目录创建data文件夹。

在{zookeeper-dir}/data目录下新建myid文件,并添加内容1,与server.1对应。
快速创建方式:# echo 1 > data/myid

4、开放端口
# firewall-cmd --add-port=2181/tcp --permanent
# firewall-cmd --add-port=2888/tcp --permanent
# firewall-cmd --add-port=3888/tcp –permanent
重启防火墙
# systemctl restart firewalld
5、启动&停止
分别按照顺序启动三台zookeeper。
# {zookeeper-dir}/bin/zkServer.sh start
# {zookeeper-dir}/bin/zkServer.sh stop
6、查看集群状态
# {zookeeper-dir}/bin/zkServer.sh status



出现这样的leader和follower集群就搭建成功了,很明显已经自动划分了follower和leader。
6、下载zookeeper监控工具
可以自行百度下载监控工具ZooInspector,来监控zookeeper集群运行状态。
也可以使用 {zookeeper-dir}/bin/zkCli.sh提供的客户端查看zookeeper集群的状态。
Activemq集群的搭建
1、环境准备
Activemq版本:5.15.3
三台服务器:
|
IP |
集群通讯端口 |
服务端口(默认) |
控制台端口(默认) |
|
10.233.17.6 |
62222 |
61616 |
8161 |
|
10.233.17.7 |
62222 |
61616 |
8161 |
|
10.233.17.8 |
62222 |
61616 |
8161 |
下载上传apache-activemq-5.15.3-bin.tar.gz到服务器,解压到想要的目录,重命名为activemq-cluster。

2、修改配置文件
修改{activemq-dir}/conf/activemq.xml内容如下:
|
## 将brokerName 改为集群的名称,单个几点必须一样,例如:activemqCluster <broker xmlns="http://activemq.apache.org/schema/core" brokerName="activemqCluster" dataDirectory="${activemq.data}"> <persistenceAdapter> <!--<kahaDB directory="${activemq.data}/kahadb"/>--> # 注释或删除原配置 <replicatedLevelDB directory="${activemq.data}/leveldb" replicas="3" bind="tcp://0.0.0.0:62222" zkAddress="10.233.17.9:2181,10.233.17.11:2181,10.233.17.31:2181" hostname="10.233.17.11" zkPath="/activemq/leveldb-stores" /> </persistenceAdapter> |
字段详解:
directory="${activemq.data}/leveldb" 集群方式
replicas="3" 集群结点个数
bind activemq集群通信端口
zkAddress zookeeper集群地址
hostname 本机IP
zkPath activemq集群在zookeeper集群交互文件存储位置
3、开放端口
# firewall-cmd --add-port=62222/tcp --permanent
# firewall-cmd --add-port=61616/tcp --permanent
# firewall-cmd --add-port=8161/tcp –permanent
重启防火墙
# systemctl restart firewalld
4、启动&停止
按顺序启动三个服务器上的activemq。
# {activemq-dir}/bin/activemq start
# {activemq-dir}/bin/activemq stop
5、通过查看zookeeper观察是否搭建成功。

在zookeeper集群看到activemq/leveldb-stores目录下有三个文件,分别代表三个activemq节点。
其中一个节点address和elected不为空,表示搭建成功。
6、访问activemq控制台
三个节点中只有主节点可以访问控制台

Java学习笔记: https://gitee.com/wenlongup/JavaStudyNotes
Java大数据技术分享群: 684474011

Centos7上搭建activemq集群和zookeeper集群的更多相关文章
- centos7上搭建开源系统jforum
centos7上搭建好tomcat,mysql; 将 jforum-2.6.2.war放到tomcat目录的webapps下: 启动tomcat,./startup.sh ,查看webapp下jfor ...
- 大数据集群环境 zookeeper集群环境安装
大数据集群环境 zookeeper集群环境准备 zookeeper集群安装脚本,如果安装需要保持zookeeper保持相同目录,并且有可执行权限,需要准备如下 编写脚本: vi zkInstall.s ...
- Azure上搭建ActiveMQ集群-基于ZooKeeper配置ActiveMQ高可用性集群
ActiveMQ从5.9.0版本开始,集群实现方式取消了传统的Master-Slave方式,增加了基于ZooKeeper+LevelDB的实现方式. 本文主要介绍了在Windows环境下配置基于Zoo ...
- Hadoop(二)CentOS7.5搭建Hadoop2.7.6完全分布式集群
一 完全分布式集群(单点) Hadoop官方地址:http://hadoop.apache.org/ 1 准备3台客户机 1.1防火墙,静态IP,主机名 关闭防火墙,设置静态IP,主机名此处略,参考 ...
- CentOS7.5搭建Hadoop2.7.6完全分布式集群
一 完全分布式集群搭建 Hadoop官方地址:http://hadoop.apache.org/ 1 准备3台客户机 1.2 关闭防火墙,设置静态IP,主机名 关闭防火墙,设置静态IP,主机名此处略 ...
- Kafka学习之(五)搭建kafka集群之Zookeeper集群搭建
Zookeeper是一种在分布式系统中被广泛用来作为:分布式状态管理.分布式协调管理.分布式配置管理.和分布式锁服务的集群.kafka增加和减少服务器都会在Zookeeper节点上触发相应的事件kaf ...
- spark集群搭建(三台虚拟机)——zookeeper集群搭建(3)
!!!该系列使用三台虚拟机搭建一个完整的spark集群,集群环境如下: virtualBox5.2.Ubuntu14.04.securecrt7.3.6_x64英文版(连接虚拟机) jdk1.7.0. ...
- Centos7.5搭建Hadoop2.8.5完全分布式集群部署
一.基础环境设置 1. 准备4台客户机(VMware虚拟机) 系统版本:Centos7.5 节点配置: 192.168.208.128 --Master 192.168.208.129 --Slave ...
- kafka集群和zookeeper集群的部署,kafka的java代码示例
来自:http://doc.okbase.net/QING____/archive/19447.html 也可参考: http://blog.csdn.net/21aspnet/article/det ...
随机推荐
- Linux小工具:文件上传ftp服务器
工作期间,每次将文件上传至ftp服务器时,均需要手工输入ip.用户名.密码等,因此,考虑编写脚本完成文件的上传任务.具体的脚本sync.sh如下: #!/bin/bash source ~/.bash ...
- Day6 下(
T1 模拟,80? #include<iostream> #include<cstring> #include<queue> #include<algorit ...
- MySQL查询上个月数据
SELECT * FROM order o WHERE o.payTime BETWEEN DATE_FORMAT(DATE_ADD(NOW(),INTERVAL MONTH),'%Y-%m-01') ...
- 关于“.WriteLine()是否需要这么多重载”的笔记
在Stack Overflow上看到一个较热门的问题,作笔记于此. Console.WriteLine()有以下如此多的重载: public static void WriteLine(string ...
- Objective-C #define 用法解析 (转)
原文地址: http://blog.csdn.net/kindazrael/article/details/8108868 Objective-C : #define 用法解析 在 C 语言中,预处理 ...
- C++ Knowledge series 2
Programming language evolves always along with Compiler's evolvement The semantics of constructors O ...
- Android实现异步的几种方法
在Android项目中,有经验的开发人员都知道,一些耗时的IO操作等都必须在子线程中去操作,那么可以有哪些方法来开启子线程呢,一般可以使用Java中自带的几种方法,也可以使用Andorid特有的一些类 ...
- JSP 里 的 basePath
Eclipse新建JSP页面的时候不会加上 base 这个变量,需要手动添加,经常忘记,MyEclipse 就不用管了会自动添加. 如果忘了下面代码直接copy即可: <% String pat ...
- polyfill 一个解决兼容的绝佳方案
polyfill为何物 Polyfill你可以理解为“腻子”,就是装修的时候,可以把缺损的地方填充抹平. 举个例子,html5的storage(session,local), 不同浏览器,不同版本,有 ...
- API:Sign签名的执行流程
Sign签名存在目的:为了防止不法分子修改参数数据,进而攻击服务器,导致数据泄露或从中获得利益 例如:一个接口是用户把积分转帐给他的朋友,修改后,变为转帐到攻击者的帐户,这样,攻击者就能得到利益 ...