Linux Centos7安装RabbitMQ

Linux Centos7安装RabbitMQ

  • Linux Centos7安装RabbitMQ
    • 需要安装包
    • 安装包下载
    • 安装
    • RabbitMQ简单设置
    • RabbitMQ启动
    • RabbitMQ启动过程中的几个小问题
      • Protocol 'inet_tcp': register/listen error: epmd_close
      • /var/lib/rabbitmq路径下面的各种文件的操作权限问题

Linux Centos7安装RabbitMQ

本文主要记录一种简单易上手的安装RabbitMQ的方法,以及对安装、运行过程中遇到的几个问题做简要记录

需要安装包

  1. erlang运行环境RPM包;
  2. rabbitmq服务器程序RPM包。

安装包下载

  1. 注意rabbitmq与erlang的版本依赖,依赖关系可以在RabbitMQ官网的这里找到;
  2. 在RabbitMQ官网的这里可以找到最新版本的RabbitMQ的下载地址,CentOS7下载点击如下图所示的位置:Linux Centos7安装RabbitMQ_第1张图片
  3. erlang的运行环境rpm包可以在这里下载,点击页面最上方的download按钮,在页面的中部点击下载,如下图所示:Linux Centos7安装RabbitMQ_第2张图片
  4. 下载完成以后文件大致如下:rabbitmq-server-3.7.13-1.el7.noarch.rpmesl-erlang_21.0-1~centos~7_amd64.rpm

安装

  1. 使用xshell或者其他工具连接目标服务器;
  2. 使用mkdir -p /usr/local/rpm新建目录用于存放rpm包;
  3. 使用cd命令进入新建的目录,通过xftp或者其他工具将下载的两个rpm包上传到服务器指定目录下;
  4. 使用如下命令安装erlang,rpm -ivh --nodeps esl-erlang_21.0-1~centos~7_amd64.rpm
  5. 使用如下命令安装rabbitmq,rpm -ivh --nodeps rabbitmq-server-3.7.13-1.el7.noarch.rpm
  6. 这样的安装不需要做环境变量等的配置。

RabbitMQ简单设置

  1. 启动控制台,rabbitmq-plugins enable rabbitmq_management
  2. 开启远程访问,rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问,localhost或者127.0.0.1。当在服务器上安装RabbitMQ,在自己的电脑上通过guest登录后台管理页面的时候,会发现登录不上,就是上面说的原因。
    • 解决方案一:
      • cd /etc/rabbitmq/
      • vim rabbitmq.config
      • 在文件中写入如下语句,[{rabbit, [{loopback_users, []}]}].
      • 重启RabbitMQ服务
    • 解决方案二:
      • 新建用户,rabbitmqctl add_user 用户名 密码
      • 分配用户标识(直接赋予administrator标识),rabbitmqctl set_user_tags 用户名 administrator
      • 设置权限,rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
      • 如果想让新添加的用户只能本地访问,可以修改方案一的配置文件,如下:[{rabbit, [{loopback_users, ["用户名"]}]}].

RabbitMQ启动

  1. 直接启动:rabbitmq-server
  2. 后台启动:rabbitmq-server -detached

RabbitMQ启动过程中的几个小问题

Protocol ‘inet_tcp’: register/listen error: epmd_close

解决方案如下:

  1. 查看iptables,iptables -t nat -L -n --line-numbers
  2. 注意查看两个ROUTING链下面是否有规则;
  3. 例如POSTROUTING下面有MASQUERADE规则,通过iptables -t nat -D POSTROUTING 1删除改规则,1为查看iptables时显示的行号。

/var/lib/rabbitmq路径下面的各种文件的操作权限问题

原因是该路径属于root,rabbitmq没有权限,使用下面的语句授权:chown -R rabbitmq:rabbitmq /var/lib/rabbitmq/

你可能感兴趣的:(RabbitMQ)