zoukankan      html  css  js  c++  java
  • linux下安装RabbitMQ

    1.安装erlang

    因为RabbitMQ是基于erlang语言开发的,所以想要安装RabbitMQ之前必须要安装erlang语言

    yum install erlang

    如报错No package erlang available,需要安装EPEL库

    (1)下载

    wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

    如果没有安装wget,可以先安装 yum -y install wget

    (2)安装

    rpm -ivh epel-release-6-8.noarch.rpm

    2.安装RabbitMQ rpm包

    (1)下载rpm包

    wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.0/rabbitmq-server-3.5.0-1.noarch.rpm

    (2)安装RAbbitMQ

    rpm -ivh rabbitmq-server-3.5.0-1.noarch.rpm

    3.启动rabbitmq,并验证启动情况

    rabbitmq-server --detached &ps aux |grep rabbitmq

    4.以服务的方式启动

    只需要启动服务就行:service rabbitmq-server start

    service rabbitmq-server start     //启动rabbitmq服务

    5.打开防火墙的5672端口

    /sbin/iptables -I INPUT -p tcp --dport 5672 -j ACCEPT    //防火墙开放5672端口

    /sbin/iptables -I INPUT -p tcp --dport 1567 -j ACCEPT
    /etc/rc.d/init.d/iptables save //保存设置 /etc/init.d/iptables restart //重启网卡 /etc/init.d/iptables status //查看状态

    6.启用维护插件

    rabbitmq-plugins enable rabbitmq_management

    7.重启RabbitMQ

    service rabbitmq-server restart    //重启服务

    关闭RabbitMQ服务命令  service rabbitmq-server stop

    8.访问web界面

    地址为用的ip地址加端口号15672,192.168.12.12:15672

     

    默认用户名是guest,密码也是guest,想要使用guest登录先配置。出于安全考虑,guest用户只能通过web界面登录,其他ip无法通过这个账号登录。

    vi /etc/rabbitmq/rabbitmq.config
    
    [{rabbit, [{loopback_users, []}]}].       //输入的内容

    当然这样是不安全的,一般推荐自己新建用户添加权限实现。

    9.添加用户和权限

    rabbitmqctl add_user test 123456      //添加用户test密码123456
    
    rabbitmqctl  set_user_tags  test  administrator     //设置用户角色用超级管理员
    
    rabbitmqctl set_permissions -p "/" test ".*" ".*" ".*"       //设置用户权限
    
    rabbitmqctl  delete_user  test //删除用户test

    rabbitmqctl  change_password  test 123 // 修改用户test密码为123
    rabbitmqctl list_users       //查看当前用户和角色 

    当我们在创建用户时,会指定用户能访问一个虚拟机,并且该用户只能访问该虚拟机下的队列和交换机,如果没有指定,默认的是”/”;一个rabbitmq服务器上可以运行多个vhost,以便于适用不同的业务需要,这样做既可以满足权限配置的要求,也可以避免不同业务之间队列、交换机的命名冲突问题,因为不同vhost之间是隔离的。

    rabbitmqctl add_vhost test_vhost  # 添加虚拟机
    rabbitmqctl delete_vhost test_vhost  # 删除虚拟机
    rabbitmqctl list_vhosts  # 查看所有虚拟机
    rabbitmqctl set_permissions -p vhostname username ".*" ".*" ".*"  # username只能在vhostname虚拟机访问

    更多用户管理详细设置参考链接https://www.jianshu.com/p/e3af4cf97820

  • 相关阅读:
    Centos7下编译CDH版本hadoop源码支持Snappy压缩
    Sqoop异常:Please set $ACCUMULO_HOME to the root of your Accumulo installation.
    Sqoop入门
    Sqoop异常:Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONObject
    Mac下配置多个SSH KEY访问远程Git服务
    ANDROID_MARS学习笔记_S02重置版_001_HanderLooperMessageThreadThreadLocal
    ANDROID_MARS学习笔记_S05_006_距离传感器
    ANDROID_MARS学习笔记_S05_005_方向传感器
    ANDROID_MARS学习笔记_S05_004_过滤杂质,得到真正的加速度
    ANDROID_MARS学习笔记_S05_003_传感器采样率及属性
  • 原文地址:https://www.cnblogs.com/zzqit/p/10158923.html
Copyright © 2011-2022 走看看