mosquitto的编译安装及开机自启

最近我司项目中引入了mosquitto这个轻量级的实现了消息推送协议 MQTT v3.1 的开源消息代理软件,由于此前一直使用RabbitMQ作为消息中间件,因此需要从零开始搭建mosquitto的环境。本文主要针对本次安装的步骤做以记录。

一、mosquitto安装步骤

  1. 我们使用的是mosquitto-1.4.8,先将其从官网下载后上传至服务器相关目录,这里假设我们上传到/opt/mqtt/mosquitto目录。
  2. 进入/opt/mqtt/mosquitto,执行命令tar-zxf mosquitto-1.4.8.tar.gz,解压安装包并进入解压目录。
  3. 执行命令vi config.mk,将其中的WITH_TLS和WITH_TLS_PSK修改为no,以关闭OpenSSL。
  4. 依次执行以下命令安装相关依赖。
yum install -y gcc-c++.x86_64
yum install -y c-ares-devel e2fsprogs-devel uuuid-devel libuuid-devel
  1. 执行命令make prefix=/opt/mqtt/mosquitto/mosquitto-1.4.8 && make install编译安装mosquitto。
  2. 编译安装完成后,会在/etc/mosquitto下生成相关的配置文件的样例,我们将该目录下的mosquitto.conf.example重命名为mosquitto.conf,并使用vi编辑器打开该文件,对如下内容进行修改:
# When run as root, drop privileges to this user and its primary
# group.
# Leave blank to stay as root, but this is not recommended.
# If run as a non-root user, this setting has no effect.
# Note that on Windows this has no effect and so mosquitto should
# be started by the user you wish it to run as.
# user mosquitto  将mosquitto用户注释
user root        #新增root用户为mosquitto服务的用户
  1. 执行命令systemctl stop firewalld,关闭防火墙。
  2. 执行命令mosquitto -d -c /etc/mosquitto/mosquitto.conf,启动服务。
  3. 简单验证:
    这里使用MQTT.fx工具来进行连接验证。
    • 新建连接
      在这里插入图片描述

    • 发布消息
      在这里插入图片描述

    • 订阅消息
      在这里插入图片描述

二、 设置开机自启

在/etc/rc.d/init.d目录下创建自启动脚本mosquitto_auto_start.sh,内容如下:

#!/bin/bash
#chkconfig: 2345 80 90
#description:auto_run
  
/usr/local/sbin/mosquitto -d -c /etc/mosquitto/mosquitto.conf

而后依次执行以下命令:

chmod +x /etc/rc.d/init.d/mosquitto_auto_start.sh
chkconfig --add /etc/rc.d/init.d/mosquitto_auto_start.sh
chkconfig /etc/rc.d/init.d/mosquitto_auto_start.sh on

重启后,可根据进程以及工具调用查询mosquitto服务是否正常启动。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值