RocketMQ 单机部署(单master模式)
一、为了快速了解rockmq,先搭建一个简单的单机版的rocketmq,前期准备:
1、CentOS 7.6 64位(阿里云)(4G内存)
2、jdk1.8
3、maven 3.5.4
4、直接从官网上面下载rockmq源码(下载地址:http://rocketmq.apache.org/release_notes/release-notes-4.4.0/)
二、部署
1、将rocketmq-all-4.4.0-bin-release.zip上传到linux服务器上面/usr/local/rocketmq(路径看自己习惯)
2、在centos上安装unzip工具包,运行命令yum install unzip
3、解压rocketmq-all-4.4.0-bin-release.zip,命令 unzip rocketmq-all-4.4.0-bin-release.zip
4、由于broker启动时,需要占用大量内存,测试时,可以修改配置文件,以减小内存的消耗
修改bin目录下的runserver.sh文件:
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:PermSize=128m -XX:MaxPermSize=320m"
同理修改runbroker.sh文件:
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m
同理修改tools.sh文件:
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:PermSize=128m -XX:MaxPermSize=128m"
5、启动nameserver
nohup sh bin/mqnamesrv & // 启动
通过jps命令查看是否启动成功
6、官网的这个启动broker命令特别坑,启动时broker会通过私有ip启动,会导致客户端无法远程连接,所以启动之前我们需要修改一下配置文件,修改如下:
vi ./conf/broker.conf
7、启动broker
nohup sh bin/mqbroker -n xxxx:9876 autoCreateTopicEnable=true -c /usr/local/rocketmq/rocketmq-all-4.4.0-bin-release/conf/broker.conf & // 启动broker,xxxx为你的公有ip,或者是localhost也可以,路径根据自己的实际路径
通过jps命令查看是否启动成功
8、以上rocketmq的服务已经全部起来
三、通过控制台连接rocketmq
1、下载rocketmq console,地址:https://github.com/apache/incubator-rocketmq-externals/tree/master/rocketmq-console
下载源码后,找到配置文件application.properties,并按照自己需求进行配置。
例如:rocketmq.config.namesrvAddr=namesrv服务地址(ip1:port;ip2:port)
2、在文件根目录执行命令,进行代码打包
在打包之前要修改pom文件,否则会报找不到对应版本的jar,不知道为啥没有官网提供的版本
mvn clean package -Dmaven.test.skip=true
然后在target目录下找到文件rocketmq-console-ng-1.0.0.jar,上传到centos上
3、启动rocketmq-console,执行命令:
java -jar rocketmq-console-ng-1.0.0.jar
通过jps命令查看是否成功
4.通过浏览器输入http://192.168.162.xxx:8080/回车显示监控界面如下:
说明rocketmq console控制台部署成功
RocketMQ 单机部署(单master模式)的更多相关文章
- k8s 组件介绍__单Master集群部署
参考链接:https://github.com/opsnull/follow-me-install-kubernetes-cluster kubernetes 概述 1.kubernetes 是什么 ...
- 使用kubeadm进行单master(single master)和高可用(HA)kubernetes集群部署
kubeadm部署k8s 使用kubeadm进行k8s的部署主要分为以下几个步骤: 环境预装: 主要安装docker.kubeadm等相关工具. 集群部署: 集群部署分为single master(单 ...
- RocketMQ初探(五)之RocketMQ4.2.6集群部署(单Master+双Master+2m+2s+async异步复制)
以下部署方式结合众多博友的博客,经过自己一步一步实际搭建,如有雷同,侵权行为,请见谅...其中遇到不少的坑,希望能帮到更多的人,现在很少能找到一份完整版4.2.6版本的搭建教程了,如果你有幸遇见,那么 ...
- Docker 部署 RocketMQ 双主双从模式( 版本v4.7.0)
文章转载自:http://www.mydlq.club/article/96/ 系统环境: 系统版本:CentOS 7.8 RocketMQ 版本:4.7.0 Docker 版本:19.03.13 一 ...
- RocketMQ 消息队列单机部署及使用
转载请注明来源:http://blog.csdn.net/loongshawn/article/details/51086876 相关文章: <RocketMQ 消息队列单机部署及使用> ...
- RocketMQ环境搭建(双master模式)
介绍: 多Master模式,一个集群无Slave,全是Master,例如2个Master或者3个Master. 优点:配置简单,单个Master宕机或重启维护对应用无影响,在磁盘配置为RAID10时, ...
- MySQL+MGR 单主模式和多主模式的集群环境 - 部署手册 (Centos7.5)
MySQL Group Replication(简称MGR)是MySQL官方于2016年12月推出的一个全新的高可用与高扩展的解决方案.MGR是MySQL官方在5.7.17版本引进的一个数据库高可用与 ...
- Spark Tachyon编译部署(含单机和集群模式安装)
Tachyon编译部署 编译Tachyon 单机部署Tachyon 集群模式部署Tachyon 1.Tachyon编译部署 Tachyon目前的最新发布版为0.7.1,其官方网址为http://tac ...
- MySQL MGR 单主模式下master角色切换规则
MGR单主模式,master节点可读可写,其余节点都是只读.当配置MGR为单主模式,非master节点自动开启super_read_only 当可读可写的节点异常宕机,会进行怎样的切换?在选择新的可写 ...
随机推荐
- ES查询不重复的数据
GET ana-apk/_search #查询不重复的mac地址{ "size": 10, "aggs": { "MAC": { ...
- 「CQOI2009」中位数
「CQOI2009」中位数 传送门 这道题将会用到一点桶的思想. 首先我们可以在排列中先找到 \(b\) 的位置(找不到的话就直接输出 \(0\)). 然后我们从 \(b\) 的位置(设为 \(p\) ...
- 质因数分解(0)<P2012_1>
质因数分解 (prime.cpp/c/pas) [问题描述] 已知正整数n是两个不同的质数的乘积,试求出较大的那个质数. [输入] 输入文件名为prime.in. 输入只有一行,包含一个正整数n. [ ...
- poj1988 Cube Stacking(并查集
题目地址:http://poj.org/problem?id=1988 题意:共n个数,p个操作.输入p.有两个操作M和C.M x y表示把x所在的栈放到y所在的栈上(比如M 2 6:[2 4]放到[ ...
- SpringBoot笔记二:整合篇
Spring Boot与缓存 jsr-107 Java Caching定义了5个核心接口分别是CachingProvider, CacheManager, Cache, Entry 和 Expiry. ...
- 六 Spring属性注入的四种方式:set方法、构造方法、P名称空间、SPEL表达式
Spring的属性注入: 构造方法的属性注入 set方法的属性注入
- 四 Spring的工厂类,xml的配置
Spring工厂类的结构图: BeanFactory:老版本的工厂类 BeanFactory:调用getBean的时候,才会生产类的实例 ApplicationFactory:新版本的工厂类 加载配置 ...
- Linux创建智能DNS
根据客户端源IP地址的不同,DNS服务提供不同的解析地址 1.安装dns服务,修改全局配置文件/etc/named.conf # yum -y install bind # vim /etc/name ...
- windows通过zip安装mysql5.7.26的一个坑
需要将my.ini的 红框的/不能写成\ 注意编码格式问题 然后 mysqld --initialize-insecure mysqld --install net start mysql
- while (rs.next()) 与 if(rs.next())的区别
while (rs.next())是用来循环遍历结果集的. if(rs.next())是用来判断结果集是否有值,有值则执行if语句内代码块. 简而言之 while(rs.next()) 就是将rs全部 ...