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 hosts的queues,exchanges和bindings信息
  • 查看和关闭自己的 channels 和connections
  • 查看有关自己的虚拟机节点 virtual hosts 的统计信息,包括其他用户在这个节点 virtual hosts 中的活动信息,

3.Policymaker

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

4.Monitoring

  • 包含 management 所有权限
  • 罗列出所有的virtual hosts,包括不能登录的 virtual hosts.
  • 查看其他用户的connections和channels信息
  • 查看节点级别的数据如clustering和memory使用情况
  • 查看所有的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. Linux(CentOS7)下Nginx安装

    记录一下 Linux(CentOS7) 下 Nginx 安装过程 一.准备工作 版本说明: Linux版本:CentOS 7 64位 Nginx版本:nginx-1.20.0 1. 下载安装文件 采用 ...

  2. Lua学习高级篇

    Lua学习高级篇 之前已经说了很多,我目前的观点还是那样,在嵌入式脚本中,Lua是最优秀.最高效的,如果您有不同的观点,欢迎指正并讨论,切勿吐槽.这个系列完全来自于<Programming in ...

  3. ADAS系统长篇综述(下)

    ADAS系统长篇综述(下) 四.ADAS架构设计的进化阶梯 前面谈到的产品的商业化推广渗透和产品的功能演进渗透,目的是让大家去概念化.当然,最后的赢家一定是实干者,能够在具体技术实现路径上进行深度耕耘 ...

  4. 基于OpenSeq2Seq的NLP与语音识别混合精度训练

    基于OpenSeq2Seq的NLP与语音识别混合精度训练 Mixed Precision Training for NLP and Speech Recognition with OpenSeq2Se ...

  5. C#中使用swagger小技巧

    C#中使用swagger小技巧 swaggerUI显示的接口内容主要用于开发阶段便于与前端联调,不适合发布到对外的站点. 有以下两种方式,让接口不显示在SwaggerUI中 1.使用属性 [ApiEx ...

  6. CentOS 7 部署 node 项目

    CentOS 7 部署 node 项目 安装 node 环境 方法一:使用 wget 的方式下载压缩包进行解压 淘宝node镜像地址,进入地址选择自己想要安装的版本 wget https://npm. ...

  7. 重新整理 mysql 基础篇————— mysql 事务[三]

    前言 简单整理一下事务. 正文 事务有四大特性: 1.原子性(atomicity) 一个事务必须被视为一个不可分割的最小单元. 2.一致性(consistency) 数据库总是从一个一致性的状态转换到 ...

  8. 深入了解Debug和Release的区别

    原文地址:https://blog.csdn.net/sky___ice/article/details/8993885 一: Bin 目录用来存放编译的结果,bin是二进制binrary的英文缩写, ...

  9. 2021Qt打包发布教程

    因为最近写了一个程序,然后想着能给室友玩耍,就研究了一下如何打包,写这篇博客记录一下 1. 首先获得程序的Release版本 就是点击这个Release,然后构建一遍 2. 进入构建的release文 ...

  10. .NET Core/.NET5/.NET6 开源项目汇总10:实用工具

    系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...