为什么要快速部署Apache RocketMQ?
Aliware
理想汽车作为一家新能源汽车制造商。我们与一般互联网业务特殊之处是多了一个物联网。随着公司的成长业务容量越来越大,在这个过程中,业务对于基础架构的要求也越来越高,我们面临的主要问题有单云资源扩容受限,单云单地域的容灾,单云供应商强依赖,物联网单点接入等问题。
如何实现快速部署Apache RocketMQ?
Aliware
大家在部署 ApacheRocketMQ 集群通常的过程如下:
效果展示
Apache RocketMQ Playbook介绍
Aliware
ApacheRocketMQ Playbook 可以部署一个完整 Apache RocketMQ 集群(包括 Apache RocketMQ Exporter)。Apache RocketMQPlaybook 具有幂等性,重复执行时不会重启正在运行的进程,可以进行 Apache RocketMQ 集群的在线扩容。因为 Apache RocketMQ 集群缩容涉及到数据的收缩,一般不考虑在 ApacheRocketMQ Playbook 上支持缩容。Apache RocketMQ Playbook 集成了部署环境初始化、可运行包下载、os 参数调优、broker 最佳配置、ApacheRocketMQ 集群部署、Apache RocketMQ Exporter 部署、添加开机自启动机制等任务编排到一起,实现了大规模集群自动化部署。
Apache RocketMQ Playbook使用
Aliware
首先安装Ansible
下载 Apache RocketMQ Playbook
Apache RocketMQPlaybook 入口文件为 rocketmq.yml。
根据需要修改配置文件
-
hosts文件主要描述了部署的机器列表和 Apache RocketMQ 配置信息。
[rocketmq_namesrv]
127.0.0.1
127.0.0.2
[rocketmq_broker]
127.0.0.3brokerName=broker-a brokerId=0 brokerRole=ASYNC_MASTER
127.0.0.4brokerName=broker-a brokerId=1 brokerRole=SLAVE
[rocketmq_broker:vars]
brokerClusterName=DefaultCluster
namesrvAddr=127.0.0.1:9876;127.0.0.2:9876
storePathRootDir=/data/rocketmq/store
[rocketmq_exporter]
127.0.0.5
[rocketmq_exporter:vars]
namesrvAddr=127.0.0.1:9876;127.0.0.2:9876
webTelemetryPath=/metrics
rocketmqVersion=V4_7_1
-
修改全局变量
rocketmq_deploy_path:/app
rocketmq_log_path:/data
-
修改 namesrv 变量
rocketmq_download_url:https://dlcdn.apache.org/rocketmq/4.9.3/rocketmq-all-4.9.3-bin-release.zip
rocketmq_deploy_path:/app
rocketmq_log_path:${user.home}
-
修改 broker 变量
rocketmq_download_url:https://dlcdn.apache.org/rocketmq/4.9.3/rocketmq-all-4.9.3-bin-release.zip
rocketmq_deploy_path:/app
rocketmq_log_path:${user.home}
-
修改 exporter 变量
rocketmq_exporter_download_url:http://rocketmq.exporter/rocketmq-exporter-0.0.2-SNAPSHOT.jar
rocketmq_exporter_deploy_directory:/app/exporter
执行Apache RocketMQ Playbook
ansible-playbook/path/rocketmq.yml -i /path/hosts
日常运维可使用的命令
systemctlstart mqbroker
systemctlstop mqbroker
systemctlstart mqnamesrv
systemctlstop mqnamesrv
systemctlstart mqexporter
systemctlstop mqexporter
最后
Aliware
本文转载自孙航达 阿里巴巴中间件,原文链接:https://mp.weixin.qq.com/s/TrlSewm-Ix8lxvu5dDjcjQ。