RabbitMQ 安装与界面管理

RabbitMQ概述

官网:https://www.rabbitmq.com/

RabbitMQ是部署最广泛的开源消息代理。

RabbitMQ拥有成千上万的用户,是最流行的开源消息代理之一。从T-Mobile到Runtastic, RabbitMQ在全球范围内广泛应用于小型初创企业和大型企业。

RabbitMQ是轻量级的,易于部署在premises和云中。它支持多种消息传递协议。RabbitMQ可以以分布式和联合的方式部署,以满足高规模、高可用性的需求。

RabbitMQ运行在许多操作系统和云环境上,并为最流行的语言提供了广泛的开发工具。

安装准备

下载Rabbit

下载地址:https://www.rabbitmq.com/download.html

这里以Linux系统进行举例,我使用的是CentOS7的镜像,可以选择对应版本

下载Erlang

RabbitMQ是基于Erlang开发,所以想要使用RabbitMQ,需要安装Erlang

查看对应版本的Erlang

网址:https://www.rabbitmq.com/which-erlang.html

该处是对应的,不可以让Erlang版本超出范围

下载地址:https://www.erlang-solutions.com/

Linux安装

[root@localhost ~]# mkdir -p /usr/rabbitmq     # 在/usr文件夹下创建rabbitmq文件夹
[root@localhost ~]# cd /usr/rabbitmq # 进入/usr/rabbitmq 文件夹下
[root@localhost rabbitmq]#

使用X-ftp 将下载的文件移动到该文件下

安装Erlang

rpm -Uvh erlang-23.3.1-1.el7.x86_64.rpm    # 后面的文件名改为下载的文件名

yum install -y erlang     #安装erlang  , 这里可能会报错

yum list | grep erlang    # 查询erlang在系统中安装包的名字 , 如果显示installed 不用执行上面的安装

erl -v    #查看erlang版本

安装socat

yum install -y socat

安装RabbitMQ

rpm -Uvh rabbitmq-server-3.8.14-1.el7.noarch.rpm

yum install rabbitmq-server -y

测试是否安装成功

# 启动服务
systemctl start rabbitmq-server # 查看服务状态,如图
systemctl status rabbitmq-server.service # 开机自启动
systemctl enable rabbitmq-server # 停止服务
systemctl stop rabbitmq-server

Docker安装

更新yum

yum update               #yum 更新到最新

yum install -y yum-utils device-mapper-persistent-data lvm2    #安装需要的软件包

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo    #设置yum源为阿里云

安装Docker

yum install docker-ce -y        #安装docker

docker -v      #查看docker版本

配置Docker镜像

[root@localhost rabbitmq]# mkdir -p /etc/docker
[root@localhost rabbitmq]# tee /etc/docker/daemon.json <<-'EOF'
>
> {
> "registry-mirrors": ["https://9vqg1xqp.mirror.aliyuncs.com"]
> }
> EOF

重启、查看docker状态

systemctl daemon-reload 

systemctl restart docker       #重启docker

systemctl status daocker       #查看docker状态

docker images                  #查看docker镜像

Docker常用命令

#启动docker:
systemctl start docker
#停止docker:
systemctl stop docker
#重启docker:
systemctl restart docker
#查看docker状态
systemctl status docker
#开机启动
systemctl enable docker
systemctl unenable docker
#查看docker概要信息
docker info
#查看docker帮助文档
docker --help

开始安装

获取rabbit镜像

docker pull rabbitmq:management

创建并运行容器

docker run -di --name=myrabbit -p 15672:15672 rabbitmq:management

启动服务

docker ps -a           #查看容器

docker images          #查看镜像

docker start 3da6ff4c1cd4   #启动,最后的一串和容器中名字对应

这时候,访问路径: 你的IP地址:15672 (账号密码:guest)

小提示

如果你关机时,docker中rabbitmq容器没有关闭,再次开启时可能出现端口错误 ,记得关闭容器

docker ps          #查看容器

docker stop xxx    #关闭容器

RabbitMQ界面管理

默认情况下,rabbitmq是没有安装web端的客户端插件,需要安装才可以生效

rabbitmq-plugins enable rabbitmq_management


之后重启服务

systemctl restart rabbitmq-server

之后可以进入网址:你的ip地址:15672 (例如:192.168.57.129:15672

linux ip地址查看方法:

ifconfig

正常进入的页面为:

说明:rabbitmq有一个默认账号和密码是:guest , 默认情况只能在本机( localhost )下访问,所以需要添加一个远程登录的用户

首先关闭防火墙,依次输入即可

systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
systemctl stop firewalld

授权账号和密码

用户级别 ( 设置操作权限时使用 ):

  1. administrator:可以登录控制台、查看所有信息、可以对 rabbitmq进行管理
  2. monitoring:监控者 登录控制台,查看所有信息
  3. policymaker:策略制定者 登录控制台,指定策略
  4. managment 普通管理员 登录控制台

最后会进行解析以上级别

rabbitmqctl add_user admin admin              #新增 admin 用户

rabbitmqctl set_user_tags admin administrator #设置用户操作权限

rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"    #为用户添加资源权限

这时候使用 admin 用户 就可以登陆成功了

小结

rabbitmqctl add_user 账号 密码       #添加新用户
rabbitmqctl set_user_tags 账号 administrator #设置用户操作权限 ,administrator可更改
rabbitmqctl change_password Username Newpassword #修改密码
rabbitmqctl delete_user Username #删除用户
rabbitmqctl list_users #查看用户清单
rabbitmqctl.bat set_permissions -p /用户名 ".*" "." ".*" #为用户添加资源权限

RabbitMQ用户级别

1.nono

  • 不能访问 management plugin

2.management

  • 查看自己相关节点信息
  • 列出自己可以通过AMQP登入的虚拟机
  • 查看自己的虚拟机节点virtual hostsqueuesexchangesbindings信息
  • 查看和关闭自己的 channelsconnections
  • 查看有关自己的虚拟机节点 virtual hosts 的统计信息,包括其他用户在这个节点 virtual hosts 中的活动信息,

3.Policymaker

  • 包含management所有权限
  • 查看和创建和删除自己的virtual hosts所属的policiesparameters信息.

4.Monitoring

  • 包含 management 所有权限
  • 罗列出所有的virtual hosts,包括不能登录的 virtual hosts.
  • 查看其他用户的connectionschannels信息
  • 查看节点级别的数据如clusteringmemory使用情况
  • 查看所有的virtual hosts的全局统计信息

5.Administrator

  • 最高权限
  • 可以创建和删除virtual hosts
  • 可以查看创建和删除users
  • 查看创建permisssions
  • 关闭所有用户的connections

个人博客为:

MoYu's HomePage

RabbitMQ 安装与界面管理的更多相关文章

  1. Ubuntu下的RabbitMQ安装与web管理配置

    首先在Ubutnu的/etc/apt/sources.list文件中加入一行 deb http://cz.archive.ubuntu.com/ubuntu trusty main 然后执行 sudo ...

  2. windows 下rabbitmq 安装---转载

    原文地址:http://blog.sina.com.cn/s/blog_7cc0c8cc0101mb4a.html 1.下载并安装erlang,http://www.erlang.org/downlo ...

  3. RabbitMQ_安装配置与管理

    RabbitMQ 安装配置与管理 安装 安装erlang虚拟机 Rabbitmq基于erlang语言开发,所有需要安装erlang虚拟机 #wget  http://www.erlang.org/do ...

  4. rabbitmq启用和禁用web界面管理插件

    rabbitmq默认安装启动以后,是没有开启web管理界面的,通过rabbitmq-plugins list命令可列出插件的启用和禁用状态. 使用rabbitmq-plugins enable xxx ...

  5. 02:zabbix-agent安装配置 及 web界面管理

    目录:Django其他篇 01: 安装zabbix server 02:zabbix-agent安装配置 及 web界面管理 03: zabbix API接口 对 主机.主机组.模板.应用集.监控项. ...

  6. RabbitMQ常用命令、管理界面

    1.运行CMD,cd切换到RabbitMQ安装目录sbin下E:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.2\sbin 执行 rabbitm ...

  7. 搭建KVM环境——07 带GUI的Linux上安装KVM图形界面管理工具

    清空yum源缓存,并查看yun源 [root@CentOS2 ~]# yum clean all Loaded plugins: fastestmirror, langpacks Cleaning r ...

  8. Linux下RabbitMQ安装、运行与管理

    Linux下RabbitMQ安装.运行与管理 安装erlang 安装参考官网 RabbitMQ的安装需要Erlang的基础环境,必须按照RabbitMQ Erlang版本要求进行安装. 关于Erlan ...

  9. rabbitMQ安装docker版 /权限管理命令

    1.进入docker hub镜像仓库地址:https://hub.docker.com/ 2.搜素rabbitMQ 查询镜像,可以看到多种类型,选择带有web页面的(managment) 3.拉取镜像 ...

随机推荐

  1. 在 Android 使用 QuickJS JavaScript 引擎教程

    quickjs-android 是 QuickJS JavaScript 引擎的 Android 接口框架,整体基于面向对象设计,提供了自动GC功能,使用简单.armeabi-v7a 的大小仅 350 ...

  2. Your branch and 'origin/master' have diverged, and have 1 and 1 different commits each, respectively

    On branch master Your branch and 'origin/master' have diverged, and have 1 and 1 different commits e ...

  3. python异步编程之asyncio

    python异步编程之asyncio   前言:python由于GIL(全局锁)的存在,不能发挥多核的优势,其性能一直饱受诟病.然而在IO密集型的网络编程里,异步处理比同步处理能提升成百上千倍的效率, ...

  4. L3级自动驾驶

    L3级自动驾驶 2020年开年 3月9日,工信部在其官网公示了<汽车驾驶自动化分级>推荐性国家标准报批稿,并拟于2021年1月1日开始实施. 按照中国自身标准制定的自动驾驶分级标准,在千呼 ...

  5. Usb-type-C端口实现的挑战与设计方案

    Usb-type-C端口实现的挑战与设计方案 USB Type-C port implementation challenges and design solutions USB from 1.1 t ...

  6. 与现代传感器的接口:轮询ADC驱动程序

    与现代传感器的接口:轮询ADC驱动程序 Interfacing with modern sensors: Polled ADC drivers 我们研究了在现代嵌入式应用程序中,开发人员应该如何创建一 ...

  7. Vue packages version mismatch的解决方法 初来乍到,踩坑日常

    初来乍到,踩坑日常 这个问题也是我也是接受别人项目,出现的问题,在下载好依赖后运行的时候报这样的错误 它上面显示两个版本一个vue的版本,一个vue-template-compiler版本,我这边忘了 ...

  8. CENTOS7 安装 SYNCTHING

    本地电脑需要同步远程数据,安装syncthing 测试 1:下载 wget https://github.com/syncthing/syncthing/releases/download/v1.5. ...

  9. OO unit1 summary

    Unit 1 summary 一.前言 三周左右的学习,OO第一单元顺利结束了,个人认为有必要写个blog来反思总结一下自己第一单元的学习情况,以便更好地进行后面的学习. 之前从来没有写blog的习惯 ...

  10. 解放生产力,自动化生成vue组件文档

    一.现状 Vue框架在前端开发中应用广泛,当一个多人开发的Vue项目经过长期维护之后往往会沉淀出很多的公共组件,这个时候经常会出现一个人 开发了一个组件而其他维护者或新接手的人却不知道这个组件是做什么 ...