搭建mqtt服务器apollo
使用的apollo,官网太慢,附上百度云下载地址:
链接:https://pan.baidu.com/s/1NIq6R71hlyPuaUBwPoMPNg
提取码:36vw
原文链接:https://blog.csdn.net/yangsong4353/article/details/87967561
需要注意的是想要在宿主机上访问,需要修改
Apollo监控页面配置
vi /opt/apollo/mybroker/etc/apollo.xml
修改
http://127.0.0.1:61680“/>
https://127.0.0.1:61681“/>
为
http://0.0.0.0:61680“/>
https://0.0.0.0:61681“/>
MQTT服务器尝试过两种,一种是 Mosquitto、另一种是 Apollo,本次记录Apollo 在CentOS 7.6 linux 下的安装和测试。
Apollo下载地址: http://activemq.apache.org/apollo/versions/1.7/website/download.html
下载后的文件放置在Downloads文件夹下,对此压缩包进行解压。
有可能需要进入root权限,输入su,之后输入密码,进入root权限。
解压: tar -zxvf apache-apollo-1.7.1-unix-distro.tar.gz
由于搭建 Apollo 环境变量需要有 JAVA_HOME,这个时候需要确认下系统中是否已经安装有jdk。
确认办法为输入命令: java -version,如有回复类似如下,则说明环境中已经有了jdk。
此版本的linux 系统中默认就有此,无需另外安装。如果没有,在参考其他文章安装jdk。
进入apache-apollo-1.7.1/bin目录,输入命令 cd /Downloads/apache-apollo-1.7.1/bin目录
创建一个Broker示例:./apollo create broker1。注意最前面有个“.”,创建成功后,会有如下提示:
Creating apollo instance at: mybroker
Generating ssl keystore...
You can now start the broker by executing:
"xxx/apache-apollo-1.7.1/bin/broker1/bin/apollo-broker" run
Or you can setup the broker as system service and run it in the background:
sudo ln -s "xxx/apache-apollo-1.7.1/bin/broker1/bin/apollo-broker-service start"
提示内容是告知如何启动broker。
创建完成后,会在/Downloads/apache-apollo-1.7.1/bin目录下,创建了一个broker1的文件夹。
进入到此目录后,会看到有如下文件夹:
进入到bin目录下,输入命令 ./apollo-broker run,启动broker。
出现这个界面即表示启动成功。
之后查看打印信息即可知道MQTT要连接的端口和管理页面端口。
然后打开Ubuntu浏览器,输入 http://127.0.0.1:61680/ 或 https://127.0.0.1:61681/, 即可进入 Apollo Console 窗口。
用户名和密码在 etc/users.properties文件中。默认用户名和密码为 admin 和 password。
配置
配置文件在 broker1/etc 文件中。具体说明可以参考 http://activemq.apache.org/apollo/versions/1.7/website/index.html 中的User Manual 章节。
简要介绍如下:
apollo.xml
此文件中设置了IP地址和端口号,设置访问用户组和访问权限。默认情况下,需要用户名和密码登陆网页,同时,MQTT设备连接服务器,也需要用户名和密码,默认情况下和登陆网页的相同。
如果需求其他用户名和密码,则需要在users.properties中增加用户名和密码,在groups.properties中增加users组,并在组中增加在users.properties中增加的成员。之后就可以使用新增加的用户名和密码进行登录。示例如下
如果想不需要用户名和密码登录,则按照如下方式修改即可。
<authentication enabled="false"/>
<!--<access_rule allow="users" action="connect create destroy send receive consume"/> -->
对外连接的端口号也可以在这个文件中进行修改。
black-list.txt
黑名单,可以将不需要的IP地址写入到这个文件中
log4j.properties
输出log配置,输出的log文件在log文件夹中
测试
配置完成后,可以对搭建好的服务器进行测试。
先在局域网进行测试。 在linux终端中输入 ifconfig 命令,查看本地ip地址。记录。
测试工具使用paho。下载地址
https://pan.baidu.com/s/1veYDXA3Pgu1liOAkATsfuQ 密码:8ljd 或 https://repo.eclipse.org/content/repositories/paho-releases/org/eclipse/paho/org.eclipse.paho.ui.app/
根据链接下载,打开paho for eclipse 文件夹中的 64位/paho.exe。如图:
打开软件
在服务器地址的位置,输入刚刚查到的地址,“:”后为端口号,根据启动apollo时提示的的端口号进行输入。默认的端口号是61613,我这里因为修改了配置文件,所以是1883。
之后点击 连接,如果能够连接上,说明成功了。
修改防火墙
实测,不成功,卡死在连接的那个状态了。
莫急莫急。通过查找发现,是因为linux防火墙开启,导致端口不能访问的原因。
查看默认防火墙状态使用命令: firewall-cmd --state (关闭后显示notrunning,开启后显示running)
1
2
[root@localhost ~]#firewall-cmd --state
not running
如果出现的是 running,那么就是这个原因导致不能连接服务器了。关闭防火墙可以参考文章 https://www.cnblogs.com/zhangzhibin/p/6231870.html 或 https://www.jianshu.com/p/dd663cb4affa
我使用的是下面的两个命令关闭防火墙。关闭之后,就可以正常使用啦。
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
稳妥一点的话,可以开启防火墙特定的端口,以免整个服务器收到攻击。这个设置如下。
启动防火墙服务:systemctl start firewalld.service
在开机时启用服务:systemctl enable firewalld.service
查看已经开放的端口: firewall-cmd --list-ports 。 如果有开放的会列举出来,如果没有则只显示一个空白行。
开启端口: firewall-cmd --zone=public --add-port=1883/tcp --permanent
命令含义:
–zone #作用域
–add-port=1883/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
重启防火墙: firewall-cmd --reload。
至此,就可以安心的使用服务器啦。
补充说明防火墙命令:
查看防火墙状态: firewall-cmd --state
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service;echo $?
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看已经开放的端口: firewall-cmd --list-ports
开启防火墙端口: firewall-cmd --zone=public --add-port=80/tcp --permanent
关闭防火墙端口: firewall-cmd --remove-port=3000/tcp --permanent
重启防火墙: firewall-cmd --reload
转载于:https://www.cnblogs.com/a1304908180/p/11409136.html
搭建mqtt服务器apollo相关推荐
- 快速搭建MQTT服务器(MQTTnet和Apache Apollo)
前言 MQTT协议是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分,http://mqtt.org/. MQTT is a machine-to-machine (M2M)/" ...
- mqtt服务器apollo的搭建和测试工具paho的使用
(1)前言 MQTT协议是IBM开发的一个即时通讯协议; 基于发布/订阅的消息协议,近些年来被广泛应用于能源.电力.....等硬件性能低下的远程设备,此外国内很多企业使用MQTT作为android手机 ...
- linux如何搭建mqtt服务器,【MQTT】在Ubuntu下搭建MQTT服务器
前言 博主之前写了一篇<在Windows下搭建MQTT服务器>,这次要尝试在Ubuntu下搭建MQTT服务器.实际上,下载好源码包后,后面的都和那篇文章差不多了. 开发环境 虚拟机 Ubu ...
- 转 【MQTT】在Windows下搭建MQTT服务器
MQTT简介 MQ 遥测传输 (MQTT) 是轻量级基于代理的发布/订阅的消息传输协议,设计思想是开放.简单.轻量.易于实现.这些特点使它适用于受限环境.该协议的特点有: 使用发布/订阅消息模式,提供 ...
- 阿里云服务器ECS-Apollo搭建MQTT服务器(Windows环境)
阿里云服务器(Windows环境)Apollo搭建MQTT服务器 1.购买阿里云服务器ECS 注册阿里云账号– 学生通过认证可免费领取2个月,由于网上教程很多,这里不做阐述了,我是领取的windows ...
- 【MQTT】在Windows下搭建MQTT服务器
MQTT简介 MQ 遥测传输 (MQTT) 是轻量级基于代理的发布/订阅的消息传输协议,设计思想是开放.简单.轻量.易于实现.这些特点使它适用于受限环境.该协议的特点有: 使用发布/订阅消息模式,提供 ...
- Windows搭建MQTT服务器
Win10下搭建MQTT服务器 一.获取软件包 链接:https://pan.baidu.com/s/1sKsL3ninhpwiawm69cOQ9w 提取码:9vhm mqtt服务器安装包为apach ...
- MQTT在Windows下搭建MQTT服务器
MQTT 在Windows下搭建MQTT服务器 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u012163234/article/details/ ...
- Ubuntu16.04LTS环境下搭建MQTT服务器以及QT实现MQTT客户端
MQTT服务器搭建 使用EMQX搭建MQTT服务器,EMQX 4.2.14 for Ubuntu 16.04下载 下载zip包,选择安装方式为zip,cpu架构选择x86_64 按照网页的指示进行下载 ...
- UbuntuServer搭建MQTT服务器
一.MQTT协议简介 MQTT 是一个基于发布/订阅模式的消息传输协议.它具有轻量级.开放.简单,易于实现,通信带宽要求低等特点.这些特点使得它对机器与机器的通信(M2M)以及物联网应用(IoT)来说 ...
最新文章
- oracle12c审计功能,oracle 12c开启关闭统一审计
- Openstack-L 路由注入方式
- tsql2008技术内幕:tsql语言基础(第3章)
- [Linux] Ubuntu下的文件比较工具--meld
- CentOS 5.6 使用光驱+系统光盘做YUM源
- Scalaz(47)- scalaz-stream: 深入了解-Source
- 关于strict-origin-when-cross-origin404请求的问题
- 随机过程基础(1)---一维随机变量标准分布函数、常见性质MATLAB实现
- sns.heatmap用法
- 字符26进制 与 10进制【可以这样来理解】
- linux如何更改密钥环密码,Linux系统教程:Ubuntu桌面上禁用默认的密钥环解锁提示...
- 全球与中国pH控制剂市场现状及未来发展趋势(2022)
- 计算机由哪几种显卡,各类显卡大比拼,你会选择哪一款显卡使用?
- 色域空间 sRGB Adobe RGB Pro Photo RGB
- 微服务系列:Nacos的搭建演武版(单机+集群+监控)
- 安卓一键清理内存_【安卓】手机垃圾清理,拯救内存空间
- 基于DHT11的温湿度显示
- 《MySQL是怎么运行的》读书笔记
- 2021年中国社会客货运输量及周转量情况分析[图]
- 如何用数学课件制作工具画角平分线
热门文章
- 思科bfd静态路由切换_配置静态路由与BFD联动
- access 记录集 filter find属性_[网页编程]-07 jQuery 操作页面元素属性
- (9)机器学习_多分类器OneVsRestClassifier
- 【Caffe安装】Caffe安装(有GPU)--wanglei
- 20170909在线编程之田忌赛马问题
- 分布排序(distribution sorts)算法大串讲
- 严重性	代码	说明	项目	文件	行 警告	C4819	该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失	opencv-05	d:\opencv\o
- 如何获取Class类对象?
- pdg快速转换pdf源码_在手机上快速免费把图片转换成PDF文件
- C++ set清空是clear 不是empty