zoukankan      html  css  js  c++  java
  • Centos7 安装rabbitMQ

    一、RabbitMQ简单介绍
        RabbitMQ就是当前最主流的消息中间件之一。RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

        在目前分布式的大环境下,成为非常常用的消息队列,以下详细说明怎么在centos7 上安装部署rabbitmq,并列举简单的维护,方便运维同学能更好的维护rabbitmq的正常运行。由于一般生产环境,不管是erlang还是 rabbitmq都不能随便进行版本升级,每次升级都是要谨慎的,所以这里推荐都使用源码安装,这样就固定了版本,不会出现通过yum安装的话,不小心升级了版本导致服务故障等的问题。当然yum安装会更简单,这里就不做介绍,有兴趣的参考官方文档即可。

    二、Centos7下安装rabbitmq

        rabbitmq是erlang语言编写的,安装rabbitmq之前,需要先安装erlang,这里用erlang的源码进行安装,erlang安装包官网下载地址:http://erlang.org/download/

      erlang 下载地址

    链接: https://pan.baidu.com/s/11wPVwRM79ykKPkICR0RqgQ 提取码: u53v

    wget http://erlang.org/download/otp_src_21.1.tar.gz
    tar -zxvf otp_src_21.1.tar.gz
    cd otp_src_21.1
    # 这里要新建一个erlang文件夹,因为erlang编译安装默认是装在/usr/local下的bin和lib中,这里我们将他统一装到/usr/local/erlang中,方便查找和使用。
    mkdir -p /usr/local/erlang
     
    # 在编译之前,必须安装以下依赖包
    yum install -y make gcc gcc-c++ m4 openssl openssl-devel ncurses-devel unixODBC unixODBC-devel java java-devel
     
    ./configure --prefix=/usr/local/erlang

    以下的两个:APPLICATIONS INFORMATION,DOCUMENTATION INFORMATION是正常的,不影响正常编译。

    然后,直接执行make && makeinstall 进行编译安装

    安装后,在/usr/local/erlang中就会出现如下

     

     然后将/usr/local/erlang/bin这个文件夹加入到环境变量中,加载以下即可直接使用。

    1 vim /etc/profile
    2 ERL_PATH=/usr/local/erlang/bin
    3 PATH=$ERL_PATH:$PATH
    4 
    5 source /etc/profile  使配置生效,在shell中使用

      

      

     OK,安装完erlang后,下面安装rabbitmq,安装之前,需要去官网查看一下rabbitmq版本对erlang版本的一个支持情况,官网地址:http://www.rabbitmq.com/which-erlang.html

    这里,我们安装的erlang是最新的21版本,所以,rabbitmq也要安装最新的3.7.7,3.7.8。然后在官网上,直接下载该版本的安装包,为了方便安装,最好直接使用编译好的二进制文件包,即开即用,不用进行复杂的yum配置等。具体可以参考官方文档:http://www.rabbitmq.com/install-generic-unix.html

    # 下载源码包
    wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.8/rabbitmq-server-generic-unix-3.7.8.tar.xz
    # 解压
    tar -xvf rabbitmq-server-generic-unix-3.7.8.tar.xz -C /usr/local/
    # 添加环境变量
    vim /etc/profile
    ------  添加如下内容  ------
    PATH=$PATH:/usr/local/rabbitmq_server-3.7.8/sbin
     
     
    # 重载一下环境变量
    source /etc/profile
     
    # 添加web管理插件
    rabbitmq-plugins enable rabbitmq_management
     
    

      

    默认rabbitmq是没有配置文件的,需要去官方github上,复制一个配置文件模版过来,最新的3.7.0以上的版本可以使用新的key-value形式的配置文件rabbitmq.conf,和原来erlang格式的advanced.config相结合,解决一下key-value形式不好定义的配置。github地址:https://github.com/rabbitmq/rabbitmq-server/tree/master/docs

    由于我这里安装的是最新的3.7.8。所以就使用新的配置文件,将配置文件复制到 /usr/local/rabbitmq_server-3.7.8/etc/rabbitmq/ 下

    # 后台启动rabbitmq服务
    rabbitmq-server -detached
    

    登录遇到问题:User can only log in via localhost

    找到这个文件rabbit.app
    /usr/local/rabbitmq_server-3.7.8/ebin/rabbit.app

    将:{loopback_users, [<<”guest”>>]},
    改为:{loopback_users, []},
    原因:rabbitmq从3.3.0开始禁止使用guest/guest权限通过除localhost外的访问

    执行重启命令
    rabbitmq-server restart
    
    服务启动停止:
    
    启动: rabbitmq-server -detached
    
    停止: rabbitmqctl stop
    
    插件管理:
    
    插件列表: rabbitmq-plugins list 
    
    启动插件: rabbitmq-plugins enable XXX   (XXX为插件名)
    
    停用插件: rabbitmq-plugins disable XXX
    
    用户管理:
    
    添加用户: rabbitmqctl add_user username password
    
    删除用户: rabbitmqctl delete_user username
    
    修改密码: rabbitmqctl change_password username newpassword
    
    设置用户角色: rabbitmqctl set_user_tags username tag
    
    列出用户: rabbitmqctl list_users
    
    权限管理:
    
    列出所有用户权限: rabbitmqctl list_permissions
    
    查看制定用户权限: rabbitmqctl list_user_permissions username
    
    清除用户权限: rabbitmqctl clear_permissions [-p vhostpath] username
    
    设置用户权限: rabbitmqctl set_permissions [-p vhostpath] username conf write read
    
                              conf: 一个正则匹配哪些资源能被该用户访问
    
                              write:一个正则匹配哪些资源能被该用户写入
    
                              read:一个正则匹配哪些资源能被该用户读取
    
     
    

      

  • 相关阅读:
    Atitit. C#.net clr 2.0 4.0 4.5新特性 v2 s22 1. CLR内部结构 1 2. CLR 版本发展史 3 3. CLR 2.0新特性 4 4. CLR 4 新特性
    Hbase基本命令 悟寰轩
    mvn常用命令 悟寰轩
    linux添加tomcat服务 悟寰轩
    hadoop基本命令 悟寰轩
    Tomcat启动 悟寰轩
    Eclipse自动部署项目到Tomcat的webapps下的有效方法 悟寰轩
    MySQL改变默认编码为utf8 悟寰轩
    myeclipse关闭自动更新 悟寰轩
    Linux命令大全 悟寰轩
  • 原文地址:https://www.cnblogs.com/purely/p/13051216.html
Copyright © 2011-2022 走看看