• 02_RabbitMQ入门及安装


    RabbitMQ入门及安装

    简单概述:

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

    下载RabbitMQ

    下载地址: https://www.rabbitmq.com/install-rpm.html#downloads

    在这里插入图片描述

    下载Erlang

    由于RabbitMq是Erlang语言开发所以我们需要Erlang环境。

    下载时需要注意Erlang和RabbitMq版本对应关系: https://www.rabbitmq.com/which-erlang.html

    在这里插入图片描述

    下载地址:https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-23.2.7-2.el7.x86_64.rpm

    在这里插入图片描述

    上传至服务器

    mkdir -p /usr/rabbitmq
    cd /usr/rabbitmq/
    # 安装Erlang
    # 解压
    rpm -Uvh erlang-23.2.7-2.el7.x86_64.rpm 
    # 安装
    yum install -y erlang
    # 查看erlang版本
    erl -v
    #出现下图即为成功
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    在这里插入图片描述

    # 安装socat插件RabiitMq安装过程需要
    yum install -y socat
    # 解压
    rpm -Uvh rabbitmq-server-3.10.6-1.el8.noarch.rpm
    # 安装
    yum install -y rabbitmq-server
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    注意 ip地址和主机名要加条映射 不然启动不起来

    # 启动rabbitmq    
    systemctl start rabbitmq-server
    
    # 查看rabbitmq状态
    systemctl status rabbitmq-server
    
    # 设置rabbitmq服务开机自启动
    systemctl enable rabbitmq-server
    
    # 关闭rabbitmq服务
    systemctl stop rabbitmq-server
    
    # 重启rabbitmq服务
    systemctl restart rabbitmq-server
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    查看状态 出现下图即为成功

    在这里插入图片描述

    管理界面

    rabbitmq-plugins enable rabbitmq_management
    
    • 1

    访问ip:15672 出现界面

    RabbitMq有一个默认的账号密码guest,但该情况仅限于本机localhost进行访问,所以需要添加一个远程登录的用户。

    # 添加账号
    rabbitmqctl add_user 用户名 密码 
    rabbitmqctl add_user admin admin
    # 设置用户分配操作权限
    rabbitmqctl set_user_tags 用户名 administrator
    rabbitmqctl set_user_tags admin administrator
    # 用户名
    rabbitmqctl set_permissions -p / 用户名 ".*" ".*" ".*"
    rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    使用docker安装RabbitMQ

    先安装docker

    # 1、卸载旧版的
    yum remove docker \
                      docker-client \
                      docker-client-latest \
                      docker-common \
                      docker-latest \
                      docker-latest-logrotate \
                      docker-logrotate \
                      docker-engine
                      
    # 2、需要的安装包
    yum install -y yum-utils
    
    # 3、设置镜像的仓库
    yum-config-manager \
        --add-repo \
        https://download.docker.com/linux/centos/docker-ce.repo #默认是从国外的 十分慢
    # 推荐用这个阿里云的
        yum-config-manager \
        --add-repo \
        https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
    # 更新yum软件包索引
    yum makecache fast
    
    # 4、安装docker相关的  docker-ce社区版(推荐) ee 企业版
    yum install docker-ce docker-ce-cli containerd.io
    
    # 5、启动docker
    systemctl start docker
     
    # 6、查看是否成功
    docker version
    
    # 7、再确认
    docker run hello-world
    
    # 8、查看下载的hello-world 镜像
    docker images
    
    #配置阿里云镜像
    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["https://kgit923r.mirror.aliyuncs.com"]
    }
    EOF
    sudo systemctl daemon-reload
    sudo systemctl restart docker
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    docker安装rabbitmq

    #下载rabbitmq镜像
    docker pull rabbitmq:management
    # 创建并运行 RabbitMQ 容器
    docker run -di --name myrabbitmq \
        -e RABBITMQ_DEFAULT_USER=admin \
        -e RABBITMQ_DEFAULT_PASS=admin \
        -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883\
        rabbitmq:management
    
    #查看容器id号
    docker ps -a
    
    #启动rabbitmq_management  
    docker start 容器id号 
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    再次访问 ip:15672

    RabbitMQ角色分类

    1:none:

    • 不能访问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

  • 相关阅读:
    elementui el-table表格自动循环滚动【超详细图解】
    DOM- 网页特效篇
    来,做一道字节跳动面试的简单算法题
    C++ 笔记
    阿里云-源码构建容器镜像
    【设计模式】装饰者模式:以造梦西游的例子讲解一下装饰者模式,这也是你的童年吗?
    Redis避坑指南:为什么要有分布式锁?
    数据库-当前读与快照读
    element ui 使用记录
    (成功最详细版本,自定义传参失败,跳转出现空白页面,校验文件失败)微信小程序扫码跳转小程序指定页面保姆级教程
  • 原文地址:https://blog.csdn.net/xixihaha_coder/article/details/126857181