emq(centos 7) 使用
配置文件:
- EMQ 配置文件: /etc/emqttd/emq.conf
- 插件配置文件: /etc/emqttd/plugins/*.conf
日志文件
- 日志文件目录: /var/log/emqttd
数据文件
- 数据文件目录:/var/lib/emqttd/
启动停止
- systemctl start|stop|restart emqttd.service
控制台调试模式启动,检查emqttd是否可正常启动:
cd emqttd && ./bin/emqttd console
CTRL+c关闭控制台。
守护进程模式启动:
./bin/emqttd start
启动日志输出在log/emqttd_sasl.log文件。
emqttd消息服务器进程状态查询:
./bin/emqttd_ctl status
正常运行状态,查询命令返回:
$ ./bin/emqttd_ctl status
Node 'emqttd@127.0.0.1' is started
emqttd 1.1 is running
emqttd消息服务器提供了状态监控URL:
http://localhost:8083/status
停止服务器:
./bin/emqttd stop
启用用户名密码:
关闭匿名验证:
修改etc/emq.conf
## Allow Anonymous authentication
mqtt.allow_anonymous = false
启用 emq_auth_username 插件:
启用 emq_auth_username 插件(不启用则mqtt.allow_anonymous = false不生效):
emqttd_ctl plugins load emq_auth_username
添加用户:
emqttd_ctl users add xxx xxxxxx
也可以通过修改plugins/emq_auth_clientid.conf的方式。
TCP服务端口占用
emqttd消息服务器默认占用的TCP端口包括:
| 1883 | MQTT协议端口 |
| 8883 | MQTT(SSL)端口 |
| 8083 | MQTT(WebSocket), HTTP API端口 |
| 18083 | Dashboard管理控制台端口 |
emqttd占用的上述端口,可通过etc/emqttd.config配置文件的listeners段落设置:
{listeners, [
{mqtt, 1883, [
...
]},
{mqtts, 8883, [
...
]},
%% HTTP and WebSocket Listener
{http, 8083, [
...
]}
]},
通过注释或删除相关段落,可禁用相关TCP服务启动。
18083端口是Web管理控制占用,该端口由emqttd_dashboard插件启用。
控制台URL: http:://localhost:18083/ ,默认登录用户名: admin, 密码: public。
快速设置
emqttd消息服务器主要配置文件:
| etc/vm.args | Erlang VM的启动参数设置 |
| etc/emqttd.config | emqttd消息服务器参数设置 |
etc/vm.args中两个重要的启动参数:
| +P | Erlang虚拟机允许的最大进程数,emqttd一个连接会消耗2个Erlang进程 |
| +Q | Erlang虚拟机允许的最大Port数量,emqttd一个连接消耗1个Port |
注解
Erlang的Port非TCP端口,可以理解为文件句柄。
+P 参数值 > 最大允许连接数 * 2
+Q 参数值 > 最大允许连接数
警告
实际连接数量超过Erlang虚拟机参数设置,会引起emqttd消息服务器宕机!
etc/emqttd.config文件listeners段落设置最大允许连接数:
{listeners, [
{mqtt, 1883, [
%% TCP Acceptor池设置
{acceptors, 16},
%% 最大允许连接数设置
{max_clients, 8192},
...
]},
emqttd消息服务器详细设置,请参见文档: config
/etc/init.d/emqttd
#!/bin/sh
#
# emqttd Startup script for emqttd.
#
# chkconfig: 2345 90 10
# description: emqttd is mqtt broker. # source function library
. /etc/rc.d/init.d/functions # export HOME=/root start() {
echo "starting emqttd..."
cd /opt/emqttd && ./bin/emqttd start
} stop() {
echo "stopping emqttd..."
cd /opt/emqttd && ./bin/emqttd stop
} restart() {
stop
start
} case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo $"Usage: $0 {start|stop}"
RETVAL=2
esac
chkconfig:
chmod +x /etc/init.d/emqttd
chkconfig --add emqttd
chkconfig --list
boot test:
service emqttd start
注解
## erlexec: HOME must be set uncomment ‘# export HOME=/root’ if “HOME must be set” error.
emq(centos 7) 使用的更多相关文章
- MQTT研究之EMQ:【基础研究】
EMQ版本V2, emqttd-centos7-v2.3.11-1.el7.centos.x86_64.rpm 下载地址:http://emqtt.com/downloads/2318/centos7 ...
- centos 7 安装mqtt 修改用户名和密码
我先新买个Centos 的系统 咱登录呢就用这个软件,主要是方便,可以少安装一些东西 根据自己的系统选择,上面的是32位的. 输入 root 回车 输入密码然后回车 输入的时候什么也不显示 输入 c ...
- EMQ (Erlang/Enterprise/Elastic MQTT Broker)
EMQ (Erlang/Enterprise/Elastic MQTT Broker) https://www.cnblogs.com/SteveLee/p/9843215.html MQ介绍 EMQ ...
- EMQ ---100万线连接测试说明
注解 EMQ 2.0 消息服务器默认设置,允许最大客户端连接是512,因为大部分操作系统 ‘ulimit -n’ 限制为1024. EMQ 消息服务器1.1.3版本,连接压力测试到130万线,8核心/ ...
- Centos8上搭建EMQ MQTT
layout: post title: Centos8上搭建EMQ MQTT subtitle: 在阿里云Centos8搭建EMQ并配置接入 date: 2020-3-11 author: Dapen ...
- Linux CentOS 配置Tomcat环境
一.下载Tomcat 下载Tomcat方式也有两种,可以参考我的前一篇博文Linux CentOS配置JDK环境,这边就不再赘述. 二.在Linux处理Tomcat包 1.创建tomcat文件夹 mk ...
- Hyper-v 安装CentOS 7 (其他虚拟机一样参考)
平台之大势何人能挡? 带着你的Net飞奔吧!http://www.cnblogs.com/dunitian/p/4822808.html hyper-v安装很多人没弄过,我这里介绍一下.(其他虚拟机参 ...
- ifconfig: command not found(CentOS专版,其他的可以参考)
ifconfig: command not found 查看path配置(echo相当于c中的printf,C#中的Console.WriteLine) echo $PATH 解决方案1:先看看是不是 ...
- Centos 下 mysql root 密码重置
重置mysql密码的方法有很多,官网也提供了很方便的快捷操作办法,可参考资料 resetting permissions .本文重置密码的具体步骤如下: 一.停止MySQL(如果处于运行状态) #se ...
随机推荐
- Codeforces Round #114 (Div. 1) D. Wizards and Roads 笛卡尔树+树贪心+阅读题
D. Wizards and Roads 题目连接: http://www.codeforces.com/contest/167/problem/D Description In some count ...
- MYSQL复习笔记5-select-from-where子句
Date: 20140125Auth: Jin参考:http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#select一.select子句主要定 ...
- HDU 1845 Jimmy’s Assignment(二分匹配)
Jimmy’s Assignment Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Other ...
- jrat
JRat the Java Runtime Analysis Toolkit What is it? The Java Runtime Analysis Toolkit is a low overhe ...
- OpenShift应用镜像构建(2) - 链式构建
Openshift对于应用构建提供了三种模式 从应用的源代码构建并部署,Openshift通过一个S2I的构建过程编译打包并实现发布,具体可以参考 https://www.cnblogs.com/er ...
- kafka 学习之初体验
学习问题: 1.kafka是否需要zookeeper?2.kafka是什么?3.kafka包含哪些概念?4.如何模拟客户端发送.接受消息初步测试?(kafka安装步骤)5.kafka cluster怎 ...
- [转]SSIS ConnectionManager.ConnectionString Property
本文转自:http://msdn.microsoft.com/en-us/library/microsoft.sqlserver.dts.runtime.connectionmanager.conne ...
- xss的高级利用
以往对XSS的利用大多数都是针对于挂马,钓鱼,盗cookie等,这些方式并没有真正发挥到XSS的作用,因为很少人能了解XSS的实质,会话劫持,浏览器劫持,XSS能做到的东西远远超乎我们的想象. 一 X ...
- 流畅的python第十四章可迭代的对象,迭代器和生成器学习记录
在python中,所有集合都可以迭代,在python语言内部,迭代器用于支持 for循环 构建和扩展集合类型 逐行遍历文本文件 列表推导,字典推导和集合推导 元组拆包 调用函数时,使用*拆包实参 本章 ...
- Axios使用文档总结
vue更新到2.0之后,作者就宣告不再对vue-resource更新,而是推荐的axios.Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中. 一.安装 ...