【三】EMQX 手动创建集群

2024-04-02 15:28
文章标签 集群 创建 手动 emqx

本文主要是介绍【三】EMQX 手动创建集群,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

EMQX 手动创建集群

简介

        因为项目中使用到了emqx中间件,所以近期对中间件进行了进一步的研究,每次选用中间件我都会考虑可用性方案,如下是本地实践的记录。

一、部署

1、创建一个 Docker 网络,用于节点间通信。处于同一网络下的容器可以通过容器名或网络别名相互访问:
bashdocker network create emqx-net

2、启动第一个节点,通过环境变量设置节点名。EMQX 默认的集群方式是手动集群,因此不需要进行额外设置。将节点添加到 Docker 网络中,并设置与节点 host 相同的网络别名。
bashdocker run -d \
    --name emqx1 \
    -e "EMQX_NODE_NAME=emqx@node1.emqx.com" \
    --network emqx-net \
    --network-alias node1.emqx.com \
    -p 1883:1883 \
    -p 8083:8083 \
    -p 8084:8084 \
    -p 8883:8883 \
    -p 18083:18083 \
    emqx/emqx:5.6.0

3、当第一个节点启动完成后,启动第二个节点。新节点需要加入与第一个节点相同的网络,由于第一个节点已经占用了 1883 等端口,此处不再映射端口。
bashdocker run -d \
    --name emqx2 \
    -e "EMQX_NODE_NAME=emqx@node2.emqx.com" \
    --network emqx-net \
    --network-alias node2.emqx.com \
    emqx/emqx:5.6.0

4、在任意一个节点上执行手动创建集群的命令,将当前节点与另一节点连接创建集群:
bashdocker exec -it emqx2 \
    emqx ctl cluster join emqx@node1.emqx.com

在任意一个节点上执行 emqx ctl cluster status 命令查看集群状态,如果集群状态正常,将会输出如下信息:
bash$ docker exec -it emqx1 emqx ctl cluster status
Cluster status: #{running_nodes =>
                    ['emqx@node1.emqx.com','emqx@node2.emqx.com'],
                stopped_nodes => []}

至此,您已经完成了一个简单的集群创建过程,接下来可以按照以下章节的内容选择您需要的集群创建方式进行修改部署

总结

访问地址:http://192.168.90.135:18083/#/login?to=/dashboard/nodes

可以看到集群搭建成功,可以使用同样的方式扩展节点数量。

这篇关于【三】EMQX 手动创建集群的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

HDFS—集群扩容及缩容

白名单:表示在白名单的主机IP地址可以,用来存储数据。 配置白名单步骤如下: 1)在NameNode节点的/opt/module/hadoop-3.1.4/etc/hadoop目录下分别创建whitelist 和blacklist文件 (1)创建白名单 [lytfly@hadoop102 hadoop]$ vim whitelist 在whitelist中添加如下主机名称,假如集群正常工作的节

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

在cscode中通过maven创建java项目

在cscode中创建java项目 可以通过博客完成maven的导入 建立maven项目 使用快捷键 Ctrl + Shift + P 建立一个 Maven 项目 1 Ctrl + Shift + P 打开输入框2 输入 "> java create"3 选择 maven4 选择 No Archetype5 输入 域名6 输入项目名称7 建立一个文件目录存放项目,文件名一般为项目名8 确定

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

顺序表之创建,判满,插入,输出

文章目录 🍊自我介绍🍊创建一个空的顺序表,为结构体在堆区分配空间🍊插入数据🍊输出数据🍊判断顺序表是否满了,满了返回值1,否则返回0🍊main函数 你的点赞评论就是对博主最大的鼓励 当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~ 🍊自我介绍   Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群的一名“创始团队·嘉宾”

Maven创建项目中的groupId, artifactId, 和 version的意思

文章目录 groupIdartifactIdversionname groupId 定义:groupId 是 Maven 项目坐标的第一个部分,它通常表示项目的组织或公司的域名反转写法。例如,如果你为公司 example.com 开发软件,groupId 可能是 com.example。作用:groupId 被用来组织和分组相关的 Maven artifacts,这样可以避免

批处理以当前时间为文件名创建文件

批处理以当前时间为文件名创建文件 批处理创建空文件 有时候,需要创建以当前时间命名的文件,手动输入当然可以,但是有更省心的方法吗? 假设我是 windows 操作系统,打开命令行。 输入以下命令试试: echo %date:~0,4%_%date:~5,2%_%date:~8,2%_%time:~0,2%_%time:~3,2%_%time:~6,2% 输出类似: 2019_06