ActiveMQ + MQTT 集群搭建(docker版本)

这篇具有很好参考价值的文章主要介绍了ActiveMQ + MQTT 集群搭建(docker版本)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

上一篇文章已经总结了
ActiveMQ + MQTT 集群搭建(虚机版本) + Springboot使用配置

本篇文章总结一下docker部署方案


一、docker方式部署

1.创建挂载目录

本地创建挂载目录:/home/jenkins/test_apps/mnt/activemq-cluster。

在该目录下基于activemq.xml修改名字创建三个配置文件activemq-clusters.xml、activemq-master.xml、activemq-slave.xml。

在该目录下创建目录kahadb用来挂载数据。

2.分别修改三个配置文件(虚机配置第三点一致),如下:

<transportConnectors>
            <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB -->
            <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=10000&amp;wireFormat.maxFrameSize=104857600"/>
           <transportConnector name="mqtt" uri="mqtt://0.0.0.0:1883?maximumConnections=10000&amp;wireFormat.maxFrameSize=104857600"/>
        </transportConnectors>
		<!-- 配置网络代理,cluster 节点需要与 master 跟 slave 进行穿透 -->
		<networkConnectors>
                <networkConnector name="network-clusters" uri="static:(tcp://192.168.10.41:61617,tcp://192.168.10.41:61618)" duplex="true" />
        </networkConnectors>
		
		
		<transportConnectors>
            <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB -->
            <transportConnector name="openwire" uri="tcp://0.0.0.0:61617?maximumConnections=10000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="mqtt" uri="mqtt://0.0.0.0:2884?maximumConnections=10000&amp;wireFormat.maxFrameSize=104857600"/>
        </transportConnectors>
		<!-- 配置网络代理,master 节点需要与 cluster 跟 slave 进行穿透 -->
		<networkConnectors>
                <networkConnector name="network-master" uri="static:(tcp://192.168.10.41:61616,tcp://192.168.10.41:61618)" duplex="true" />
        </networkConnectors>
		
		
		<transportConnectors>
            <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB -->
            <transportConnector name="openwire" uri="tcp://0.0.0.0:61618?maximumConnections=10000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="mqtt" uri="mqtt://0.0.0.0:2885?maximumConnections=10000&amp;wireFormat.maxFrameSize=104857600"/>
        </transportConnectors>
		<!-- 配置网络代理,slave 节点需要与 master 跟 cluster 进行穿透 -->
		<networkConnectors>
                <networkConnector name="network-slave" uri="static:(tcp://192.168.10.41:61616,tcp://192.168.10.41:61617)" duplex="true" />
        </networkConnectors>

3.容器启动:

-----------无挂载日志----------- 
clusters启动:
docker run --name='activemq_clusters' \
-itd \
--privileged=true \
--restart=unless-stopped \
-p 61616:61616 \
-p 8161:8161 \
-p 1883:1883 \
-e ACTIVEMQ_ADMIN_LOGIN=admin \
-e ACTIVEMQ_ADMIN_PASSWORD=admin \
-v /home/jenkins/test_apps/mnt/activemq-cluster/activemq-clusters-a.xml:/opt/activemq/conf/activemq.xml \
webcenter/activemq:5.15.12

master启动
docker run --name='activemq_master' \
-itd \
--privileged=true \
--restart=unless-stopped \
-p 61617:61617 \
-p 8171:8161 \
-p 2884:1884 \
-e ACTIVEMQ_ADMIN_LOGIN=admin \
-e ACTIVEMQ_ADMIN_PASSWORD=admin \
-v /home/jenkins/test_apps/mnt/activemq-cluster/activemq-master-a.xml:/opt/activemq/conf/activemq.xml \
-v /home/jenkins/test_apps/mnt/activemq-cluster/kahadb:/opt/activemq/data/kahadb \
webcenter/activemq:5.15.12


slave启动:
docker run --name='activemq_slave' \
-itd \
--privileged=true \
--restart=unless-stopped \
-p 61618:61618 \
-p 8181:8161 \
-p 2885:1885 \
-e ACTIVEMQ_ADMIN_LOGIN=admin \
-e ACTIVEMQ_ADMIN_PASSWORD=admin \
-v /home/jenkins/test_apps/mnt/activemq-cluster/activemq-slave-a.xml:/opt/activemq/conf/activemq.xml \
-v /home/jenkins/test_apps/mnt/activemq-cluster/kahadb:/opt/activemq/data/kahadb \
webcenter/activemq:5.15.12

4.集群验证

1、容器启动后,和虚机一样进行配置检查,判断网络连接是否互通,是否形成集群;
2、项目配置同虚机搭建;


总结

对docker搭建ActiveMQ + MQTT集群进行了简单总结,记录一下。文章来源地址https://www.toymoban.com/news/detail-847991.html

到了这里,关于ActiveMQ + MQTT 集群搭建(docker版本)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【云原生-K8s】kubeadm搭建安装k8s集群v1.25版本完整教程【docker、网络插件calico、中间层cri-docker】

    从 k8s 1.24开始,dockershim已经从kubelet中移除,但因为历史问题docker却不支持kubernetes主推的CRI(容器运行时接口)标准,所以docker不能再作为k8s的容器运行时了,即从k8s v1.24开始不再使用docker了 但是如果想继续使用docker的话,可以在kubelet和docker之间加上一个中间层cri-docker。

    2024年02月03日
    浏览(41)
  • ActiveMQ使用(二):在JavaScript中使用mqtt.js

    jQuery-1.10 下载地址 : https://www.jsdelivr.com/package/npm/jquery-1.10.2?tab=files mqtt.js 4.3.7 : 下载地址 : https://www.jsdelivr.com/package/npm/mqtt JS HTML Web端使用MQTT通讯测试 MQTT.js 入门教程 https://www.jsdelivr.com/package/npm/mqtt 在 SprintBoot 项目中集成 ActiveMQ 后,接收到的数据为 字节数组 一种解决方式为

    2023年04月15日
    浏览(36)
  • mq 消息队列 mqtt emqx ActiveMQ RabbitMQ RocketMQ

    十几年前,淘宝的notify,借鉴ActiveMQ。京东的ActiveMQ集群几百台,后面改成JMQ。 Linkedin的kafka,因为是scala,国内很多人不熟。淘宝的人把kafka用java写了一遍,取名metaq,后来再改名RocketMQ。 总的来说,三大原因,语言、潮流、生态。 MQ这种东西,当你的消息量不大的时候,用啥

    2024年02月12日
    浏览(49)
  • docker-compose安装和使用(自启、redis、mysql、rabbitmq、activemq、es、nginx、java应用)

    1.在线安装docker-compose: 参考官网:https://docs.docker.com/compose/install/other/ docker-compose安装及简单入门 [Docker] docker-compose使用教程 Docker系列教程22-docker-compose.yml常用命令 2、离线安装docker-compose: 参考:Docker - 离线安装 docker-compose(以CentOS系统为例) (1)首先访问 docker-compose 的

    2024年02月05日
    浏览(53)
  • 【自用】云服务器 使用 docker 搭建 HomeAssistant + MQTT 物联网平台

    1.搭建流程概述 2.准备工作 3.开始搭建! 4.总结 如果想看 ESP32 或其他使用 MicroPython 编程的单片机如何连接到该云服务器,实现 HomeAssistant 控制 单片机的内容,请看我这篇博客的下一篇。 0.总体流程 我们需要先有一台云服务器,然后在上面搭建 docker(用宝塔傻瓜式搭建就行

    2024年02月13日
    浏览(45)
  • ubuntu18.04.6 搭建mqtt服务器emqx 之docker方式

    前提docker环境已经安装好 如未安装,请参考博文https://blog.csdn.net/a554521655/article/details/134251763

    2024年01月20日
    浏览(47)
  • ElasticSearch集群8.0版本搭建、故障转移

           ELasticsearch的集群是由多个节点组成的,通过cluster.name设置集群名称,并且用于区分其它的集群,每个节点通过node.name指定节点的名称。 在Elasticsearch中,节点的类型主要有4种: master节点 配置文件中node.master属性为true(默认为true),就有资格被选为master节点。master节

    2024年02月11日
    浏览(37)
  • ElasticSearch入门教程--集群搭建和版本比较

    Elasticsearch 集群有一个唯一的名字,默认就是”elasticsearch”。,一个节点只能通过指定某个集群的名字,来加入这个集群。 集群搭建如下: 复制ES的安装目录三份:esnode-1,esnode-2,esnode-3,分别编辑config/elasticsearch.yml 配置文件 node-1: node-2: node-3: 2、分别启动,浏览器访问 http://

    2024年02月16日
    浏览(51)
  • ubuntu服务器版本搭建Hadoop集群

    实验环境: 虚拟化软件:VMware® Workstation 16 Pro 镜像:ubuntu-22.04.2-live-server-amd64.iso Hadoop版本:hadoop-3.3.4.tar.gz ubuntu镜像链接 hadoop文件链接 配置虚拟机 (1)新建虚拟机,选择实验镜像【ubuntu-22.04.2-live-server-amd64.iso】 (2)调整硬件配置,配置如图 安装操作系统 (1)选择虚拟

    2024年02月08日
    浏览(49)
  • ElasticSearch 7.6.2版本集群搭建及踩坑

    服务器说明 本次演示采用三台RockyLinux 8.5版本服务器 服务器 IP 备注 es-master 172.16.7.11 主节点 es-node01 172.16.7.5 01节点 es-node02 172.16.7.13 02节点 内核版本 修改系统名 配置hosts 所有服务器配置一些/etc/hosts 安装JDK 创建用户 下载软件 ES中文社区下载连接: 挑一个自己觉得稳定的版本

    2023年04月27日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包