消息中间件--"rocketmq"01之环境搭建
前置知识
ssh工具
连接linux工具SecureCRT
Linux相关知识
centos7 防火墙firewalld的基本使用,参考
- 启动:
systemctl start firewalld - 查看状态:
systemctl status firewalld - 停止:
systemctl disable firewalld - 禁用:
systemctl stop firewalld
配置firewalld-cmd
- 查看版本: firewall-cmd --version
- 查看帮助: firewall-cmd --help
- 显示状态: firewall-cmd --state
- 查看所有打开的端口: firewall-cmd --zone=public --list-ports
- 更新防火墙规则: firewall-cmd --reload
- 查看区域信息: firewall-cmd --get-active-zones
- 查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
- 拒绝所有包:firewall-cmd --panic-on
- 取消拒绝状态: firewall-cmd --panic-off
- 查看是否拒绝: firewall-cmd --query-panic
开启一个对外端口步骤
- 先查看是否开启,查看所有打开的端口:
firewall-cmd --zone=public --list-ports - 添加:
firewall-cmd --zone=public --add-port=80/tcp --permanent(--permanent永久生效,没有此参数重启后失效)
//命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
- 重新载入:
firewall-cmd --reload - 查看是否开启:
firewall-cmd --zone=public --query-port=80/tcp - 删除:
firewall-cmd --zone= public --remove-port=80/tcp --permanent
服务器环境(针对2m-noslave)
| 序号 | IP | 用户名 | 密码 | 角色 | 模式 |
|---|---|---|---|---|---|
| 1 | 192.168.100.24 | root | nameServer1,brokerServer1 | Master1 | |
| 2 | 192.168.100.25 | root | nameServer2,brokerServer2 | Master2 |
Hosts添加信息
修改host,做集群的通讯(两台机器都修改)
vim /etc/hosts

| IP | NAME |
|---|---|
| 192.168.100.24 | rocketmq-nameserver1 |
| 192.168.100.24 | rocketmq-master1 |
| 192.168.100.25 | rocketmq-nameserver2 |
| 192.168.100.25 | rocketmq-master2 |
rocketmq安装
双master模式(双namesrv双broker)
上传解压
上传
使用 rz sz插件,进行上传下载
yum install -y lrzsz
上传命令为rz,下载命令为sz
解压安装
tar -zxvf alibaba-rocketmq-3.2.6.tar.gz -C /usr/local //解压到指定目录下
mv alibaba-rocketmq alibaba-rocketmq-3.2.6 //重命名,带版本号
ln -s alibaba-rocketmq-3.2.6 rocketmq //创建软链接、如果不加 -s 就是创建硬链接
创建存储路径
mkdir /usr/local/rocketmq/store
mkdir /usr/local/rocketmq/store/commitlog
mkdir /usr/local/rocketmq/store/consumequeue
mkdir /usr/local/rocketmq/store/index
修改RocketMQ配置文件
vim /usr/local/rocketmq/conf/2m-noslave/broker-a.properties
vim /usr/local/rocketmq/conf/2m-noslave/broker-b.properties
作为broker启动时的参数配置文件
参考配置
#所属集群名字
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样
brokerName=broker-a|broker-b
#0 表示 Master,>0 表示 Slave
brokerId=0
#nameServer地址,分号分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=10911
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#检测物理文件磁盘空间
diskMaxUsedSpaceRatio=88
#存储路径
storePathRootDir=/usr/local/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=ASYNC_MASTER
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
#checkTransactionMessageEnable=false
#发消息线程池数量
#sendMessageThreadPoolNums=128
#拉消息线程池数量
#pullMessageThreadPoolNums=128
修改日志配置文件
修改启动脚本参数
上面两步省略,直接上传到linux解压等即可
启动服务namesrv
1.到bin目录下
加入执行权限 chmod +x *
2.修改启动的堆内存初始大小
`vim runserver.sh` //更改内存设置
3.启动
./mqnamesrv
4.后台运行进程:
nohup ./mqnamesrv &
5.jps查看进程
查看是否成功: tail -f nohup.out
启动服务broker(master)
1.修改启动的堆内存初始大小
vim runbroker.sh //更改内存设置
2. 启动
nohup sh mqbroker -n "192.168.1.107:9876" &
3.指定配置文件的方式启动
nohup sh mqbroker -n "192.168.1.107:9876" -c ../conf/2m-noslave/broker-a.properties > broker.out &
nohup sh mqbroker -n "127.0.0.1:9876" -c ../conf/2m-noslave/broker-a.properties > broker.out &
nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-noslave/broker-a.properties >/dev/null 2>&1 &
# 用这个,不要指定namesrv地址
4.使用./mqadmin来观察namesrv和broker的情况
./mqadmin clusterList -n 192.168.1.107:9876 //ip为namesrv地址
查看是否成功启动
netstat -ntlp
# jps
# tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/broker.log
# tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log
停止Rocketmq
cd /usr/local/rocketmq/bin
sh mqshutdown broker
sh mqshutdown namesrv
数据清理(停止后进行数据清理)
--等待停止
# rm -rf /usr/local/rocketmq/store
# mkdir /usr/local/rocketmq/store
# mkdir /usr/local/rocketmq/store/commitlog
# mkdir /usr/local/rocketmq/store/consumequeue
# mkdir /usr/local/rocketmq/store/index
--按照上面步骤重启NameServer与BrokerServer
5.RocketMQ需要打开的防火请端口号 9876,10911,10912
消息中间件--"rocketmq"01之环境搭建的更多相关文章
- rocketmq 集群环境搭建配置
rocketmq环境搭建配置: 一. 搭建三主集群,环境:centos-64 7.4 + RocketMQ-4.3.2 Master01: 192.168.102.68 Master02: 192 ...
- RocketMQ之三:RocketMQ集群环境搭建
1.初步理解Producer/Consumer Group 在安装RocketMQ之前我们先来理解Group概念,在RocketMQ中Group是很重要的.通过Group机制,让RocketMQ天然的 ...
- golang(01) linux环境搭建和编码
1 在自己的工作目录下建立一个goproject文件夹 /home/secondtonone/goproject 2 在文件夹下建立如下三个文件 bin pkg srcbin 保存执行go insta ...
- [转]SAPUI5 (01) - OpenUI5环境搭建
本文转自:http://blog.csdn.net/stone0823/article/details/53750094 版权声明:本文为博主原创文章,转载请注明出处:http://blog.csdn ...
- SpringBoot2.0基础案例(01):环境搭建和RestFul风格接口
一.SpringBoot 框架的特点 1.SpringBoot2.0 特点 1)SpringBoot继承了Spring优秀的基因,上手难度小 2)简化配置,提供各种默认配置来简化项目配置 3)内嵌式容 ...
- 【Vue 学习系列 - 01】- 环境搭建(Win7)
1. 根据系统下载Node.js 下载地址:http://nodejs.cn/download 2. 安装Node.js 点击安装Node.js,在安装目录D:\Program Files\nodej ...
- Flask学习笔记01之环境搭建
使用pycharm搭建Flask运行环境 1. 打开pycharm ,创建一个新的工程 2. 选择创建Flask项目 3. Flask项目创建成功,结构如下 4. 运行项目 5. 发送请求 over!
- Vulkan Tutorial 01 开发环境搭建之Windows
操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 相信很多人在开始学习Vulkan开发的起始阶段都会在开发环境的配置上下一些功夫,那么 ...
- Java从入门到放弃——01.Java 环境搭建
本文目标: 下载与安装JDK 配置Java环境 1.JDK9下载: 下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jav ...
随机推荐
- MyEclipse部署web项目的关键
我自己的经验: 主要有3点: 自己的代码要正确 数据库服务确保已经启动 确保你的访问路径是正确的 1.自己的代码要正确 比如jdbc驱动,正确的写法:private static final Stri ...
- Python——爬虫学习2
BeautifulSoup插件的使用 这个插件需要先使用pip安装(在上一篇中不再赘言),然后再程序中申明引用 from bs4 import BeautifulSoup html=self.requ ...
- Java基础教程(1)--概述
一.什么是Java语言 Java是于1996年由Sun公司发布的一种极富创造力的面向对象的程序设计语言.它不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java ...
- Django(二):url和views
网络通讯的本质是socket,从socket封装到MVC模式,参见另外几篇博客.本节笔记整理自Django2.0官方文档. 一.url调度器 - django.urls.path django2.0中 ...
- JPA 实体映射
一.实体基本映射 /* * @Entity:将领域对象标注为一个实体,表示保存到数据库中 * @@Table:保存到数据库中表名,默认表名为类名,可通过name属性命名 * * */ @Entity ...
- String拾遗
简介: String作为日常最常用的类,还是有必要对其中的细节做一些了解的,这篇就结合源码来看看这个常用的类. 一. 总述 类图如下: 从图中可以看到String是实现了 java.io.Serial ...
- 有标号的DAG计数系列问题
传送门 II 设 \(f_i\) 表示 \(i\) 个点的答案 那么枚举至少 \(j\) 个点的出度为 \(0\) \[\sum_{j=0}^{i}(-1)^j\binom{i}{j}f_{i-j}2 ...
- Tarjan系列1
tajan的dfs树系列算法: 求解割点,桥,强连通分量,点双联通分量,边双联通分量: tajan是一个dfs,把一个图变成一个dfs树结构, dfs树结构,本质是通过一个没有任何要求的dfs把图的边 ...
- 在linux中给你的应用做压力测试
在linux中给你的应用做压力测试 作者: 立地 邮箱: jarvin_g@126.com QQ: 511363759 一.webbench 1.在Ubuntu中安装webbench —支持get,h ...
- RAP, 高效前后端联调框架,接口文档管理工具
RAP通过GUI工具帮助WEB工程师更高效的管理接口文档,同时通过分析接口结构自动生成Mock数据.校验真实接口的正确性,使接口文档成为开发流程中的强依赖.有了结构化的API数据,RAP可以做的更多, ...