zoukankan      html  css  js  c++  java
  • 【CentOS】下安装RabbitMQ教程

     

    系统版本:

    image

     

    安装依赖:

    由于RabbitMQ依赖Erlang, 所以需要先安装Erlang。

    Erlang的安装方式大概有两种:

    (1) Erlang Solution安装(推荐)

    wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

    rpm -Uvh erlang-solutions-1.0-1.noarch.rpm

    yum install erlang

    (2) 从EPEL源安装(这种方式安装的Erlang版本可能不是最新的,有时候不能满足RabbitMQ需要的最低版本)

    yum install epel-release

    yum install erlang

    安装RabbitMQ:

    wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-3.6.15-1.el7.noarch.rpm

                 image

    下载完成后安装:

    yum install rabbitmq-server-3.6.15-1.el7.noarch.rpm

    安装时如果遇到下面的依赖错误:

    Error: Package: socat-1.7.2.3-1.el6.x86_64 (epel) Requires: libreadline.so.5()(64bit)

    可以尝试先执行:

    yum install socat

    RabbitMQ的一些基本操作:

    # 添加开机启动RabbitMQ服务

    systemctl enable rabbitmq-server.service

    # 查看服务状态

    systemctl status  rabbitmq-server.service

    # 启动服务

    systemctl start rabbitmq-server.service

    # 停止服务

    systemctl stop rabbitmq-server.service

    # 查看当前所有用户

    rabbitmqctl list_users

    # 查看默认guest用户的权限

    rabbitmqctl list_user_permissions guest

    # 由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 先删掉默认用户

    rabbitmqctl delete_user guest

    # 添加新用户

    rabbitmqctl add_user username password

    # 设置用户tag

    rabbitmqctl set_user_tags username administrator

    # 赋予用户默认vhost的全部操作权限

    rabbitmqctl set_permissions -p / username ".*" ".*" ".*"

    # 查看用户的权限

    rabbitmqctl list_user_permissions username

    更多关于rabbitmqctl的使用,可以参考帮助手册

    开启web管理接口

    如果只从命令行操作RabbitMQ,多少有点不方便。幸好RabbitMQ自带了web管理界面,只需要启动插件便可以使用。

    rabbitmq-plugins enable rabbitmq_management

    访问:  http://localhost:15672

    配置RabbitMQ

    关于RabbitMQ的配置,可以下载RabbitMQ的配置文件模板/etc/rabbitmq/rabbitmq.config, 然后按照需求更改即可。
    关于每个配置项的具体作用,可以参考官方文档

    开启用户远程访问

    默认情况下,RabbitMQ的默认的guest用户只允许本机访问, 如果想让guest用户能够远程访问的话,只需要将配置文件中的loopback_users列表置为空即可,如下:

    {loopback_users, []}

    另外关于新添加的用户,直接就可以从远程访问的,如果想让新添加的用户只能本地访问,可以将用户名添加到上面的列表, 如只允许admin用户本机访问。

    {loopback_users, ["admin"]}

    restart …

    查看日志位置

    systemctl status  rabbitmq-server.service

    image

    这里可以看到log文件的位置,转到文件位置,打开文件:

    image

    这里显示的是没有找到配置文件,我们可以自己创建这个文件:

    cd /etc/rabbitmq/

    vim rabbitmq.config

    编辑内容如下:

    [{rabbit, [{loopback_users, []}]}].

    这里的意思是开放使用,rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问,localhost或者127.0.0.1,从外部访问需要添加上面的配置。

    保存配置后重启服务:

    systemctl stop rabbitmq-server.service

    systemctl start rabbitmq-server.service

    此时就可以从外部访问了,但此时再看log文件,发现内容还是原来的,还是显示没有找到配置文件,可以手动删除这个文件再重启服务,不过这不影响使用:

    rm rabbit@mythsky.log

    service rabbitmq-server stop

    service rabbitmq-server start

    注意:记得要开放5672和15672端口 (iptables版本)

    /iptables -I INPUT -p tcp --dport 5672 -j ACCEPT

    /iptables -I INPUT -p tcp --dport 15672 -j ACCEPT 

    WEB UI:

           image

  • 相关阅读:
    C++ generic tools -- from C++ Standard Library
    18 12 18 给服务器添加logging 日志功能
    18 12 14 python提高 装饰器
    18 12 `12 WSGI 协议
    18 12 07 MySQL 与python 的交互
    转 SQL 的数据库 架构规范 之 58到家数据库30条军规解读
    18 12 06 sql 的 基本语句 查询 条件查询 逻辑运算符 模糊查询 范围查询 排序 聚合函数 分组 分页 连接查询 自关联 子查询
    18 12 4 SQL 的基本 语法
    clion 的 安装 变量配置的 搬运工(有点基础应该能看 大家看不懂 就是我自己看 哈哈哈哈哈哈)
    18 11 27 高级的服务器连接 epoll
  • 原文地址:https://www.cnblogs.com/EddieBlog/p/8735638.html
Copyright © 2011-2022 走看看