三十一、RabbitMQ(2)

目录

  • 一、RabbitMQ 入门及安装
    • 1.1 概述
    • 1.3 Erlang 安装
      • 1.2.1 安装下载
      • 1.2.3 安装依赖环境
      • 1.2.4 安装 Erlang
      • 1.2.4 Erlang安装成功
    • 1.3 安装 RabbitMQ
    • 1.5启动 rabbitmq 服务
    • 1.4 开启管理界面及配置
      • 1.5.1 设置配置文件
  • 二、RabbitMQWeb 管理界面及授权操作
    • 2.1 RabbitMQ 管理界面
    • 2.2 授权账号和密码
      • 2.2.1 新增用户
      • 2.2.2 设置用户分配操作权限
      • 2.2.3 为用户添加资源权限
    • 2.3 小结

一、RabbitMQ 入门及安装

1.1 概述

RabbitMQ 官网

什么是RabbitMQ,官方给出来这样的解释:

RabbitMQ is the most widely deployed open source message broker.
With tens of thousands of users, RabbitMQ is one of the most popular open source message brokers. From T-Mobile to Runtastic, RabbitMQ is used worldwide at small startups and large enterprises.
RabbitMQ is lightweight and easy to deploy on premises and in the cloud. It supports multiple messaging protocols. RabbitMQ can be deployed in distributed and federated configurations to meet high-scale, high-availability requirements.
RabbitMQ runs on many operating systems and cloud environments, and provides a wide range of developer tools for most popular languages.
翻译以后:

  • RabbitMQ是部署最广泛的开源消息代理。
  • RabbitMQ拥有成千上万的用户,是最受欢迎的开源消息代理之一。从T-Mobile 到Runtastic,RabbitMQ在全球范围内的小型初创企业和大型企业中都得到使用。
  • RabbitMQ轻巧,易于在内部和云中部署。它支持多种消息传递协议。RabbitMQ可以部署在分布式和联合配置中,以满足大规模,高可用性的要求。
  • RabbitMQ可在许多操作系统和云环境上运行,并为大多数流行语言提供了广泛的开发人员工具。

简单概述:

RabbitMQ是一个开源的遵循AMQP协议实现的基于Erlang语言编写,支持多种客户端(语言)。用于在分布式系统中存储消息,转发消息,具有高可用,高可扩性,易用性等特征。

1.3 Erlang 安装

  1. 环境准备:CentOS7.x+ / Erlang
    注意:因为 RabbitMQ 是 Erlang 语言编写的,安装 RabbitMQ 前必须先安装 Erlang,安装版本对应下载,版本对应如下表参考

erlang 和 RabbitMQ 版本的按照比较

三十一、RabbitMQ(2)_第1张图片

Erlang官网

查看系统版本号

uname -a

在这里插入图片描述

1.2.1 安装下载

  1. 进入rabbitmq 的 github 地址下载 Erlang安装包
  2. 本地资源获取

第一步:

三十一、RabbitMQ(2)_第2张图片

第二步:

三十一、RabbitMQ(2)_第3张图片

第三步:

三十一、RabbitMQ(2)_第4张图片

步骤一:创建一台自己的服务器,然后执行下列命令

mkdir /usr/rabbitmq

三十一、RabbitMQ(2)_第5张图片

步骤二:将上面下载的资源上传到上面新建的服务器 /usr/rabbitmq下面

三十一、RabbitMQ(2)_第6张图片

上传成功如下:

三十一、RabbitMQ(2)_第7张图片

1.2.3 安装依赖环境

  • 在线安装依赖环境:
yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz

三十一、RabbitMQ(2)_第8张图片

三十一、RabbitMQ(2)_第9张图片

解释:yum 安装软件时出现 is this ok [y/d/n] 都直接按 y

  1. y代表yes:下载并安装
  2. d代表download:只下载不安装
  3. N代表no:不下载不安装

1.2.4 安装 Erlang

rpm -ivh erlang-25.1.2-1.el8.x86_64.rpm

三十一、RabbitMQ(2)_第10张图片

解决参考

直接如下解决:

  • 在该命令后面加上 --nodeps --force
  • 该命令的作用: 不再分析包之间的依赖关系而直接安装
rpm -ivh erlang-25.1.2-1.el8.x86_64.rpm  --nodeps --force

1.2.4 Erlang安装成功

三十一、RabbitMQ(2)_第11张图片

1.3 安装 RabbitMQ

1.RabbitMQ官网 下载地址

(1)

三十一、RabbitMQ(2)_第12张图片

安装最新版本可忽略下截图:

三十一、RabbitMQ(2)_第13张图片

(2)

三十一、RabbitMQ(2)_第14张图片

  1. 本地资源中获取
# 安装
rpm -ivh socat-1.7.3.2-1.1.el7.x86_64.rpm  --nodeps --force

# 安装
rpm -ivh rabbitmq-server-3.11.6-1.el8.noarch.rpm --nodeps --force

三十一、RabbitMQ(2)_第15张图片

1.5启动 rabbitmq 服务

# 启动服务
> systemctl start rabbitmq-server
# 查看服务状态
> systemctl status rabbitmq-server
# 停止服务
> systemctl stop rabbitmq-server
# 开机启动服务
> systemctl enable rabbitmq-server

启动成功:

启动服务,浏览器验证查看:http://192.168.188.183:15672/

三十一、RabbitMQ(2)_第16张图片

1.4 开启管理界面及配置

# 开启管理界面
rabbitmq-plugins enable rabbitmq_management

出现下列(看截图)问题及解决:

三十一、RabbitMQ(2)_第17张图片

cd /usr/lib64

ls libtinfo.so

cp libtinfo.so.5 libtinfo.so.6

ls libtinfo.so

rabbitmq-plugins enable rabbitmq_management
# 修改默认配置信息
vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin/rabbit.app 
# 比如修改密码、配置等等,例如:loopback_users 中的 <<"guest">>,只保留guest

1.5.1 设置配置文件

cd /usr/share/doc/rabbitmq-server-3.6.5/

cp rabbitmq.config.example /etc/rabbitmq/rabbitmq.config

一定要注意:RabbitMQ 在安装完毕以后,会绑定一些端口,如果你购买的是阿里云或者腾讯云相关的服务器一定要在安全组中把对应的端口添加到防火墙。

二、RabbitMQWeb 管理界面及授权操作

2.1 RabbitMQ 管理界面

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

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

  1. 安装完毕以后,重启服务即可
systemctl restart rabbitmq-server

一定要记住,在对应服务器(阿里云,腾讯云等)的安全组中开放15672的端口。

  1. 在浏览器访问

三十一、RabbitMQ(2)_第18张图片

2.2 授权账号和密码

2.2.1 新增用户

rabbitmqctl add_user admin admin

2.2.2 设置用户分配操作权限

rabbitmqctl set_user_tags admin administrator

用户级别:

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

2.2.3 为用户添加资源权限

rabbitmqctl.bat set_permissions -p / admin ".*" ".*" ".*"

2.3 小结

rabbitmqctl add_user 账号 密码
rabbitmqctl set_user_tags 账号 administrator
rabbitmqctl change_password Username Newpassword 修改密码
rabbitmqctl delete_user Username 删除用户
rabbitmqctl list_users 查看用户清单
rabbitmqctl set_permissions -p / 用户名 ".*" ".*" ".*" 为用户设置administrator角色
rabbitmqctl set_permissions -p / root ".*" ".*" ".*"

你可能感兴趣的:(#,计算机(Java进阶)中级,进阶阶段,java-rabbitmq,rabbitmq,分布式)