使用Docker安装

安装

本章将引导您完成 EMQX 的基本安装步骤、最低硬件规格以及文件和目录位置,以方便以后的配置和维护工作。

#下载

EMQX 在每个版本中都会发布针对不同操作系统或平台的安装包。您可以点击下面的链接进行下载。

您也可以从我们的GitHub 页面 (打开新窗口). {% endemqxce %}

提示

除了以上部署方式,也欢迎您尝试我们的EMQX 云 (打开新窗口),一个完全托管的物联网 MQTT 服务。你只需要注册一个帐户 (打开新窗口)在启动 MQTT 服务并将您的物联网设备连接到任何云之前,无需基础设施维护。

#支持的操作系统

下表列出了 EMQX 支持的操作系统和版本。

操作系统支持的版本x86_64/amd64手臂64
乌班图Ubuntu 18.04 Ubuntu 20.04 Ubuntu 22.04
是的是的
DebianDebian 10
Debian 11
是的是的
CentOS/RHELCentOS 7
CentOS 8
是的是的
亚马逊 Linux-是的是的
苹果操作系统macOS 11
macOS 12
是的是的
窗户-是的是的

#硬件规格

根据客户端连接数、消息速率、消息大小和启用的功能,EMQX 的最低硬件规格会有所不同。

下面是运行简单 EMQX 功能校验的最低硬件规格,支持 100,000 个客户端连接和每秒 100,000 个消息吞吐量。

项目最低配置建议的配置
节点12
中央处理器1 核16 核
记忆512兆字节32 千兆字节
磁盘空间1 千兆字节50 千兆字节

提示

在生产环境中,您可以使用服务器估算 (打开新窗口)计算器,用于计算各种最大连接和消息吞吐量下的建议硬件规格。

#文件和目录

安装完成后,EMQX 会创建一些目录来存储运行和配置文件、数据和日志。下表列出了在不同安装方法下创建的目录及其文件路径:

目录描述安装有焦油.gz与 RPM/DEB 一起安装
etc配置文件./etc/etc/emqx
data数据库和文件./data/var/lib/emqx
log日志文件./log/var/log/emqx
releases启动说明./releases/usr/lib/emqx/releases
bin可执行文件./bin/usr/lib/emqx/bin
libErlang 代码./lib/usr/lib/emqx/lib
erts-*Erlang 运行时./erts-*/usr/lib/emqx/erts-*
plugins插件./plugins/usr/lib/emqx/plugins

提示

  1. 与压缩软件包一起安装时,该目录相对于安装软件的目录。
  2. 随 Docker 容器一起安装时,EMQX 安装在目录中。/opt/emqx
  3. 、 和目录可通过配置文件进行配置。建议将目录装载到高性能磁盘以获得更好的性能。对于属于同一群集的节点,目录的配置应相同。有关集群的更多信息,请参阅集群datalogpluginsdatadata

下表介绍了一些目录的文件和子文件夹。

目录描述权限文件
.bin可执行文件emqx和:EMQX 的可执行文件。有关详细信息,请参阅基本命令

和:EMQX 管理命令的可执行文件。有关详细信息,请参阅管理 CLI 命令emqx.cmdemqx_ctlemqx_ctl.cmd
配置文件emqx.conf:EMQX 的主配置文件,包含所有常用的配置项。

:EMQX 的演示配置文件,包含所有可配置项。

:默认 ACl 规则。

:Erlang 虚拟机的操作参数。

:EMQX SSL 监听器的 X.509 密钥和证书文件,在与外部系统集成时,也可以在 SSL/TLS 连接中使用。emqx-example-en.confacl.confvm.argscerts/
数据运行数据authz:存储由 REST API 或仪表板上传的文件授权规则。有关详细信息,请参阅授权 - 文件

:存储由 REST API 或仪表板上传的证书文件。

:存储启动时生成的配置文件,或通过 API 或 CLI 的更改覆盖配置。

:内置数据库存储 EMQX 运行数据,包括告警记录、客户端认证授权数据、仪表盘用户信息等。如果删除该目录,所有这些操作数据都将丢失。

— 可能包含以不同节点命名的子目录,例如 。注意:在节点重命名的情况下,您还应该删除或移除相应的子目录。

— 可以使用命令查询内置数据库。有关详细信息,请参阅certsconfigsmnesiaemqx@127.0.0.1emqx_ctl mnesia管理命令命令行界面 (打开新窗口).

:存储 EMQX 作为热补丁加载的文件。可用于快速修复。

:联机跟踪日志文件。

在生产中,为了数据安全,建议定期备份目录(不包括文件夹)。patches.beamtracedatatrace
.log操作日志emqx.log.*:EMQX 的操作日志,更多信息请参见日志

:在后台启动 EMQX 时复制控制台日志的文件erlang.log.emqx start

提示

EMQX 将配置信息存储在 和 目录中。该目录存储只读配置文件,而来自仪表板或 REST API 的配置更新保存在目录中,以支持在运行时重新加载热配置。data/configsetcetcdata/configs

  • etc/emqx.conf
  • data/configs/cluster-override.conf
  • data/configs/local-override.conf

EMQX 会从这些文件读取配置项,并将其转换为 Erlang 原生配置文件格式,以便在运行时应用配置。