EMQX功能强大,但是帮助信息或者可用资料的确有限,遇到个问题,比较难找到处理的头绪,今天,我要记录的是,使用中出现EMQX宕机,但是呢,启动也启动不了。 今天记录的内容,就以操作EMQX 3.2.3的版本来说吧。

你可能看到有下面的信息:

[root@tkwh-kfcs-app3 emqx]# emqx start
emqx v3.2.3 is started successfully!

但是呢,你查看状态,又会看到下面的内容:

[root@tkwh-kfcs-app3 emqx]# emqx_ctl status
Node 'emqx@10.95.200.13' not responding to pings

这个是什么情况呢?其实就是EMQX启动异常了,然后又shutdown了,看看日志,在/var/log/emqx下面的 erlang.log.1 文件里面可以找到些许的信息。

       =====
===== LOGGING STARTED Fri Oct :: CST
=====
Exec: /usr/lib/emqx/erts-10.3/bin/erlexec -boot /usr/lib/emqx/releases/v3.2.3/emqx -mode embedded -boot_var ERTS_LIB_DIR /usr/lib/emqx/erts-10.3/../lib -mnesia dir "/var/lib/emqx/mnesia/emqx@10.95.200.13" -config /var/lib/emqx/c
onfigs/app.2019.10.25.10.55.38.config -args_file /var/lib/emqx/configs/vm.2019.10.25.10.55.38.args -vm_args /var/lib/emqx/configs/vm.2019.10.25.10.55.38.args -- console^M
Root: /usr/lib/emqx^M
/usr/lib/emqx^M
Erlang/OTP [erts-10.3] [source] [-bit] [smp::] [ds:::] [async-threads:] [hipe]^M
^M
-- ::43.487 [info] event=server_setup_successfully driver=tcp socket="#Port<0.8>"^M
-- ::43.488 [info] event=start^M
Starting emqx on node emqx@10.95.200.13^M
-- ::43.562 [info] Ekka(Membership): Node emqx@10.95.200.22 up^M
-- ::43.580 [notice] application: emqx^M
exited: {bad_return,^M
{{emqx_app,start,[normal,[]]},^M
{'EXIT',^M
{{badmatch,^M
{error,^M
{shutdown,^M
{failed_to_start_child,emqx_router_sup,^M
{shutdown,^M
{failed_to_start_child,helper,^M
{{badmatch,{error,{not_active_local,emqx_routing_node}}},^M
[{emqx_router_helper,init,,^M
[{file,^M
"/emqx_temp/emqx_rel/_checkouts/emqx/src/emqx_router_helper.erl"},^M
{line,}]},^M
{gen_server,init_it,,^M
[{file,"gen_server.erl"},{line,}]},^M
{gen_server,init_it,,^M
[{file,"gen_server.erl"},{line,}]},^M
{proc_lib,init_p_do_apply,,^M
[{file,"proc_lib.erl"},{line,}]}]}}}}}}},^M
[{emqx_app,start,,^M
[{file,^M
"/emqx_temp/emqx_rel/_checkouts/emqx/src/emqx_app.erl"},^M
{line,}]},^M
{application_master,start_it_old,,^M
[{file,"application_master.erl"},{line,}]}]}}}}^M
type: permanent^M
[os_mon] memory supervisor port (memsup): Erlang has closed^M
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed^M
{"Kernel pid terminated",application_controller,"{application_start_failure,emqx,{bad_return,{{emqx_app,start,[normal,[]]},{'EXIT',{{badmatch,{error,{shutdown,{failed_to_start_child,emqx_router_sup,{shutdown,{failed_to_start_chi
ld,helper,{{badmatch,{error,{not_active_local,emqx_routing_node}}},[{emqx_router_helper,init,,[{file,\"/emqx_temp/emqx_rel/_checkouts/emqx/src/emqx_router_helper.erl\"},{line,95}]},{gen_server,init_it,2,[{file,\"gen_server.erl\
"},{line,374}]},{gen_server,init_it,6,[{file,\"gen_server.erl\"},{line,342}]},{proc_lib,init_p_do_apply,3,[{file,\"proc_lib.erl\"},{line,249}]}]}}}}}}},[{emqx_app,start,2,[{file,\"/emqx_temp/emqx_rel/_checkouts/emqx/src/emqx_app
.erl\"},{line,32}]},{application_master,start_it_old,4,[{file,\"application_master.erl\"},{line,277}]}]}}}}}"}^M^M
Kernel pid terminated (application_controller) ({application_start_failure,emqx,{bad_return,{{emqx_app,start,[normal,[]]},{'EXIT',{{badmatch,{error,{shutdown,{failed_to_start_child,emqx_router_sup,{sh^M^M
^M^M
Crash dump is being written to: /var/log/emqx/crash.dump...done^M^M

什么意思呢?其实就是在安装路径的/var/lib/emqx下面有些异常数据,导致emqx启动时做数据同步时,出现错误,最后就宕机了。解决办法,就是将/var/lib/emqx下的数据清除掉,然后重新安装,当然,相关的配置,需要再次配置一下。

最后,再次将emqx安装一遍,就没有什么问题了。

 

MQTT研究之EMQ:【EMQX使用中的一些问题记录(3)】的更多相关文章

  1. MQTT研究之EMQ:【CoAP协议应用开发】

    本博文的重点是尝试CoAP协议的应用开发,其中包含CoAP协议中一个重要的开源工具libcoap的安装和遇到的问题调研.当然,为了很好的将EMQ的CoAP协议网关用起来,也调研了下EMQ体系下,CoA ...

  2. MQTT研究之EMQ:【EMQ之HTTP认证/访问控制】

    今天进行验证的逻辑是EMQ的http的Auth以及ACL的逻辑. 首先,参照HTTP插件认证配置的说明文档进行基本的配置, 我的配置内容如下: ##-------------------------- ...

  3. MQTT研究之EMQ:【JAVA代码构建X509证书【续集】】

    openssl创建私钥,获取公钥,创建证书都是比较简单的,就几个指令,很快就可以搞定,之所以说简单,是因为证书里面的基本参数配置不需要我们组装,只需要将命令行里面需要的几个参数配置进去即可.但是呢,用 ...

  4. MQTT研究之EMQ:【SSL证书链验证】

    1. 创建证书链(shell脚本) 客户端证书链关系: rootCA-->chainca1-->chainca2-->chainca3 ca caCert1 caCert2 caCe ...

  5. MQTT研究之EMQ:【EMQX使用中的一些问题记录(4)】

    最近比较忙,有些关于EMQ的使用问题,没有时间记录了,趁这个周末抽点时间,将最近遇到的,觉得比较有价值的一个问题,分享给大家吧. 这里是针对前面的一篇博客,做的一个深入研究,关于订阅系统总线判断设备上 ...

  6. MQTT研究之EMQ:【EMQX使用中的一些问题记录(1)】

    issue 1. EMQX的共享订阅 EMQX是一个非常强大的物联网通信消息总线,基于EMQX开展应用开发,要注意很多配置细节问题,这里要说到的就是共享订阅以及和cleanSession之间的关系问题 ...

  7. MQTT研究之EMQ:【EMQX使用中的一些问题记录(2)】

    我的测试环境: Linux: CentOS7 EMQX:V3.2.3 题外话: 这里主要介绍Websocket的支持问题. 对ws的支持比较正常,但是对wss的支持,调了较长的时间,没有成功. Jav ...

  8. MQTT研究之EMQ:【JAVA代码构建X509证书】

    这篇帖子,不会过多解释X509证书的基础理论知识,也不会介绍太多SSL/TLS的基本信息,重点介绍如何用java实现SSL协议需要的X509规范的证书. 之前的博文,介绍过用openssl创建证书,并 ...

  9. MQTT研究之EMQ:【基础研究】

    EMQ版本V2, emqttd-centos7-v2.3.11-1.el7.centos.x86_64.rpm 下载地址:http://emqtt.com/downloads/2318/centos7 ...

随机推荐

  1. Hive之累计报表生成

    Hive之累计报表生成 1. 原始数据 u01 2019/1/21 5u02 2019/1/23 6u03 2019/1/22 8u04 2019/1/20 3u01 2019/1/23 6u01 2 ...

  2. SpringBoot2.x的Maven依赖配置

    本篇主要说明以下内容: 1.SpringBoot2.x中Maven的配置内容,即:pom.xml的内容说明 1 Maven依赖的配置方式 使用Maven来配置SpringBoot2.x,有两种方式: ...

  3. rest framework 之路由系统

    一.自定义路由 1.urls.py from django.conf.urls import url, include from web.views import s11_render urlpatt ...

  4. Mac开源文本编辑器Brackets 快捷操作有哪些?

    Brackets for Mac是一款可靠,直观且易于使用的macOS应用程序,可用作HTML,CSS和JavaScript项目的代码编辑器.如果你能了解更多Mac开源文本编辑器Brackets 快捷 ...

  5. ELK日志分析

    1. 为什么用到ELK 一般我们需要进行日志分析场景:直接在日志文件中 grep.awk 就可以获取自己想要的信息.但是规模较大的场景中,此方法效率低下,面临问题包括日志量太大如何归档.文本搜索太慢怎 ...

  6. Haproxy 反向代理

    一.haproxy介绍 HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性.负载均衡,以及基于TCP和HTTP的应用程序代理. 特点如下: .支持两种代理模式:TCP(四层)和H ...

  7. Python3如何上传自己的PyPI项目

    有过一定的 Python 经验的开发者都知道,当引入第三方包时,我们常常会使用 pip install 命令来下载并导入包. 那么,如何写一个自己的包,上传到 PyPI 呢,其他开发者也可以通过 pi ...

  8. httprunner学习23-加解密

    前言 有些接口的请求参数是加密的,返回的接口内容也是需要解密才能看到. 加密接口 比如当我们访问下面这个登陆的接口时,请求参数账号和密码都是需要加密,通过parms参数传过去,服务器才能识别到 没加密 ...

  9. Java批量下载文件并zip打包

    客户需求:列表勾选需要的信息,点击批量下载文件的功能.这里分享下我们系统的解决方案:先生成要下载的文件,然后将其进行压缩,生成zip压缩文件,然后使用浏览器的下载功能即可完成批量下载的需求.以下是zi ...

  10. keil编译器从ac5迁移到ac6

    今天在安富莱的论坛上ac6的使用方法,所以,就小试牛刀玩了玩,终于ok了.使用keil5.25+stm32+hal库,5.23开始才支持ac6,因此keil版本不能太低. 可以参考:https://b ...