Apache哪位大侠有k8s部署rocketmq5.0的yaml 学习一下呀?
以下是一个简单的Kubernetes部署RocketMQ 5.0的示例YAML文件:
# rocketmq-namesrv.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: rocketmq-namesrv
spec:
serviceName: rocketmq-namesrv
replicas: 1
selector:
matchLabels:
app: rocketmq-namesrv
template:
metadata:
labels:
app: rocketmq-namesrv
spec:
containers:
- name: rocketmq-namesrv
image: rocketmqinc/rocketmq:4.5.1
imagePullPolicy: IfNotPresent
ports:
- containerPort: 9876
env:
- name: JVM_OPTS
value: "-Duser.home=/opt"
command: [ "sh", "-c", "cd /opt/rocketmq-4.5.1/bin && sh mqnamesrv" ]
---
# rocketmq-broker.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: rocketmq-broker
spec:
serviceName: rocketmq-broker
replicas: 2
selector:
matchLabels:
app: rocketmq-broker
template:
metadata:
labels:
app: rocketmq-broker
spec:
containers:
- name: rocketmq-broker
image: rocketmqinc/rocketmq:4.5.1
imagePullPolicy: IfNotPresent
ports:
- containerPort: 10909
- containerPort: 10911
env:
- name: NAMESRV_ADDR
value: rocketmq-namesrv:9876
- name: JVM_OPTS
value: "-Duser.home=/opt"
command: [ "sh", "-c", "cd /opt/rocketmq-4.5.1/bin && sh mqbroker -c /opt/rocketmq-4.5.1/conf/broker.conf" ]
这个示例使用StatefulSet来部署RocketMQ的Namesrv和Broker节点。Namesrv节点使用rocketmq-namesrv
标签,Broker节点使用rocketmq-broker
标签。
你可以将上述代码保存为rocketmq.yaml
文件,并使用kubectl apply -f rocketmq.yaml
命令来部署RocketMQ。
需要注意的是,上述示例使用的是RocketMQ 4.5.1的镜像,你可以根据需要修改镜像版本。另外,还可以根据实际需求进行进一步的配置调整,例如持久化存储、资源限制等。
Apache RocketMQ官方发布了Kubernetes部署的YAML文件,您可以通过以下步骤来获取和使用:
访问RocketMQ官方Github仓库的k8s目录,获取Kubernetes部署的YAML文件:https://github.com/apache/rocketmq-kubernetes/tree/master/k8s
下载并解压YAML文件,可以在本地查看和编辑。其中,包含了RocketMQ的各个组件的配置文件,包括nameserver、broker、console等。
根据自己的需求,修改YAML文件中的配置内容,并按照顺序部署各个组件。
在Kubernetes集群中执行kubectl apply命令,将修改后的YAML文件部署到Kubernetes中。
需要注意的是,RocketMQ的Kubernetes部署需要一定的Kubernetes和RocketMQ的基础知识,建议在使用前先了解相关知识,以确保正确部署和使用。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系产品 Serverless 化。RocketMQ 一站式学习:https://rocketmq.io/