RabbitMQ系列—RabbitMQ 安装

来源:互联网 发布:移动办公软件技术指标 编辑:程序博客网 时间:2024/05/22 23:31

RabbitMQ的安装过程非常简单:由于RabbitMQ是基于Erlang语言开发并运行的,所以安装RabbitMQ的第一步是安装Erlang运行环境。您可以在https://www.erlang-solutions.com/resources 下载最新Erlang版本进行安装(注意不同的RabbitMQ版本有不同的Erlang最低版本要求,笔者使用的RabbitMQ版本为V3.5.4,Erlang版本为V18.0);

1、Erlang 的安装

为了简便,这里我们使用yum源的方式进行安装(如果不使用yum源方式的话,需要的依赖包太多,安装起来太麻烦)(我的实验环境里大约有100个依赖包序言安装)。

1.1、配置 Erlang 的yum源

Linux系统中默认是没有Erlang的yum源的,需要自己添加

# 添加源[root@bogon src]# wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm[root@bogon src]# rpm -Uvh erlang-solutions-1.0-1.noarch.rpm[root@bogon src]# rpm --import http://packages.erlang-solutions.com/rpm/erlang_solutions.asc# 看一下新装上的源[root@bogon src]# vim /etc/yum.repos.d/erlang_solutions.repo[erlang-solutions]name=Centos $releasever - $basearch - Erlang Solutionsbaseurl=http://packages.erlang-solutions.com/rpm/centos/$releasever/$basearchgpgcheck=0gpgkey=http://packages.erlang-solutions.com/debian/erlang_solutions.ascenabled=1

1.2、安装 Erlang

# 默认安装最新的18.3-1版本[root@bogon src]# yum install erlang erlang-wx# 同事需要18.0的,按照源的地址在网页上下载# http://packages.erlang-solutions.com/rpm/centos/7/x86_64/# erlang-18.0-1.el7.centos.x86_64.rpm 和 erlang-wx-18.0-1.el7.centos.x86_64.rpm[root@bogon src]# wget http://packages.erlang-solutions.com/rpm/centos/7/x86_64/erlang-18.0-1.el7.centos.x86_64.rpm[root@bogon src]# wget http://packages.erlang-solutions.com/rpm/centos/7/x86_64/erlang-wx-18.0-1.el7.centos.x86_64.rpm[root@bogon src]# yum install -y erlang-18.0-1.el7.centos.x86_64.rpm erlang-wx-18.0-1.el7.centos.x86_64.rpm

2、安装 RabbitMQ

接下来您可以在RabbitMQ官方(http://www.rabbitmq.com/)下载各种RabbitMQ的安装版本,建议直接使用各种操作系统对应的rpm文件进行安装即可。安装完成后,可以使用15672端口访问RabbitMQ的管理界面(默认的用户名和密码都是guest)。

2.1、配置 RabbitMQ 的yum源

[root@bogon src]# rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc

2.2、安装 RabbitMQ

[root@bogon src]# wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.5.4/rabbitmq-server-3.5.4-1.noarch.rpm[root@bogon src]# yum install -y rabbitmq-server-3.5.4-1.noarch.rpm

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

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

可以尝试先执行:

[root@bogon src]# install socat

3、启动 RabbitMQ

[root@bogon rabbitmq]# systemctl start rabbitmq-server

启动时遇到以下的问题:

918 11:42:14 bogon su[5899]: pam_unix(su:session): session opened for user rabbitmq by (uid=0)918 11:42:14 bogon su[5895]: pam_unix(su:session): session closed for user rabbitmq918 11:42:14 bogon su[5899]: pam_unix(su:session): session closed for user rabbitmq918 11:42:14 bogon rabbitmq-server[5822]: Starting rabbitmq-server: FAILED - check /var/log/rabbitmq/startup_{log, _err}918 11:42:14 bogon rabbitmq-server[5822]: rabbitmq-server.918 11:42:15 bogon systemd[1]: rabbitmq-server.service: control process exited, code=exited status=1918 11:42:15 bogon systemd[1]: Failed to start LSB: Enable AMQP service provided by RabbitMQ broker.-- Subject: Unit rabbitmq-server.service has failed-- Defined-By: systemd-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel

解决方法:只需要在文件中写一句“NODENAME=rabbit@localhost”,保存就OK啦;

# vim /etc/rabbitmq/rabbitmq-env.conf  NODENAME=rabbit@localhost  

4、远程访问 RabbitMQ

4.1、开启Web管理功能

[root@bogon sbin]# cd /sbin[root@bogon sbin]# rabbitmq-plugins enable rabbitmq_managementThe following plugins have been enabled:  mochiweb  webmachine  rabbitmq_web_dispatch  amqp_client  rabbitmq_management_agent  rabbitmq_managementApplying plugin configuration to rabbit@localhost... started 6 plugins.# 重启rabbitmq服务生效[root@bogon sbin]# systemctl restart rabbitmq-server

4.1、使用浏览器访问RabbitMQ管理控制台

由于账号guest具有所有的操作权限,并且又是默认账号,出于安全因素的考虑,guest用户只能通过localhost登陆使用,并建议修改guest用户的密码以及新建其他账号管理使用rabbitmq。

这里我们以创建个test帐号,密码123456为例,创建一个账号并支持远程ip访问。

# 创建账号[root@bogon sbin]# rabbitmqctl add_user test 123456# 设置用户角色[root@bogon sbin]# rabbitmqctl  set_user_tags  test  administrator# 设置用户权限[root@bogon sbin]# rabbitmqctl set_permissions -p "/" test ".*" ".*" ".*"# 设置完成后可以查看当前用户和角色(需要开启服务)[root@bogon sbin]# rabbitmqctl list_users

这时你就可以通过其他主机的访问RabbitMQ的Web管理界面了,访问方式,浏览器输入:serverip:15672。其中serverip是RabbitMQ-Server所在主机的ip。

这里写图片描述