单机伪分布式

参照单机集群自动化脚本 https://github.com/terry-xiaoyu/one_more_emqx

cp emqx emqx2

这个复制的是配置文件目录吗?

Start the emqx2:

cd emqx2
EMQX_NODE__NAME='emqx2@127.0.0.1' \
EMQX_STATSD__SERVER='127.0.0.1:8124' \
EMQX_LISTENERS__TCP__DEFAULT__BIND='0.0.0.0:1882' \
EMQX_LISTENERS__SSL__DEFAULT__BIND='0.0.0.0:8882' \
EMQX_LISTENERS__WS__DEFAULT__BIND='0.0.0.0:8082' \
EMQX_LISTENERS__WSS__DEFAULT__BIND='0.0.0.0:8085' \
EMQX_DASHBOARD__LISTENERS__HTTP__BIND='0.0.0.0:18082' \
./bin/emqx console

配置文件目录是没有bin的,所以 ./bin/emqx console执行不了。

**改成直接执行 [script] emqx console **
**会报 “Protocol ‘ekka’: register/listen error: “port 4370 is in use” **
例子中Offset应该为2,所以应该是没有加载到前面的[script]

请问单机怎么启动多个emqx呢,可不可以emqx start 指定配置文件呢?

它先复制了一下当前目录下的 emqx 目录,比如 ./one_more_emqx emqx2 就是复制到 emqx2。

emqx 5.0 不需要这个脚本了,它只是给 4.x 用的,不要执行这个脚本,直接下载 emqx 包并解压,以 ubuntu 22.04 为例:

wget https://www.emqx.com/en/downloads/broker/5.3.0/emqx-5.3.0-ubuntu22.04-amd64.tar.gz

mkdir -p emqx && tar -zxvf emqx-5.3.0-ubuntu22.04-amd64.tar.gz -C emqx

cd emqx2
EMQX_NODE__NAME='emqx2@127.0.0.1' \
EMQX_STATSD__SERVER='127.0.0.1:8124' \
EMQX_LISTENERS__TCP__DEFAULT__BIND='0.0.0.0:1882' \
EMQX_LISTENERS__SSL__DEFAULT__BIND='0.0.0.0:8882' \
EMQX_LISTENERS__WS__DEFAULT__BIND='0.0.0.0:8082' \
EMQX_LISTENERS__WSS__DEFAULT__BIND='0.0.0.0:8085' \
EMQX_DASHBOARD__LISTENERS__HTTP__BIND='0.0.0.0:18082' \
./bin/emqx console

我开始是用sudo yum install emqx -y 这种方式下载的 ,所以bin目录和配置文件不在同一目录下。我用tar.gz解压安装试试吧