目前主流的MQTT协议的服务器搭建方式有Eclipse Mosquitto这样的代理工具软件,还有一些云端的代理服务器。这里介绍的是自建Apache Apollo代理服务器,模拟Mqtt的数据传输
一、 jdk环境安装
这里不多赘述,说几个碰到的问题。Mac下安装jdk后,运行指令 java -version是可以看到jdk版本的,因为是使用Installer安装的jdk,JAVA_HOME的配置我之前竟然是在/usr/bin下,运行apollo的时候提示
Error: JAVA_HOME is not defined correctly.
We cannot execute /System/Library/Frameworks/JavaVM.framework/Home/bin/java
这里运行jdk虚拟机的时候,提示找不到对应的程序。解决办法是,JAVA_HOME的环境变量配置路径应该是 /Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/
修改路径后,解决错误问题
二、 Apollo 服务器安装
apollo官方安装包地址: http://archive.apache.org/dist/activemq/activemq-apollo/1.7.1/ 我这里使用的是1.7.1版本
安装包下载完成后,解压至自定义目录下,我这边是 /Library/apache-apollo-1.7.1 cd到bin目录下,执行
./apollo create MqttBroker
创建一个代理Broker,这里的Warnning是密钥格式的问题,暂时不需要管,后面因为这个会有一个问题,稍后再说
开启服务器
cd MqttBroker/bin
启动服务器可以使用 ./apollo-broker run 或者 apollo-broker-service start
如图所示表示服务启动成功
三、 Apollo 配置
服务访问可在浏览器直接访问: http://localhost:61680/console/index.html 这里的访问ip还只能是本地ip:127.0.0.1或者localhost,局域网IP不可访问。默认登录账号为admin,密码为password
登录后点击顶部菜单栏Configuration菜单,选择apollo.xml文件
将下图所示的ip改成自己局域网或者外网可访问的ip后,save即可
以上,即MacOS 下安装Apollo代理服务流程