zoukankan      html  css  js  c++  java
  • linux-centos6-rabbitmq安装及配置

    服务器版本centos6.8

    一、先安装Erlang

    具体安装哪个版本可以对照 http://www.rabbitmq.com/which-erlang.html 如下图:

    准备安装RabbitMQ3.7所以这里我安装Erlang 20.3.x版本,我选择yum源安装,参照:https://github.com/rabbitmq/erlang-rpm

    1.1 首先在/etc/yum.repos.d路径下创建一个文件rabbitmq-erlang.repo (名称任意以.repo结尾即可)内容如下:

    [rabbitmq-erlang]
    name=rabbitmq-erlang
    baseurl=https://dl.bintray.com/rabbitmq/rpm/erlang/20/el/6
    gpgcheck=1
    gpgkey=https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
    repo_gpgcheck=0
    enabled=1

    1.2 不通的版本内容不通,可以去上面的网址找对应的内容,接着输入

    yum install socat
    yum install erlang

    如遇到错误

    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    Setting up Install Process
    No package socat available.
    Error: Nothing to do

    需要安装并启用 EPEL 源,下载地址:https://fedoraproject.org/wiki/EPEL/zh-cn ,根据操作系统版本下载对应rpm包

    下载完成之后

    yum install /opt/software/epel-release-latest-6.noarch.rpm

    成功之后重新执行 1.2步命令

    二、安装RabbitMQ

    rpm -ivh /opt/software/rabbitmq-server-3.7.6-1.el6.noarch.rpm

     拷贝配置文件模板到/etc/rabbitmq/ 目录下(也可以自己创建)

    cp /usr/share/doc/rabbitmq-server-3.7.6/rabbitmq.config.example /etc/rabbitmq/rabbitmq.config

    编辑拷贝过来的rabbitmq.config配置文件

    vi /etc/rabbitmq/rabbitmq.config

    打开 {loopback_users, []} 这一行的注释,并删除后面的逗号,目的是允许远程访问

    启动RabbitMQ

    service rabbitmq-server start

    查看RabbitMQ状态

    service rabbitmq-server status

     设置可视化插件

    rabbitmq-plugins enable rabbitmq_management

    重启服务

    service rabbitmq-server restart

    访问 服务ip:15672

    默认用户名密码:guest guest

    其他命令如下

    $ sudo chkconfig rabbitmq-server on # 添加开机启动RabbitMQ服务
    $ sudo /sbin/service rabbitmq-server start # 启动服务
    $ sudo /sbin/service rabbitmq-server status # 查看服务状态
    $ sudo /sbin/service rabbitmq-server stop # 停止服务
    
    # 查看当前所有用户
    $ sudo rabbitmqctl list_users
    
    # 查看默认guest用户的权限
    $ sudo rabbitmqctl list_user_permissions guest
    
    # 由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 先删掉默认用户
    $ sudo rabbitmqctl delete_user guest
    
    # 添加新用户
    $ sudo rabbitmqctl add_user username password
    
    # 设置用户tag
    $ sudo rabbitmqctl set_user_tags username administrator
    
    # 赋予用户默认vhost的全部操作权限
    $ sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*"
    
    # 查看用户的权限
    $ sudo rabbitmqctl list_user_permissions username

     三、集群配置

    3.1设置.erlang.cookie权限

    #找到 .erlang.cookie的位置,一般存在与两个位置,这和安装方式有关,我用rpm安装的,如果.gz包安装的会在$home目录下
    find / -name ".erlang.cookie"
    #然后进入到这个目录下,设置写权限
    cd /var/lib/rabbitmq/
    chmod u+w .erlang.cookie

    3.2 修改hosts文件

    vi /etc/hosts

    192.168.0.107 rabbitmq_node2 
    192.168.0.105 rabbitmq_node1

    需要注意的是hostname要与上面配置rabbtimq_node2一致,修改主机名后重启后消息队列会重新初始化,用户丢失,需要重新添加用户。

    3.3下面开始搭建集群

    #停止node1上的服务
    rabbitmqctl stop_app
    #让node2服务加入到node1中,node2需要运行中才行
    rabbitmqctl join_cluster rabbit@rabbitmq_node2

    重启并查看集群状态

    rabbitmqctl start_app
    rabbitmqctl cluster_status
  • 相关阅读:
    JBPM 入门阅读
    Jquery ligerui下拉框复选,使下拉框中相应值对勾选中
    spring quartz 1.6配置方法
    断点续传的原理
    转:DWR详细应用介绍
    转:第一个DWR示例
    解决(CXF):SOAPFaultException: Fault occurred while processing
    s2sh保存错误: a different object with the same identifier value was already associated
    解决 java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lan
    转载:struts2重要标签学习
  • 原文地址:https://www.cnblogs.com/syuf/p/9210010.html
Copyright © 2011-2022 走看看