EMQX的安装
Ubuntu
本页将指导您如何在 Ubuntu 系统中下载安装并启动 EMQX。
通过 Apt 源安装
EMQX 支持通过 Apt 源安装,免除了用户需要手动处理依赖关系和更新软件包等的困扰,具有更加方便、安全和易用等优点。如希望通过 Apt 源安装 EMQX,可参考如下步骤。
1.通过以下命令配置 EMQX Apt 源:
curl -s https://assets.emqx.com/scripts/install-emqx-deb.sh | sudo bash
2.运行以下命令安装 EMQX:
sudo apt-get install emqx
3.运行以下命令启动 EMQX:
sudo systemctl start emqx
EMQX的启动与卸载
您可通过如下三种方式启动 EMQX。
直接启动:
$ emqx start
EMQX 5.3.2 is started successfully!
systemctl 启动:
sudo systemctl start emqx
service 启动:
sudo service emqx start
卸载:
服务完成后,可通过如下命令卸载 EMQX:
sudo apt remove --purge emqx
EMQX配置的简单介绍
emqx的配置文件的存在目录一般在/etc/emqx/
,其名称为emqx.conf
。
HOCON 配置格式
从 5.0 版本开始,EMQX 采用 HOCON 作为配置文件格式。
HOCON(Human-Optimized Config Object Notation)是一种可扩展的配置语言,它支持类似 JSON 的语法,易于阅读和编写。同时 HOCON 具有继承、合并、引用等功能,使得配置文件更加灵活可控。
基本语法:
HOCON 值可以被记为类似 JSON 的对象,例如:
节点配置 -- node
node {
name = "[email protected]"
cookie = "mysecret"
data_dir = "/var/lib/emqx"
}
这部分配置是配置节点信息,解读如下:
-
name = "[email protected]"
配置节点名称,格式为@ 。其中 host
可以是 IP 地址,也可以是 FQDN。 -
cookie = "mysecret"
配置分布式集群使用的 cookie 值。集群间保持一致。 -
data_dir = "/var/lib/emqx"
配置节点数据存放目录,该目录可能会自动创建一些子目录。
接着,由于我们关注的是EMQX的集群,所以我们还需要注意以下几个配置。
集群配置 -- cluster
cluster {
name = emqxcl
discovery_strategy = manual
}
-
name = emqxcl
配置EMQX 集群名称。每个集群都有一个唯一的名称。服务发现时会用于做路径的一部分。 -
discovery_strategy = manual
集群节点发现方式。可选值为:
manual: 使用 emqx ctl cluster 命令管理集群。
static: 配置静态节点。配置几个固定的节点,新节点通过连接固定节点中的某一个来加入集群。
dns: 使用 DNS A 记录的方式发现节点。
etcd: 使用 etcd 发现节点。
k8s: 使用 Kubernetes API 发现节点。
在这里,我们配置为manual。
emqx服务端配置 -- listeners.tcp.default
listeners.tcp.default {
bind = "0.0.0.0:1883"
max_connections = 1024000
proxy_protocol = true
}
-
bind = "0.0.0.0:1883"
服务端监听套接字的 IP 地址和端口 -
max_connections = 1024000
监听器允许的最大并发连接数。 -
proxy_protocol = true
允许代理,如果你使用Nginx代理EMQX,那么记住此配置项一定要配置
创建与管理集群
EMQX 支持手动创建集群,也支持通过多种方式自动集群,我们将以手动的方式创建并管理EMQX集群
基本概念
想要创建集群,您还需要熟悉以下概念:
节点名称
EMQX 节点通过它们的名称来识别。所有节点都设置了唯一的节点名称,格式为 name@host,其中 host 必须是 IP 地址或完全限定域名(FQDN)。例如:
对于部署在服务器 server1.io 上的 EMQX 节点,节点名称应为 server1.io;
如果此服务器有一个静态 IP(172.18.157.179),节点名称应为 [email protected]。
TIP
EMQX 节点名称是不可变的,因为它们被固定在数据库架构和数据文件中。因此,建议为 EMQX 节点名称使用静态 FQDN。 |
手动集群
前置准备
本节为您提供了在创建集群之前如何配置节点和网络环境的指导。
配置节点名称
在创建集群之前,您需要了解如何命名要加入集群的节点。假设您想为分别部署在IP为172.18.157.179
和IP为:172.18.157.179
的两个节点创建一个集群,可以按照以下步骤进行配置.
在每一个节点的emqx.conf
配置文件中配置节点名称,emqx的配置文件所在目录为/etc/emqx/
。在这里我们以172.18.157.179
节点为例。
1.用vim编辑器打开emqx配置文件
$vim /etc/emqx/emqx.conf
然后进行集群的相关配置。
主要有三个配置
- 配置节点名称
- 配置cookie,同一个集群的所有节点必须配置一样的cookie。
- 配置发现策略,一定要配置成manual,即手动集群
## NOTE:
## This config file overrides data/configs/cluster.hocon,
## and is merged with environment variables which start with 'EMQX_' prefix.
##
## Config changes made from EMQX dashboard UI, management HTTP API, or CLI
## are stored in data/configs/cluster.hocon.
## To avoid confusion, please do not store the same configs in both files.
##
## See https://www.emqx.io/docs/en/v5.0/configuration/configuration.html for more details.
## Configuration full example can be found in etc/examples
node {
name = "[email protected]" ## 1. 配置节点名称。
cookie = "emqxsecretcookie" ## 2. 配置cookie,同一个集群的所有节点必须配置一样的cookie。
data_dir = "/var/lib/emqx"
}
cluster {
name = emqxcl
discovery_strategy = manual ## 3. 配置发现策略,一定要配置成manual,即手动集群
}
dashboard {
listeners.http {
bind = 18083
}
default_username = "admin"
default_password = "public"
}
注意,这里两个节点都需要进行这三个配置。
2.启动两台节点后,在其中一台节点执行集群加入命令:
./bin/emqx ctl cluster join [email protected]
Join the cluster successfully.
Cluster status: [{running_nodes,['[email protected]','[email protected]']}]
TIP
|
3.在任意节点上查询集群的状态:
./bin/emqx ctl cluster status
Cluster status: [{running_nodes,['[email protected]','[email protected]']}]
标签:创建,配置,172.18,集群,emqx,EMQX,节点
From: https://www.cnblogs.com/ydqblogs/p/17927557.html