Mosquitto安装调试实录

时间:2021-01-17 21:04:45

1. 安装

以Centos 7.x为例,先安装依赖项(笔者使用阿里云资源,部分依赖项可能未列出):

yum install gcc-c++
yum install openssl-devel
yum install c-ares-devel
yum install libuuid-devel

官网下载 Mosquitto:

wget http://mosquitto.org/files/source/mosquitto-1.4.15.tar.gz

解压并安装:

tar -zxvf mosquitto-1.4.15.tar.gz
cd mosquitto-1.4.15/
make
make install

如果进展顺利,到这里mosquitto应已安装成功。

2. 设置

为了尽快地运行mosquitto,我们需要对其进行一些简单的设置,配置文件位于/etc/mosquitto/:

ls /etc/mosquitto/

可以看见 mosquitto.conf.example 这个文件,我们复制一份,重命名为 mosquitto.conf,并对其进行编辑:

cp /etc/mosquitto/mosquitto.conf.example /etc/mosquitto/mosquitto.conf
vim /etc/mosquitto/mosquitto.conf

配置文件的说明已经非常详尽了,这里不再赘述,仅列出需要解除注释(修改)的项:

user root
autosave_interval 1800
persistence true
persistence_file mosquitto.db
persistence_location /var/lib/mosquitto/

注意,persistence_location目录可自行指定和创建,需要读写权限。

mkdir /var/lib/mosquitto

3. 运行

mosquitto -d -c /etc/mosquitto/mosquitto.conf > /var/lib/mosquitto/mosquitto.log 2>&1

注意查看 log 日志,确定mosquitto成功运行。

4. 调试

订阅hello主题:

mosquitto_sub -t hello

有可到导致报错:

mosquitto_sub: error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory

我们需要将缺失的文件所在路径加入/etc/ld.so.conf中:

vim /etc/ld.so.conf
/* 添加路径 /usr/local/lib/ */

重新加载动态函数库即可:

ldconfig

以上操作均在服务端完成,接下来在本地计算机下载 mqtt.fx,笔者选择的版本为1.7.0,安装后运行:

Mosquitto安装调试实录

输入服务端地址,点击Connect进行连接,然后在下方输入发布主题和内容,点击Publish进行发布:

Mosquitto安装调试实录

服务端将会显示对应消息:

Mosquitto安装调试实录

本次安装调试任务完成,下篇文章将简单讲解如何对broker的消息进行消费。