当前位置: 首页 > news >正文

KubeSphere搭建单节点RocketMQ

前提环境: Docker环境 + Harbor仓库(可选)
  • 参考官方文档: 《Docker 部署 RocketMQ》
    https://rocketmq.apache.org/zh/docs/quickStart/02quickstartWithDocker
  • 参考官方文档: 《RocketMQ Dashboard》
    https://rocketmq.apache.org/zh/docs/deploymentOperations/04Dashboard/
 声明:截图中用的RocketMQ版本是4.9.6搭建完成后无法启动服务,且参数配置不一致,固版本更换为5.3.1所以请忽略截图中的版本号 参考文字信息!

第一步: 下载RocketMQ镜像(并推送到Harbor仓库)

拉取RocketMQ镜像
docker pull docker.unsee.tech/apache/rocketmq:5.3.1
重新打标签并推送到Harbor仓库
docker tag docker.unsee.tech/apache/rocketmq:5.3.1 dockerhub.kubekey.local/library/apache/rocketmq:5.3.1
docker push dockerhub.kubekey.local/library/apache/rocketmq:5.3.1

第二步: 搭建 NameServer

  1. 打开kubesphere,进入服务页面,点击创建。在这里插入图片描述
  2. 选择创建有状态服务,填写基本信息
名称: rocketmq-namesrv
描述: RocketMQ NameServer

在这里插入图片描述
3. 填写容器组设置
选择容器镜像,点击使用默认端口
在这里插入图片描述

由于只需配置NameServer,只需保留9876端口
在这里插入图片描述

配置启动命令

sh
mqnamesrv

在这里插入图片描述

同步主机时区
在这里插入图片描述

  1. 查看容器
    查看服务
    在这里插入图片描述

启动日志
在这里插入图片描述

第三步: 搭建 Broker+Proxy

  1. 创建 broker configmap
    进入项目中的配置字典,创建,填写基本信息
名称: rocketmq-broker-cm
描述: RocketMQ Broker ConfigMap

在这里插入图片描述

  1. 填写数据设置
broker.conf

# 集群名称
brokerClusterName=DefaultCluster
# 节点名称
brokerName=broker-a
# broker id节点ID, 0 表示 master, 其他的正整数表示 slave,不能小于0
brokerId=0
# Broker服务地址    String    内部使用填内网ip,如果是需要给外部使用填公网ip
brokerIP1=rocketmq-broker.registry
# Broker角色
brokerRole=ASYNC_MASTER
# 刷盘方式
flushDiskType=ASYNC_FLUSH
# 在每天的什么时间删除已经超过文件保留时间的 commit log,默认值04
deleteWhen=04
# 以小时计算的文件保留时间 默认值72小时
fileReservedTime=72
# 是否允许Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
# 是否允许Broker自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
# 磁盘使用达到95%之后,生产者再写入消息会报错 CODE: 14 DESC: service not available now, maybe disk full
diskMaxUsedSpaceRatio=95

在这里插入图片描述

  1. 打开kubesphere,进入服务页面,点击创建。
    在这里插入图片描述

  2. 选择创建有状态服务,填写基本信息

名称: rocketmq-broker
描述: RocketMQ Broker
  1. 填写容器组设置
    选择容器镜像,点击使用默认端口
    在这里插入图片描述

去除9876端口,添加8080 8081端口
在这里插入图片描述

配置启动命令

sh
mqbroker,--enable-proxy,-bc /home/rocketmq/rocketmq-5.3.1/conf/broker.conf

在这里插入图片描述

配置环境变量,同步主机时区

NAMESRV_ADDR rocketmq-namesrv.registry:9876

在这里插入图片描述

  1. 存储设置
    挂载配置文件 挂载子路径 选择特定键
/home/rocketmq/rocketmq-5.3.1/conf/broker.conf
broker.conf

在这里插入图片描述

  1. 查看容器
    查看容器 进入终端
    在这里插入图片描述

启动日志
在这里插入图片描述

第四步: 下载 RocketMQ Dashboard镜像(并推送到Harbor仓库)

拉取RocketMQ Dashboard镜像镜像
docker pull docker.unsee.tech/apacherocketmq/rocketmq-dashboard:1.0.0
重新打标签并推送到Harbor仓库
docker tag docker.unsee.tech/apacherocketmq/rocketmq-dashboard:1.0.0 dockerhub.kubekey.local/library/apacherocketmq/rocketmq-dashboard:1.0.0
docker push dockerhub.kubekey.local/library/apacherocketmq/rocketmq-dashboard:1.0.0

第五步: 搭建 RocketMQ Dashboard

  1. 打开kubesphere,进入服务页面,点击创建。
    在这里插入图片描述

  2. 选择创建无状态服务,填写基本信息
    名称: rocketmq-dashboard
    描述: RocketMQ Dashboard
    在这里插入图片描述

  3. 填写容器组设置
    选择容器镜像
    在这里插入图片描述

添加8080端口
在这里插入图片描述

配置环境变量,同步主机时区
JAVA_OPTS
-Drocketmq.namesrv.addr=rocketmq-namesrv.registry:9876
在这里插入图片描述

  1. 查看容器
    查看容器 进入终端
    在这里插入图片描述

启动日志
在这里插入图片描述

第五步: 通过nodeport配置 RocketMQ Borker 与 RocketMQ Dashboard访问端口

  1. 点击服务创建指定工作负载
    在这里插入图片描述
  2. 配置 RocketMQ Borker 对外端口
    选择指定工作负载,同时配置 10099 映射到 外网随机端口
    在这里插入图片描述
  3. 配置 RocketMQ Dashboard 对外端口
    选择指定工作负载,同时配置 8080 映射到 外网随机端口
    在这里插入图片描述
  4. 访问 RocketMQ Dashboard
    浏览器打开 发现RocketMQ服务 已显示
    http://192.168.10.10:36449/#/cluster
    在这里插入图片描述

相关文章:

KubeSphere搭建单节点RocketMQ

前提环境: Docker环境 Harbor仓库(可选) 参考官方文档: 《Docker 部署 RocketMQ》 https://rocketmq.apache.org/zh/docs/quickStart/02quickstartWithDocker参考官方文档: 《RocketMQ Dashboard》 https://rocketmq.apache.org/zh/docs/deploymentOperations/04Dashboard/ 声…...

深度学习中损失函数(loss function)介绍

深度学习中损失函数(loss function)介绍 ​ 在深度学习的宏伟城堡中,损失函数扮演着国王的角色,它决定了模型训练的方向和目标。损失函数,也被称为代价函数,是衡量模型预测与实际结果之间差异的函数。在深度学习的训练过程中&…...

Vue3+Node中使用webrtc推流至mediamtx

前言 项目的 Web 端是 Vue3 框架,后端是 GO 框架。需要实现将客户端的本地摄像头媒体流推送至服务端,而我自己从未有媒体流相关经验,最初 leader 让我尝试通过 RTSP 协议推拉流,我的思路就局限在了 RTSP 方向。 最初使用的服务端…...

React 内置的Hook学习

useState:管理组件状态 useState 是一个用于在函数组件中添加状态的 Hook。它允许你在函数组件中声明一个状态变量,并提供一个更新该状态的方法,其中与组件生命周期的关系: 初始化:当组件首次渲染时,useS…...

Flutter Navigator2.0的原理和Web端实践

01 背景与动机 在Navigator 2.0推出之前,Flutter主要通过Navigator 1.0和其提供的 API(如push(), pop(), pushNamed()等)来管理页面路由。然而,Navigator 1.0存在一些局限性,如难以实现复杂的页面操作(如移…...

初次使用uniapp编译到微信小程序编辑器页面空白,真机预览有内容

uniapp微信小程序页面结构 首页页面代码 微信小程序模拟器 模拟器页面为空白时查了下,有几个说是“Hbuilder编译的时候应该编译出来一个app.js文件 但是却编译出了App.js”,但是我的小程序结构没问题,并且真机预览没有问题 真机调试 根据defi…...

【HF设计模式】03-装饰者模式

声明:仅为个人学习总结,还请批判性查看,如有不同观点,欢迎交流。 摘要 《Head First设计模式》第3章笔记:结合示例应用和代码,介绍装饰者模式,包括遇到的问题、遵循的 OO 原则、达到的效果。 …...

【人工智能-中级】模型部署与优化:从本地实验到云端与边缘部署

模型部署与优化:从本地实验到云端与边缘部署 在机器学习和深度学习模型训练完成后,如何高效、稳定地将模型部署到生产环境中,是实际应用中的关键环节。模型部署不仅涉及技术实现,还需要考虑性能优化、资源管理和安全性等多方面因素。本文将全面探讨模型部署与优化的相关内…...

Jenkins 编写Pipeline 简介及使用初识详解

一、Jenkins Pipeline简介 Jenkins Pipeline是Jenkins的一个重要功能,Jenkins 2.0 以上才会有,一系列 Jenkins 插件将整个持续集成用解释性代码 Jenkinsfile 来描述,它允许开发者以代码的方式定义整个持续集成和交付(CI/CD)流程,包括构建、测试、部署和监控等步骤。Jenk…...

uboot移植网络驱动过程,无法ping通mx6ull和ubuntu问题解决方案

开发板:mx6ull-ALPHA_V2.4 ubuntu版本:20.04 1.现在虚拟机设置中添加网路适配器用于开启桥接模式 2.在编辑中打开“虚拟网络编辑器” 我的电脑本身只有VMnet1和VMnet8,需要底下“添加网络”,增加这个VMnet0 ,并且进行…...

精准预测美国失业率和贫困率,谷歌人口动态基础模型PDFM已开源,可增强现有地理空间模型

疾病、经济危机、失业、灾害……人类世界长期以来被各种各样的问题「侵扰」,了解人口动态对于解决这类复杂的社会问题至关重要。 政府相关人员可以通过人口动态数据来模拟疾病的传播,预测房价和失业率,甚至预测经济危机。然而,在过…...

C#速成(文件读、写操作)

导包 using System.IO;1、写入文件(重要) StreamWriter sw new StreamWriter("C:\Users\29674\Desktop\volumn.txt");//创建一个TXT的文件 sw.WriteLine(textBox2.Text);//写入文件的内容 sw.Close();//关闭2、读取文件(不重要&…...

SQL server学习03-创建和管理数据表

目录 一,SQL server的数据类型 1,基本数据类型 2,自定义数据类型 二,使用T-SQL创建表 1,数据完整性的分类 2,约束的类型 3,创建表时创建约束 4,任务 5,由任务编写…...

【UE5 “RuntimeLoadFbx”插件】运行时加载FBX模型

前言 为了解决在Runtime时能够直接根据FBX模型路径直接加载FBX的问题,推荐一款名为“RuntimeLoadFBX”的插件。 用法 插件用法如下,只需要指定fbx的地址就可以在场景中生成Actor模型 通过指定输入参数“Cal Collision”来设置FBX模型的碰撞 还可以通过…...

【潜意识Java】深入理解 Java 面向对象编程(OOP)

目录 什么是面向对象编程(OOP)? 1. 封装(Encapsulation) Java 中的封装 2. 继承(Inheritance) Java 中的继承 3. 多态(Polymorphism) Java 中的多态 4. 抽象&…...

windows同时使用多个网卡

windows同时链接了有线网络,多个无线网卡,默认会使用有线网络,如果想要局域网内使用某个特定的网络,可以设置静态ip 1. 首先删除原来的静态网络(不冲突可以不删除),我这里usb无线网卡切换过usb插口,这里需要删除原来的. 使用 route print 查看接口列表及静态路由信息 route p…...

Spark执行计划解析后是如何触发执行的?

在前一篇Spark SQL 执行计划解析源码分析中,笔者分析了Spark SQL 执行计划的解析,很多文章甚至Spark相关的书籍在讲完执行计划解析之后就开始进入讲解Stage切分和调度Task执行,每个概念之间没有强烈的关联,因此这中间总感觉少了点…...

B4X编程语言:B4X控件方法汇总

1、AddNode、AddView方法 AddNode(Node As javafx.scence.Node,Left As Double,Top As Double,Width As Double,Height As Double) B4J控件 AddView(View As javafx.scence.Node,Left As Double,Top As Double,Width As Double,Height As Double) B4J的B4XView …...

基于XML配置Bean和基于XML自动装配

目录 基于XML配置Bean id分配规则 通过id获取bean 通过类型获取bean 通过C命名空间配置bean 使用C命名空间 通过P命名空间配置bean 通过util:list进行配置bean 指定id,直接ref引用过来 通过外部属性文件配置Bean Bean信息重用(继承)…...

全排列 dfs

给定一个由不同的小写字母组成的字符串&#xff0c;输出这个字符串的所有全排列。 我们假设对于小写字母有 a<b<…<y<z &#xff0c;而且给定的字符串中的字母已经按照从小到大的顺序排列。 输入格式 输入只有一行&#xff0c;是一个由不同的小写字母组成的字符串…...

Ubuntu系统下交叉编译openssl

一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机&#xff1a;Ubuntu 20.04.6 LTSHost&#xff1a;ARM32位交叉编译器&#xff1a;arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...

SciencePlots——绘制论文中的图片

文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了&#xff1a;一行…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)

在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马&#xff08;服务器方面的&#xff09;的原理&#xff0c;连接&#xff0c;以及各种木马及连接工具的分享 文件木马&#xff1a;https://w…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

Kafka入门-生产者

生产者 生产者发送流程&#xff1a; 延迟时间为0ms时&#xff0c;也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于&#xff1a;异步发送不需要等待结果&#xff0c;同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...

GitHub 趋势日报 (2025年06月06日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...

CppCon 2015 学习:REFLECTION TECHNIQUES IN C++

关于 Reflection&#xff08;反射&#xff09; 这个概念&#xff0c;总结一下&#xff1a; Reflection&#xff08;反射&#xff09;是什么&#xff1f; 反射是对类型的自我检查能力&#xff08;Introspection&#xff09; 可以查看类的成员变量、成员函数等信息。反射允许枚…...

智警杯备赛--excel模块

数据透视与图表制作 创建步骤 创建 1.在Excel的插入或者数据标签页下找到数据透视表的按钮 2.将数据放进“请选择单元格区域“中&#xff0c;点击确定 这是最终结果&#xff0c;但是由于环境启不了&#xff0c;这里用的是自己的excel&#xff0c;真实的环境中的excel根据实训…...

C#中用于控制自定义特性(Attribute)

我们来详细解释一下 [AttributeUsage(AttributeTargets.Class, AllowMultiple false, Inherited false)] 这个 C# 属性。 在 C# 中&#xff0c;Attribute&#xff08;特性&#xff09;是一种用于向程序元素&#xff08;如类、方法、属性等&#xff09;添加元数据的机制。Attr…...

MyBatis-Plus 常用条件构造方法

1.常用条件方法 方法 说明eq等于 ne不等于 <>gt大于 >ge大于等于 >lt小于 <le小于等于 <betweenBETWEEN 值1 AND 值2notBetweenNOT BETWEEN 值1 AND 值2likeLIKE %值%notLikeNOT LIKE %值%likeLeftLIKE %值likeRightLIKE 值%isNull字段 IS NULLisNotNull字段…...