Apache Apollo 安装使用文档
一:简介
Apache Apollo是一个代理服务器,其是在ActiveMQ基础上发展而来的,可以支持STOMP, AMQP, MQTT, Openwire, SSL, and WebSockets 等多种协议。
Apollo允许客户端通过开放的MQTT协议连接。该协议主要是用在资源有限的驱动上,以及网络不稳定的情况下使用,是一个订阅、发布模型。这种驱动通常不适用类似http,stomp这类基于文本,或者类似openfire,AMQP等传统二进制协议。MQTT是一个简介的二进制协议,适用这类驱动资源受限,而且是不稳定的网络条件下。之前的稳定发布版本中,MQTT是作为一个Apollo的一个插件提供的。但是现在,这个插件已经变为开发项目的一部分。MQTT在Apollo中已经不需要其他配置文件或者是第三方插件支持了。
MQTT是一个线路层的协议,任何实现该协议的客户端都可以连接到Apollo。当然也可以整合其他MQTT兼容的消息代理中
二:下载安装
下载地址:
http://www.apache.org/dyn/closer.cgi?path=activemq/activemq-apollo/1.7/apache-apollo-1.7-unix-distro.tar.gz
安装步骤:
1:解压apollo压缩包
tar -zxvf apache-apollo-1.7-unix-distro.tar.gz
2:进入apache-apollo-1.7目录下
cd apache-apollo-1.7
3:新建一个broker实例
./bin/apollo create mqtt_test
#在当前目录下生成一个mqtt_test目录,其下面包含:
bin 运行脚本
etc 环境配置
data 存储持久化数据
log 运行日志
tmp 临时文件
三:etc配置文件说明:
一、users.properties:
用来配置可以使用服务器的用户以及相应的密码。
其在文件中的存储方式是:用户名=密码,如:
admin=password
表示新增一个用户,用户名是:admin,密码是:password
二、groups.properties:
持有群体的用户映射,可以通过组而不是单个用户简化访问控制列表。
可以为一个定义的组设置多个用户,用户之间用“|”隔开,如:
admins=admin|lily
表示admins组中有admin和lily两个用户
三、black-list.txt:
用来存放不允许连接服务器的IP地址,相当于黑名单类似的东西。
例如:10.20.9.147
表示上面IP不能够连接到服务器。
四、login.config:
是一个服务器认证的配置文件,为了安全apollo1.6版本提供了认证功能,只有相应的用户名和正确的密码才能够连接
服务器。
五、服务器主配置文件apollo.xml:
该配置文件用于控制打开的端口,队列,安全,虚拟主机设置等。
1、认证:可以使用
2、access_rule:可以在broker或者virtual_host中用于定义用户对服务器资源的各种行为。如:
http://activemq.apache.org/apollo/documentation/user-manual.html
3、message stores:默认情况下apollo使用的是LevelDB store,但是推荐使用BDB store(跨平台的)只能够实用其中一种。使用LevelDB store的配置是:
4、connector:用于配置服务器支持的链接协议以及相应的端口。如:
具体查看:http://activemq.apache.org/apollo/documentation/user-manual.html
四:配置、启动
配置参考如上说明。若非本机安装,修改apollo.xml文件中web_admin的ip地址,以便访问控制台。
启动服务:
./bin/apollo-broker-service start
脚本参数:apollo-broker-service {start|stop|restart|force-stop|status}
启动后,访问http://192.168.36.102:61680/或者https://192.168.36.102:61681。默认用户:admin / password
控制台如图: