Ubuntu下RabbitMq 安装与运行

参考:https://blog.csdn.net/haeasringnar/article/details/82715823?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

https://www.cnblogs.com/shuzhengyi/p/4280102.html

https://blog.csdn.net/cnxieyang/article/details/52710967

由于rabbitMq需要erlang语言的支持,在安装rabbitMq之前需要安装erlang,执行命令:

apt-get install erlang-nox     # 安装erlang
erl    # 查看relang语言版本,成功执行则说明relang安装成功

退出erl:

 安装 RabbitMQ

sudo apt-get install rabbitmq-server

查看状态

systemctl status rabbitmq-server   #Active: active (running) 说明处于运行状态

# service rabbitmq-server status 用service指令也可以查看,同systemctl指令

启用 web端可视化操作界面,我们还需要配置Management Plugin插件

rabbitmq-plugins enable rabbitmq_management   # 启用插件
service rabbitmq-server restart    # 重启

安装完成

使用以下链接进入插件提供的管理界面,用户名密码为上一步设置的用户名与密码(默认密码官网上找,我忘记了)

http://IP:15672

启动与停止:

启动:sudo rabbitmq-server start

关闭: sudo rabbitmq-server stop

重启: sudo rabbitmq-server restart

新建用户

sudo rabbitmqctl add_user  【用户名】 【密码】

赋予权限

sudo rabbitmqctl set_user_tags [用户名] administrator

赋予virtual host中所有资源的配置、写、读权限以便管理其中的资源,也是添加远程访问权限

sudo rabbitmqctl  set_permissions -p / [用户名] '.*' '.*' '.*'

基本操作:
sudo rabbitmqctl # 查看所有命令和帮助文档

本地节点默认被命名为”rabbit”。可以通过这个命令前使 用”-n”标志明确的指定节点名称, 例如:  

sudo rabbitmqctl -n rabbit@hostname **** 控制台命令

sudo rabbitmqctl stop # 停止服务
sudo rabbitmqctl status # 查看服务状态 显示RabbitMQ中间件各种信息

启动应用:sudo  rabbitmqctl start_app

停止应用:sudo rabbitmqctl stop_app

sudo rabbitmqctl list_users # 查看当前所有用户
sudo rabbitmqctl list_user_permissions guest # 查看默认guest用户的权限
sudo rabbitmqctl delete_user guest # 删掉默认用户(由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 可以删掉默认用户)
sudo rabbitmqctl add_user username password # 添加新用户

sudo rabbitmqctl change_password username newpassword  #修改密码

sudo rabbitmqctl delete_user username # 删除用户
sudo rabbitmqctl set_user_tags username administrator # 设置用户tag

设置用户权限

sudo rabbitmqctl set_permissions [-p vhostpath] username regexp regexp regexp

example:sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*" # 赋予用户默认vhost的全部操作权限
sudo rabbitmqctl list_user_permissions username # 查看用户的权限

清除用户权限
sudo rabbitmqctl clear_permissions [-p vhostpath] username
列出虚拟主机上的所有权限
sudo rabbitmqctl list_permissions [-p vhostpath]
创建虚拟主机 sudo rabbitmqctl add_vhost vhostpath

删除虚拟主机 sudo rabbitmqctl delete_vhost vhostpath

列出所有虚拟主机 sudo rabbitmqctl list_vhosts

列出全部队列,exchanger,binder

sudo rabbitmqctl  list_queues [-p <vhostpath>] [<queueinfoitem> ...]
   list_exchanges [-p <vhostpath>] [<exchangeinfoitem> ...]
   list_bindings [-p <vhostpath>] [<bindinginfoitem> ...]
   list_connections [<connectioninfoitem> ...]
   list_channels [<channelinfoitem> ...]
   list_consumers [-p <vhostpath>]


rabbitmqctl set_user_tags User Tag
User为用户名, Tag为角色名(对应于上面的administrator,monitoring,policymaker,management,或其他自定义名称)。

重置RabbitMQ节点:
sudo rabbitmqctl reset

sudo rabbitmqctl force_reset


(1) 超级管理员(administrator)

可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。

(2) 监控者(monitoring)

可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)

(3) 策略制定者(policymaker)

可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。

与administrator的对比,administrator能看到这些内容

(4) 普通管理者(management)

仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。

(5) 其他

无法登陆管理控制台,通常就是普通的生产者和消费者。

 

原文地址:https://www.cnblogs.com/yifengs/p/12524037.html