系统环境ubuntu 16.04
默认安装(非最新版本)
安装:
sudo apt-get install rabbitmq-server
安装后自动启动rabbitmq,这时可以查看状态:
sudo service rabbitmq-server status
查看版本:
sudo rabbitmqctl status
查看erlang版本:
erl
退出erlang shell:
halt().
启动,关闭,重启命令:
sudo service rabbitmq-server start
sudo service rabbitmq-server stop
sudo service rabbitmq-server restart
安装最新版本
更新erlang到最新版本,先配置:
#配置源
echo "deb http://packages.erlang-solutions.com/ubuntu trusty contrib" | sudo tee -a /etc/apt/sources.list.d/erlang_solutions.list
#导入key:
wget -O- https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc |sudo apt-key add -
配置rabbitmq源:参考官网
Ubuntu 16.04:
echo "deb https://dl.bintray.com/rabbitmq/debian xenial main" | sudo tee /etc/apt/sources.list.d/bintray.rabbitmq.list
Ubuntu 18.04:
echo "deb https://dl.bintray.com/rabbitmq/debian bionic main" | sudo tee /etc/apt/sources.list.d/bintray.rabbitmq.list
开始安装:
sudo apt-get update
sudo apt-get install erlang-nox
sudo apt-get install rabbitmq-server
RabbitMQ配置
查看用户:
sudo rabbitmqctl list_users
添加用户:
sudo rabbitmqctl add_user 用户名 密码
把用户添加到管理组:
sudo rabbitmqctl set_user_tags 用户名 administrator
开启管理界面:
sudo rabbitmq-plugins enable rabbitmq_management
开启管理界面后,在服务器上开放TCP端口:15672,即可使用http://ip:15672访问管理界面。默认使用guest用户登录密码也是guest,guest只能在本机登录,可以使用其他administrator组的用户登录。
端口:
4369 – erlang发现口
5672 –client端通信口
15672 – 管理界面ui端口
25672 – server间内部通信口
1883 - mqtt端口
15675 - mqtt websocket端口
开启mqtt插件:
mac下的brew rabbitmq安装路径在: /usr/local/Cellar/rabbitmq/,要进sbin目录执行命令
#mqtt tcp:
sudo rabbitmq-plugins enable rabbitmq_mqtt
#mqtt websocket:
sudo rabbitmq-plugins enable rabbitmq_web_mqtt
mac下启动和停止rabbitmq:
启动:
sudo ./rabbitmq-server
这条命令启动后,程序在前台,但是用Ctrl+C退出后,程序实际上还是运行在后台。
查看官网有条执行在后台的命令:sudo ./rabbitmq-server -detached
,但是运行后总是出现错误:Warning: PID file not written; -detached was passed.
。
所以我都是直接sudo ./rabbitmq-server
,然后Ctrl+C退出前台模式。
关闭:
sudo ./rabbitmqctl stop
查看rabbitmq server状态:
sudo ./rabbitmqctl status
mqtt wss:
使用nginx 443 ssl端口反向代理到1883端口。
mqtt vhost配置:
参考:http://www.rabbitmq.com/mqtt.html
mqtt web-mqtt配置:
参考:http://www.rabbitmq.com/web-mqtt.html