文章目录
RabbitMQ是一个在AMQP协议标准基础上完整的,可复用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rabbit MQ 是建立在Erlang OTP平台上。因此,安装RabbitMQ服务器必须首先安装 Erlang 运行环境。
安装Erlang
根据 RabbitMQ 版本所依赖的Erlang版本,选择相应的Erlang版本。
相关链接:
本次安装 RabbitMQ 3.8.12 (发布于16 February 2021),选择依赖 Erlang 23,下载好exe文件,然后安装。
安装好后,在windows菜单栏,就可以看到Erlang图标,双击启动后,如果看到如下的界面,表示安装成功:
安装好后,添加ERLANG_HOME
环境变量。
然后修改Path环境变量,添加这一段 %ERLANG_HOME%\bin
,打开cmd命令框,输入erl,也可以验证是否安装成功。
注意,一台机器上不要安装多个版本的Erlang。
安装RabbitMQ
下载
下载地址:
https://www.rabbitmq.com/download.html
配置参考:
https://www.rabbitmq.com/install-windows-manual.html
直接下载压缩包,然后解压到对应目录。
环境变量
- 添加
RABBITMQ_SERVER
环境变量。 - 修改Path环境变量,添加这一段
%RABBITMQ_SERVER%\sbin
。
重要,sbin目录下有很多可以运行的脚本,用来控制RabbitMQ。
例如:
rabbitmq-server.bat 将broker作为一个应用程序一样启动
rabbitmq-service.bat 管理服务和启动broker
rabbitmqctl.bat 管理一个正在运行的broker
Node data directory
RabbitMQ的默认logs和Node’s data director 存储在当前用的数据目录下,可以用 echo %APPDATA%
获得,一般是下面的路径:
C:\Users\\%USERNAME%\AppData\Roaming
可以通过配置:RABBITMQ_BASE, RABBITMQ_MNESIA_BASE or RABBITMQ_MNESIA_DIR 等环境变量来修改默认的node data directory。
Start the broker as an application
运行命令,
rabbitmq-server.bat
当前的CMD窗口就可用通过CLI 工具控制应用程序, 如果关掉该窗后,则会关掉Broker。
或者
rabbitmq-server.bat -detached
通过后台运行(-detached 的作用)的方式来启动一个Node。关掉该窗口,Broker任然运行。
管理RabbitMQ Node
检查Node status
rabbitmqctl.bat status
停止一个Node(Broker)
停止一个Broker
rabbitmqctl.bat stop
安装RabbitMQ server成windows 服务
安装成服务的方式,更推荐生产上使用。
新增环境变量RABBITMQ_SERVICENAME
,来定义服务的名字。
运行命令:
rabbitmq-service.bat install
注意,可以通过rabbitmq-service.bat来对服务进行管理 (install, remove, start, stop, enable, disable)等。
RabbitMQ有很多配置选项,如下所示:
https://www.rabbitmq.com/configure.html#customise-windows-environment
如果对配置进行了修改,最好是卸载当前服务,再重新安装。
例如, 作为一个服务启动Broker,命令如下:
rabbitmq-service.bat start
启动Web管理
安装插件,命令如下:
rabbitmq-plugins.bat enable rabbitmq_management
通过浏览器访问15672端口来登录管理平台。默认的账号是guest, 密码guest。
如果是通过java连接使用的是5672端口
http://localhost:15672/
配置用户
官网有详细的文档介绍:
查看用户
注意,下面命令后有.bat,则是windows上。
rabbitmqctl list_users # Linux 上
rabbitmqctl.bat list_users # Windows上
输出,可以改成json格式:
rabbitmqctl list_users --formatter=json
rabbitmqctl.bat list_users --formatter=json
创建用户
Linux:
rabbitmqctl add_user 'username' '2a55f70a841f18b97c3a7db939b7adc9e34a0f1b'
密码中不要带特殊字符,如 $, &, &, # 等
windows:
rabbitmqctl.bat add_user 'username' '9a55f70a841f18b97c3a7db939b7adc9e34a0f1d'
删除用户
rabbitmqctl delete_user 'username'
rabbitmqctl.bat delete_user 'username'
配置权限
linux:
# First ".*" for configure permission on every entity
# Second ".*" for write permission on every entity
# Third ".*" for read permission on every entity
rabbitmqctl set_permissions -p "custom-vhost" "username" ".*" ".*" ".*"
windows:
# First ".*" for configure permission on every entity
# Second ".*" for write permission on every entity
# Third ".*" for read permission on every entity
rabbitmqctl.bat set_permissions -p 'custom-vhost' 'username' '.*' '.*' '.*'
例子
创建一个用户,账号admin 密码admin
rabbitmqctl.bat add_user 'admin' 'admin'
将admin用户赋管理员权限
rabbitmqctl.bat set_user_tags admin administrator
rabbitmqctl.bat set_permissions -p "/" admin "." "." ".*"
配置用户权限
conf/write/read 都配成缺省显示的那个.* 即可
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/155752.html