前置知识


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之环境搭建的更多相关文章

  1. rocketmq 集群环境搭建配置

    rocketmq环境搭建配置: 一.   搭建三主集群,环境:centos-64 7.4 + RocketMQ-4.3.2 Master01: 192.168.102.68 Master02: 192 ...

  2. RocketMQ之三:RocketMQ集群环境搭建

    1.初步理解Producer/Consumer Group 在安装RocketMQ之前我们先来理解Group概念,在RocketMQ中Group是很重要的.通过Group机制,让RocketMQ天然的 ...

  3. golang(01) linux环境搭建和编码

    1 在自己的工作目录下建立一个goproject文件夹 /home/secondtonone/goproject 2 在文件夹下建立如下三个文件 bin pkg srcbin 保存执行go insta ...

  4. [转]SAPUI5 (01) - OpenUI5环境搭建

    本文转自:http://blog.csdn.net/stone0823/article/details/53750094 版权声明:本文为博主原创文章,转载请注明出处:http://blog.csdn ...

  5. SpringBoot2.0基础案例(01):环境搭建和RestFul风格接口

    一.SpringBoot 框架的特点 1.SpringBoot2.0 特点 1)SpringBoot继承了Spring优秀的基因,上手难度小 2)简化配置,提供各种默认配置来简化项目配置 3)内嵌式容 ...

  6. 【Vue 学习系列 - 01】- 环境搭建(Win7)

    1. 根据系统下载Node.js 下载地址:http://nodejs.cn/download 2. 安装Node.js 点击安装Node.js,在安装目录D:\Program Files\nodej ...

  7. Flask学习笔记01之环境搭建

    使用pycharm搭建Flask运行环境 1. 打开pycharm ,创建一个新的工程 2. 选择创建Flask项目 3. Flask项目创建成功,结构如下 4. 运行项目 5. 发送请求 over!

  8. Vulkan Tutorial 01 开发环境搭建之Windows

    操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 相信很多人在开始学习Vulkan开发的起始阶段都会在开发环境的配置上下一些功夫,那么 ...

  9. Java从入门到放弃——01.Java 环境搭建

    本文目标: 下载与安装JDK 配置Java环境 1.JDK9下载:  下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jav ...

随机推荐

  1. jquery操作radio单选按钮,实现取值,动态选中,动态删除的各种方法

    本文主要讲的是在jquery里操作表单radio单选按钮的各种方法,如获取选中的radio的值,动态选中指定的radio项等. 1.获取选中的radio单选按钮的值: var v=$(":r ...

  2. D3基础--数轴

    转载请注明出处! 概述: 与比例尺类似,D3的数轴实际上也使用来定义参数的函数.但与比例尺不同的是,调用数轴函数并不会返回值,而是会生成数轴相关的可见元素.包括:轴线,标签和刻度. 但是要注意数轴函数 ...

  3. MySql的隔离级别总结

    使用MySql也有一段时间了,但是很多MySql相关或者说是数据库相关的知识还是一知半解,最近在学hibernate这个框架时碰到挺多和数据库相关的知识盲区,所以下面根据自己对MySql系统相关知识消 ...

  4. HTTP协议的内容协商

    一.前言 我们在日常的抓包过程中经常可以看到以Accept开头的请求首部,比如:Accept-Language 有一个q值,肯定有人好奇在HTTP规范中为什么要定义这个q值:还有在响应首部有一个名为V ...

  5. C# 圆角button

    因为自带的button是尖角的不太好看 这里在网上找的一份代码改改做个自用的button,画的操作不局限于button也可以画其他的 using System; using System.Collec ...

  6. thinkphp点击导航变色

    1.从该处进入导航页面,点击分贝进入点击的页面. 2.点击1处进入对应的导航栏,导航栏变色. 3.在1图图片点击跳转是给地址添加参数status. 4.在后台IndexController.class ...

  7. 关于mysql的 sql_mode=only_full_group_by 报错

    在mysql中执行 : SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY','')); 官网:https://dev ...

  8. bootstrap学习笔记细化(标题)

    bootstrap中的排版: 标题(h1~h6/.h1~.h6) h1:36px;h2:30px;h3:24px;h4:18px;h5:14px;h6:12px; 副标题(small) 小练习(标题大 ...

  9. html5 转义实体字符 元数据 跳转 全局属性 id class lang style

    实体 Html 实体就是把特殊字符通过代码显示出来, 比如, <>在浏览器会识别为标签,不能正常显示, 这是你就需要安如<去表达左尖括号.     元数据 2. 声明字符编码 3.模 ...

  10. Java 开源博客 Solo 1.5.0 发布 - 新皮肤

    Solo 1.5.0 正式发布了!这个版本主要是加入了 一款新皮肤 next,感谢一直以来关注和支持我们的朋友! 只需一个命令即可启动(不需要安装数据库.部署容器):也可以通过 war 方式部署容器, ...