Ubuntu下RabbitMq 安装与运行及常用命令

1、安装erlang

由于rabbitMq需要erlang语言的支持,在安装rabbitMq之前需要安装erlang

sudo apt-get install erlang-nox

2、安装Rabbitmq
更新源

sudo apt-get update

安装

sudo apt-get install rabbitmq-server

启动、停止、重启、状态rabbitMq命令

sudo rabbitmq-server start
sudo rabbitmq-server stop
sudo rabbitmq-server restart
sudo rabbitmqctl status


三、添加admin,并赋予administrator权限

添加admin用户,密码设置为admin。

sudo rabbitmqctl add_user  admin  admin

赋予权限

sudo rabbitmqctl set_user_tags admin administrator

赋予virtual host中所有资源的配置、写、读权限以便管理其中的资源

sudo rabbitmqctl  set_permissions -p / admin '.*' '.*' '.*'


四、RabbitMQ GUID使用

1、官方提供的一个web管理工具(rabbitmq_management)

2、安装了Rabbitmq后,默认也安装了该管理工具,执行命令即可启动

sudo  rabbitmq-plugins enable rabbitmq_management(先定位到rabbitmq安装目录)


3、浏览器访问http://localhost:15672/


使用刚刚创建的admin就可以登录,密码也为admin



五、常用命令


启动与停止:

启动: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) 其他

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


by 雪洁 2020-05-27 10:07:45 226 views
我来说几句

相关文章