美文网首页
centos7安装rabbitMQ3.7.8

centos7安装rabbitMQ3.7.8

作者: 初心myp | 来源:发表于2019-11-05 15:47 被阅读0次

    1. RabbitMQ简介:

    RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。
    如果不熟悉AMQP,直接看RabbitMQ的文档会比较困难。不过它也只有几个关键概念,这里简单介绍。

    2. 安装步骤

    2.1 首先需要安装 Erlang环境

    官网:
    http://www.erlang.org/
    安装erlang,首先需要Yum源支持:

    cd /usr/local/src/  
    mkdir rabbitmq  
    cd rabbitmq  
      
    wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm  
    rpm -Uvh erlang-solutions-1.0-1.noarch.rpm  
      
    rpm –import http://packages.erlang-solutions.com/rpm/erlang_solutions.asc  
      
    sudo yum install erlang
    

    检查Erlang是否安装成功

    [root@localhost ~]# erl -version
    Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 9.3
    [root@localhost ~]# 
    
    2.2 下载rpm安装包

    官方地址:http://www.rabbitmq.com/download.html
    (下载命令:wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.4/rabbitmq-server-3.7.4-1.el7.noarch.rpm)

    2.3 安装rabbitMQ

    yum install -y rabbitmq-server-3.7.8-1.el7.noarch.rpm

    2.3.1 检查RabbitMQ是否安装成功
    [root@localhost ~]# rabbitmqctl status
    Status of node rabbit@localhost ...
    [{pid,14618},
     {running_applications,
         [{rabbitmq_management,"RabbitMQ Management Console","3.7.4"},
          {rabbitmq_management_agent,"RabbitMQ Management Agent","3.7.4"},
          {amqp_client,"RabbitMQ AMQP Client","3.7.4"},
          {rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.7.4"},
          {cowboy,"Small, fast, modern HTTP server.","2.2.2"},
          {cowlib,"Support library for manipulating Web protocols.","2.1.0"},
          {rabbit,"RabbitMQ","3.7.4"},
          {rabbit_common,
              "Modules shared by rabbitmq-server and rabbitmq-erlang-client",
              "3.7.4"},
          ... 
    

    3. 关于服务

    3.1 启动服务

    service rabbitmq-server start

    3.2 停止服务

    service rabbitmq-server stop

    3.3 设置开机启动

    chkconfig rabbitmq-server on

    4.用户管理

    4.1 查看用户列表
    [root@localhost ~]# rabbitmqctl list_users
    Listing users ...
    guest   [administrator]
    [root@localhost ~]# 
    
    4.2 添加用户
    [root@localhost ~]# rabbitmqctl add_user admin 123456
    Adding user "admin" ...
    [root@localhost ~]# 
    
    4.3 删除用户
    rabbitmqctl delete_user 用户名
    [root@localhost ~]# rabbitmqctl delete_user admin
    Deleting user "admin" ...
    [root@localhost ~]# 
    
    4.4 修改用户密码
    rabbitmqctl change_password 用户名 新密码
    [root@localhost ~]# rabbitmqctl change_password admin 666666
    Changing password for user "admin" ...
    [root@localhost ~]# 
    

    5.角色管理

    5.1 角色说明

    none(普通用户)
    没有控制台操作权限。

    management(普通管理员)
    可以查看当前用户的queues, exchanges和bindings。
    可以查看和关闭当前用户的channels和connections。
    可以查看当前用户的virtual hosts的统计信息。

    policymaker(策略管理员)
    具有management权限及查看、创建和删除当前用户的policies和parameters。

    monitoring(监控管理员)
    具有management权限
    查看所有virtual hosts及全局的统计信息
    查看所有用户的connections和channels
    查看所有节点数据,如clustering和memory使用情况

    administrator(超级管理员)
    具有policymaker、monitoring权限
    查看、创建、删除所有virtual hosts
    查看、创建、删除所有users
    查看、创建、删除所有permissions
    可以关闭所有用户的connections

    5.2 查看用户角色
    rabbitmqctl list_users 用户名
    [root@localhost ~]# rabbitmqctl list_users
    Listing users ...
    admin   [administrator]
    guest   [administrator]
    [root@localhost ~]# 
    
    5.3 设置用户角色
    rabbitmqctl set_user_tags admin 角色名称(支持同时设置多个角色)
    [root@localhost ~]# rabbitmqctl set_user_tags admin administrator
    Setting tags for user "admin" to [administrator] ...
    [root@localhost ~]# 
    

    6. 权限管理

    用户权限是指用户对exchange,queue的操作权限,包括配置权限,读写权限。配置权限会影响到exchange,queue的声明和删除。读写权限会影响到queue的读写消息、exchange发送消息以及queue和exchange的绑定操作。

    6.1 查看用户权限
    rabbitmqctl list_user_permissions 用户名
    [root@localhost ~]# rabbitmqctl list_user_permissions guest
    Listing permissions for user "guest" ...
    /       .*      .*      .*
    [root@localhost ~]# 
    
    6.2 设置用户权限
    rabbitmqctl set_permissions -p 虚拟主机名称 用户名 <conf> <write> <read>
    [root@localhost ~]# rabbitmqctl set_permissions -p / admin '.*' '.*' '.*'
    Setting permissions for user "admin" in vhost "/" ...
    [root@localhost ~]# 
    

    7. 虚拟主机管理

    为什么需要虚拟主机(vhost)?因为RabbitMQ只能在虚拟主机的粒度上进行权限控制。每个vhost本质上是一个mini版的RabbitMQ服务器,拥有自己的队列、交换器和绑定等。

    7.1 查看虚拟主机
    [root@localhost ~]# rabbitmqctl list_vhosts
    Listing vhosts ...
    /
    [root@localhost ~]# 
    
    7.2 添加虚拟主机
    rabbitmqctl add_vhost 虚拟主机名称
    [root@localhost ~]# rabbitmqctl add_vhost coreSystem
    Adding vhost "coreSystem" ...
    [root@localhost ~]# 
    
    7.3 删除虚拟主机
    rabbitmqctl delete_vhost 虚拟主机名称
    [root@localhost ~]# rabbitmqctl delete_vhost coreSystem
    Deleting vhost "coreSystem" ...
    [root@localhost ~]#
    

    8. web后台管理

    8.1 启用后台管理插件
    [root@localhost ~]# rabbitmq-plugins enable rabbitmq_management
    The following plugins have been configured:
      rabbitmq_management
      rabbitmq_management_agent
      rabbitmq_web_dispatch
    Applying plugin configuration to rabbit@localhost...
    The following plugins have been enabled:
      rabbitmq_management
      rabbitmq_management_agent
      rabbitmq_web_dispatch
    
    started 3 plugins.
    [root@localhost ~]# 
    
    clipboard.png

    安装成功之后,使用浏览器访问时:ip:15672
    使用代码连接时:端口是5672

    相关文章

      网友评论

          本文标题:centos7安装rabbitMQ3.7.8

          本文链接:https://www.haomeiwen.com/subject/rhasbctx.html