1.rpm包安装
1.1. 用户权限
使用rpm包安装,要求我们拥有sudo权限,如果没有sudo权限的话,请参考官网如何使用源码进行安装。
1.2. 安装依赖环境Erlang
方法一:
安装erlang-rpm包,该包经过RabbitMQ官方处理,去掉了一些无用的依赖,只保存运行RabbitMQ所需要的Erlang模块。
方法二:
使用Erlang Solutions源进行安装
# 下载rpm包
wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
# 从erlang-solutions中更新该包,并将erlang_solutions.repo添加到/etc/yum.repos.d
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
# 安装
yum install erlang
----------------------------------------------------------------
该包还需依赖到epel源,请确保已有该源,若没有则可通过以下方式安装:
wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
yum repolist # 查看安装是否成功
由于Erlang Solutions会进行不断地更新,且RabbitMQ对Erlang的版本有一定的要求(官方版本要求对应表)。所以官方建议我们禁止Erlang版本的自动更新。方法如下:
# 安装yum-versionlock
yum install yum-plugin-versionlock
# 禁止Erlang自动更新
yum versionlock erlang
注:默认情况下,yum似乎是不会自动更新软件的,除非安装了yum-cron这个软件或者自己写了某些自动更新脚本。如果是前者的话,我们也可以 cd /etc/yum 目录下,将yum-cron.conf中的download_updates = yes 改为 no。
方法三:
使用EPEL(“Extra Packages for Enterprise Linux”)进行安装,但该方式安装到的包可能不是最新版的,所以在安装前请自行确认好版本号是否适合。
yum install erlang
1.3. 安装RabbitMQ Server
# 导入签名
rpm --import https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
# 或
rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
# 安装
yum install rabbitmq-server-3.7.7-1.el7.noarch.rpm
2. 使用脚本安装
#创建erlang.repo库
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
#安装
yum install erlang
#创建rabbitmq-server.repo库
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
#安装
yum install rabbitmq-server
这种方式虽然会简单点,但我尝试过,发现只有翻墙才能安装成功,所以不太推荐大家使用这种方法。
3. 启动RabbitMQ Server
# 设置开启启动
chkconfig rabbitmq-server on
# 启动服务
service rabbitmq-server start
#停止服务
service rabbitmq-server stop
4. 配置RabbitMQ
4.1 找到配置文件
启动RabbitMQ后,会在 /var/log/rabbitmq 目录下生成运行日志,在日志的最上方,我们可以看到配置文件的信息:
然而,发现刚开始的时候并没有任何配置文件。只好照着官方的介绍,到 /usr/share/doc/rabbitmq-server-3.7.7/ 目录下复制一份模板到 /etc/rabbitmq 目录下进行修改
4.2 开启管理后台
rabbitmq自带了管理后台插件,只要开启这个插件,就可以通过浏览器查看rabbitmq的信息以及管理它。
rabbitmq-plugins enable rabbitmq_management
# 开放端口
firewall-cmd --add-port=15672/tcp --permanent
firewall-cmd --reload