K8S Helm安装RocketMQ standalone单机版,配置外网地址注册到nameserver中方便本地开发

本文主要是介绍K8S Helm安装RocketMQ standalone单机版,配置外网地址注册到nameserver中方便本地开发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

K8S Helm安装RocketMQ standalone单机版,配置外网地址注册到nameserver中方便本地开发

helm地址

rocketmq 3.0.2 · sir5kong/rocketmq

helm repo add rocketmq https://helm-charts.itboon.top/rocketmq

helm pull rocketmq/rocketmq

tar -xvf rocketmq-3.0.2.tgz

修改配置

修改这个无效

/root/rocketmq/rocketmq/templates/borker/configmap.yaml

文件头有注释 {{/* 3.0 废弃 */}}

修改外网配置namesrvAddr、brokerIP1、listenPort

vi /root/rocketmq/rocketmq/templates/configmap.yaml

data:broker-base.conf: |brokerClusterName = {{ .Values.clusterName }}
{{- range $key, $value := .Values.broker.config }}{{ $key }} = {{ $value }}
{{- end }}namesrvAddr=你的外网地址加端口:3xxxxbrokerIP1=你的外网地址listenPort=30911  将10911改成30911,k8s对外端口30000以上此时如此优秀的RocketMQ也会把你的10909和10912也会改成3打头的 30909(VIP) 30912(HA)

参考:RcoketMQ连接时报错sendDefaultImpl call timeout解决_rcoketmq send call timeout-CSDN博客

配置文件中的配置项:RocketMQ配置解析:手把手教老婆看懂broker.properties-CSDN博客

修改Borker中的端口

vi /root/rocketmq/rocketmq/templates/broker/statefulset.yaml

全换成3打头的

      ports:- containerPort: 30909name: vipprotocol: TCP- containerPort: 30911name: mainprotocol: TCP- containerPort: 30912name: haprotocol: TCP

创建broker的service方便外网访问borker

vi broker-svc.yamlapiVersion: v1
kind: Service
metadata:name: rocketmq-standalone-broker-master-svc-0labels:
spec:type: NodePortports:- name: vipnodePort: 30909port: 30909targetPort: 30909protocol: TCP- name: mainnodePort: 30911port: 30911targetPort: 30911protocol: TCP- name: hanodePort: 30912port: 30912targetPort: 30912protocol: TCPselector:app.kubernetes.io/name: rocketmqbroker: rocketmq-standalone-broker-mastercomponent: brokerstatefulset.kubernetes.io/pod-name: rocketmq-standalone-broker-master-0

kubectl apply -f broker-svc.yaml -n develop

修改/root/rocketmq/rocketmq/templates模板目录中nameservice和dashboard子目录中的service.yaml修改为NodePort并指定端口

spec:type: NodePortports:nodePort: 3xxxx

安装rocketmq-standalone

helm install rocketmq-standalone /root/rocketmq/rocketmq \--namespace develop \--set image.tag="5.1.4" \ #使用新版本--set image.repository="apache/rocketmq" \ #或者你的私有仓库--set broker.persistence.storageClass="你的storageClass" --debug

反复检查

kubectl logs -f rocketmq-standalone-broker-master-0 -n develop

kubectl describe pod rocketmq-standalone-broker-master-0 -n develop

观察探针 readinessProbe

kubectl get pods -n develop -owide |grep rocket

kubectl get svc -n develop |grep rocket

rocketmq-standalone-broker-master-svc-0 NodePort 30909:30909/TCP,30911:30911/TCP,30912:30912/TCP

去dashboard中去看看是否正常

出错了卸载

helm uninstall rocketmq-standalone -n develop

创建个springboot工程访问试试

参考:SpringBoot集成RocketMQ(完整demo)_用springboot写一个简单使用rocketmq的demo-CSDN博客

上dashboard中的创建topic mq_test_topic

http://localhost:8080/test?msg=hello

在本地Git shell窗口里跑100个请求试试

for i in {1..100}; do curl http://localhost:8080/test?msg=hello && echo ""; done

去dashboard中去看看

这篇关于K8S Helm安装RocketMQ standalone单机版,配置外网地址注册到nameserver中方便本地开发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/547812

相关文章

Oracle迁移PostgreSQL隐式类型转换配置指南

《Oracle迁移PostgreSQL隐式类型转换配置指南》Oracle迁移PostgreSQL时因类型差异易引发错误,需通过显式/隐式类型转换、转换关系管理及冲突处理解决,并配合验证测试确保数据一致... 目录一、问题背景二、解决方案1. 显式类型转换2. 隐式转换配置三、维护操作1. 转换关系管理2.

Python38个游戏开发库整理汇总

《Python38个游戏开发库整理汇总》文章介绍了多种Python游戏开发库,涵盖2D/3D游戏开发、多人游戏框架及视觉小说引擎,适合不同需求的开发者入门,强调跨平台支持与易用性,并鼓励读者交流反馈以... 目录PyGameCocos2dPySoyPyOgrepygletPanda3DBlenderFife

使用Python开发一个Ditto剪贴板数据导出工具

《使用Python开发一个Ditto剪贴板数据导出工具》在日常工作中,我们经常需要处理大量的剪贴板数据,下面将介绍如何使用Python的wxPython库开发一个图形化工具,实现从Ditto数据库中读... 目录前言运行结果项目需求分析技术选型核心功能实现1. Ditto数据库结构分析2. 数据库自动定位3

IDEA中配置Tomcat全过程

《IDEA中配置Tomcat全过程》文章介绍了在IDEA中配置Tomcat的六步流程,包括添加服务器、配置部署选项、设置应用服务器及启动,并提及Maven依赖可能因约定大于配置导致问题,需检查依赖版本... 目录第一步第二步第三步第四步第五步第六步总结第一步选择这个方框第二步选择+号,找到Tomca

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

Win10安装Maven与环境变量配置过程

《Win10安装Maven与环境变量配置过程》本文介绍Maven的安装与配置方法,涵盖下载、环境变量设置、本地仓库及镜像配置,指导如何在IDEA中正确配置Maven,适用于Java及其他语言项目的构建... 目录Maven 是什么?一、下载二、安装三、配置环境四、验证测试五、配置本地仓库六、配置国内镜像地址

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

解决RocketMQ的幂等性问题

《解决RocketMQ的幂等性问题》重复消费因调用链路长、消息发送超时或消费者故障导致,通过生产者消息查询、Redis缓存及消费者唯一主键可以确保幂等性,避免重复处理,本文主要介绍了解决RocketM... 目录造成重复消费的原因解决方法生产者端消费者端代码实现造成重复消费的原因当系统的调用链路比较长的时