zoukankan      html  css  js  c++  java
  • Linux下RabbitMQ安装、运行与管理

    Linux下RabbitMQ安装、运行与管理

    安装erlang

    安装参考官网

    RabbitMQ的安装需要Erlang的基础环境,必须按照RabbitMQ Erlang版本要求进行安装。

    关于Erlang官方的安装方式有三种:
    
    官方制作的依赖软件包
    Erlang Solutions的软件包(这个可以自定义yum库安装,本人自己下载安装)
    EPEL(“Enterprise Linux的额外软件包”)
    

      

    1.依赖环境安装

    yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson
    

    2.获取安装文件

    wget http://erlang.org/download/otp_src_19.2.tar.gz
    

    3.解压erlang安装包 

    tar -xzvf otp_src_19.2.tar.gz
    

    4. cd erlang目录 

    cd otp_src_19.2
    

    5.编译安装erlang语言环境--prefix=/usr/local/erlang为安装目录

    ./configure  --prefix=/usr/local/erlang
    

    6.编译安装

    make && make install
    

    7.配置环境变量

    vi /etc/profile
     
    export PATH=$PATH:/usr/local/erlang/bin
     
    source /etc/profile
    

    8.验证是否安装成功 

    erl
    

      

    安装RabbitMQ

    安装指南  安装版本选择

    1.cd到指定目录

    cd /usr/local  //切换到计划安装RabbitMQ的目录,我这里放在/usr/local
    

    2.下载

    wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-generic-unix-3.6.1.tar.xz  //下载RabbitMQ安装包
    

    3.解压

    xz -d rabbitmq-server-generic-unix-3.6.1.tar.xz
    

     

    tar -xvf rabbitmq-server-generic-unix-3.6.1.tar
    

    4.改名

    mv rabbitmq_server-3.6.1/ rabbitmq

    5.配置rabbitmq环境变量

    vi /etc/profile
        #set rabbitmq environment
        export PATH=$PATH:/usr/local/rabbitmq/sbin
    source /etc/profile
    

      

    RabbitMQ 运行和管理

     运行常用命令

    //常用的rabbitmq的命令
    service rabbitmq-server   start
    service rabbitmq-server   stop
    service rabbitmq-server   status
    service rabbitmq-server   rotate-logs|
    service rabbitmq-server   restart
    service rabbitmq-server   condrestart
    service rabbitmq-server   try-restart
    service rabbitmq-server   reload
    service rabbitmq-server   force-reload
    service rabbitmq-server   -detached     //后台启动
    ps -ef | grep rabbitmq  查看rabbitMq进程
    
    netstat -anplt | grep LISTEN  rabbitmq默认监听端口15672/5672
    

    web管理

     15672 网页管理,  5672 AMQP端口
    rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问,localhost或者127.0.0.1,从外部访问需要添加上面的配置。
    //先创建目录,以免报错
    mkdir /etc/rabbitmq

    //开启管理页面插件 rabbitmq-plugins enable rabbitmq_management
    管理插件安装完成后,出现如下提示,表示安装成。
    The following plugins have been enabled:
      mochiweb
      webmachine
      rabbitmq_web_dispatch
      amqp_client
      rabbitmq_management_agent
      rabbitmq_management
    Plugin configuration has changed. Restart RabbitMQ for changes to take effect.

    重启rabbitmq服务

    service rabbitmq-server restart
    
    可以用浏览器输入localhost:15672,账号密码全输入guest即可登录

    配置防火墙

    配置linux 端口 15672 网页管理 5672 AMQP端口:

    firewall-cmd --permanent --add-port=15672/tcp
    firewall-cmd --permanent --add-port=5672/tcp
    systemctl restart firewalld.service
    

      

    管理常用命令

    查看mq用户:rabbitmqctl list_users  
    
    查看用户权限:rabbitmqctl list_user_permissions guest
    
    新增用户: rabbitmqctl add_user admin 123456
    
    赋予管理员权限:
    
    rabbitmqctl set_user_tags admin administrator 
    
    rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*" 
    

      

    可以创建管理员用户,负责整个MQ的运维,例如:
    rabbitmqctl add_user user_admin passwd_admin
     
    赋予其administrator角色:
    rabbitmqctl set_user_tags user_admin administrator
     
    可以创建RabbitMQ监控用户,负责整个MQ的监控,例如:
    rabbitmqctl add_user user_monitoring passwd_monitor
     
    赋予其monitoring角色:
    rabbitmqctl set_user_tags user_monitoring monitoring
     
    可以创建某个项目的专用用户,只能访问项目自己的virtual hosts
    sudo rabbitmqctl add_user user_proj passwd_proj
     
    赋予其monitoring角色:
    rabbitmqctl set_user_tags user_proj management
     
    创建和赋角色完成后查看并确认:
    rabbitmqctl list_users
     
    

      

    RabbitMQ用户角色及权限控制
    
    1.RabbitMQ的用户角色分类:
    
    none、management、policymaker、monitoring、administrator
    
    2.RabbitMQ各类角色描述:
    
    none
    
    不能访问 management plugin
    
    management
    
    用户可以通过AMQP做的任何事外加:
    
    列出自己可以通过AMQP登入的virtual hosts 
    
    查看自己的virtual hosts中的queues, exchanges 和 bindings
    
    查看和关闭自己的channels 和 connections
    
    查看有关自己的virtual hosts的“全局”的统计信息,包含其他用户在这些virtual hosts中的活动。
    
    policymaker
    
    management可以做的任何事外加:
    
    查看、创建和删除自己的virtual hosts所属的policies和parameters
    
    monitoring 
    
    management可以做的任何事外加:
    
    列出所有virtual hosts,包括他们不能登录的virtual hosts
    
    查看其他用户的connections和channels
    
    查看节点级别的数据如clustering和memory使用情况
    
    查看真正的关于所有virtual hosts的全局的统计信息
    
    administrator  
    
    policymaker和monitoring可以做的任何事外加:
    
    创建和删除virtual hosts
    
    查看、创建和删除users
    
    查看创建和删除permissions
    
    关闭其他用户的connections
    

      

  • 相关阅读:
    LeetCode OJ-- Count and Say
    3dContactPointAnnotationTool开发日志(二)
    如何将PDF的背景色设置为保护眼睛的苹果绿色
    3dContactPointAnnotationTool开发日志(一)
    随便测测
    360浏览器重新打开不小心关闭的网页
    Unity3d学习日记(四)
    Unity3d学习日记(三)
    Unity3d学习日记(二)
    新的目标ヾ(◍°∇°◍)ノ゙
  • 原文地址:https://www.cnblogs.com/-wenli/p/10856062.html
Copyright © 2011-2022 走看看