美文网首页
EMQ集群搭建

EMQ集群搭建

作者: Saxon_323e | 来源:发表于2018-08-29 13:02 被阅读0次

一、EMQ安装搭建

1.1emq官网下载对应系统版本二进制包

下载文件至:/opt/apps/emqttd-centos6.8-v2.3.11.zip

1.2,解压二进制包

[root@collect-node1 /]# cd /opt/apps

[root@collect-node1 apps]# unzip emqttd-centos6.8-v2.3.11.zip

1.3、创建外部日志、数据目录

[root@collect-node1 apps]# mkdir -p /mnt/disk1/emr-cluster

[root@collect-node1 apps]# cp -r emqttd/data/* /mnt/disk1/emq/      # 重要

1.4、基础配置(日志、数据目录,vim $EMQ_HOME/bin/emqttd)

[root@collect-node1 apps]# cd emqttd

[root@collect-node1 emqttd]# vim bin/emqttd

(使用 /data 搜索数据相关配置,使用 /log 搜索日志相关配置)

1.4.1 将 RUNNER_LOG_DIR=$RUNNER_ROOT_DIR/logs

改为  RUNNER_LOG_DIR=/mnt/disk1/log/emq

1.4.2 将RUNNER_DATA_DIR=$RUNNER_ROOT_DIR/data

改为  RUNNER_DATA_DIR=/mnt/disk1/emq/data

1.5、EMQ集群配置(集群策略、节点、日志目录等,vim $EMQ_HOME/etc/emq.conf

[root@collect-node1 emqttd]#  vim etc/emq.conf

将默认配置修改为:

## 集群相关配置

## Default: manual

cluster.discovery = static  # 重要(因默认是mamual模式)

## Node list of the cluster.

cluster.static.seeds = emq@172.16.19.27,emq@172.16.19.28  # 这里使用ip最简单的方式,也可使用FQDN地址,EMQ节点命名规则,或见附件1

## Default: emqx@127.0.0.1

node.name = emqx@172.16.19.27  # 重要

## 日志相关配置

## Crash dump log file.

node.crash_dump = /mnt/disk1/log/emq/crash.dump

## Sets the log dir.

log.dir = /mnt/disk1/log/emq

## The file where error logs will be writed to.

log.error.file = /mnt/disk1/log/emq/error.log

## The file for crash log.

log.crash.file = /mnt/disk1/log/emq/crash.log

1.6、重启EMQ集群(每个节点)

[root@collect-node1 emqttd]# ./bin/emqttd restart

1.6.1、验证是否启动成功

[root@collect-node1 emqttd]# netstat -nlpt|grep 18

若看到如图附件2则说明启动成功,然后在浏览器访问控制台(可使用chrome代理内网访问):http://172.16.19.27:18083/#/

1.6.2、从EMQ控制台查看到集群所有节点,最终效果见附件3;

1.7、若在1.6.1中未启动成功,则将$EMQ_HOME/data目录拷贝至 /mnt/disk1/emq/data

(因为在此data目录中有一些emq启动必须加装项配置)

二、EMQ客户端(传感器/物联网设备)认证

step1:新增账号test

vim $EMQ_HOME/etc/plugins/emq_auth_username.conf

auth.user.1.username = admin

auth.user.1.password = public

auth.user.2.username = test

auth.user.2.password = test

step2:禁止匿名认证(重要)

vim $EMQ_HOME/etc/emq.conf

将 mqtt.allow_anonymous = true 改为 mqtt.allow_anonymous = false

step3:命令行加载emq_auth_username插件(也可以在Dashdoard/pugins启用加载,此插件对应 配置文件$EMQ_HOME/etc/plugins/emq_auth_username.conf  )

sh $EMQ_HOME/bin/emqttd_ctl plugins load emq_auth_username

step4:  重启EMQ(貌似若restart后任不生效,则执行kill -9  然后启动即可)

sh $EMQ_HOME/bin/emqttd restart

附件1:

附件2:

附件3:

相关文章

网友评论

      本文标题:EMQ集群搭建

      本文链接:https://www.haomeiwen.com/subject/vabhwftx.html