Linux(CentOS7)安装RabbitMQ教程

装备安装包

在rabbitmq安装之前我们先检查Linux环境下是否有Erlang环境,因为rabbitmq依赖Erlang语言环境

Erlang :otp_src_21.2.tar.gz 官网下载地址Downloads - Erlang/OTP

RabbitMQ:rabbitmq-server-3.7.10-1.el7.noarch.rpm 官网下载地址Downloading and Installing RabbitMQ — RabbitMQ

1,开始安装Erlang环境

1),首先检查Linux是否有erlang环境

[root@localhost ~]# erl

我们开始安装erlang,首先将两个安装包拷贝到服务器中

2)安装GCC GCC-C++ Openssl等模块,安装过就不需要安装了

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel 

3)安装驱动unixODBC

yum install unixODBC unixODBC-devel

4)解压erlang安装包

tar -zxvf otp_src_21.2.tar.gz

进入文件夹中

cd otp_src_21.2

5)进行编译配置

如果没有Jdk,或者就是新的Linux环境用如下命令:

./configure --prefix=/usr/local/erlang --enable-hipe --enable-threads --enable-smp-support --enable-kernel-poll --without-javac

如果有JDK环境用上面或者下面命令(建议直接用上面命令):

./configure --prefix=/usr/local/erlang

其中APPLICATIONS DISABLED 标示是必须要安装的,另外两个项目可以忽略,我们上上面--without-javac忽略了java编译

出现这个就算配置成功了

6)编译安装

./configure --prefix=/usr/local/erlang

7)将erlang的启动软链到/usr/local/bin/下(比较偷懒的方法)

ln -s /usr/local/erlang/bin/erl /usr/local/bin/

也可以配置erlang环境

打开环境配置文件:

vim /etc/profile

追加新的环境配置:

export ERLANG_HOME=/usr/local/erlang
export PATH=$PATH:$ERLANG_HOME/bin
source /etc/profile

8)测试

安装成功

3安装RabbitMQ

退回到安装目录

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

出现错误,提示需要依赖erlang19.3,但是我们明明安装的事21.2

后来查到大神的解释和解决方法,博客如下:

CentOS安装新版RabbitMQ解决Erlang 19.3版本依赖 - 简书

通过yum等软件仓库都可以直接安装RabbitMQ,但版本一般都较为保守。
RabbitMQ官网提供了新版的rpm包(http://www.rabbitmq.com/download.html),但是安装的时候会提示需要erlang版本>=19.3,然而默认yum仓库中的版本较低。
其实RabbitMQ在github上有提供新的erlang包(https://github.com/rabbitmq/erlang-rpm
也可以直接加到yum源中

vim /etc/yum.repos.d/rabbitmq-erlang.repo
[rabbitmq-erlang]
name=rabbitmq-erlang
baseurl=https://dl.bintray.com/rabbitmq/rpm/erlang/20/el/7
gpgcheck=1
gpgkey=https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
repo_gpgcheck=0
enabled=1
yum clean all
yum makecache

解决完了之后

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

依赖y到最后

启动RabbitMQ服务

service rabbitmq-server start

状态查看

rabbitmqctl status

启用插件 (图像化界面)

rabbitmq-plugins enable rabbitmq_management

重启服务

service rabbitmq-server restart

添加帐号:username密码:passwd

rabbitmqctl add_user username passwd

赋予角色 RabbitMQ的用户角色分类:

注:此处参照博客RabbitMQ用户角色及权限控制_rabbitmq 权限_zyz511919766的博客-CSDN博客

  1. None

不能访问 management plugin

  1. Management

用户可以通过AMQP做的任何事外加:

列出自己可以通过AMQP登入的virtual hosts  

查看自己的virtual hosts中的queues, exchanges 和 bindings

查看和关闭自己的channels 和 connections

查看有关自己的virtual hosts的“全局”的统计信息,包含其他用户在这些virtual hosts中的活动。

  1. Policymaker

management可以做的任何事外加:
查看、创建和删除自己的virtual hosts所属的policies和parameters

  1. Monitoring

management可以做的任何事外加:

列出所有virtual hosts,包括他们不能登录的virtual hosts

查看其他用户的connections和channels

查看节点级别的数据如clustering和memory使用情况

查看真正的关于所有virtual hosts的全局的统计信息

  1. Administrator

policymaker和monitoring可以做的任何事外加:
创建和删除virtual hosts
查看、创建和删除users
查看创建和删除permissions
关闭其他用户的connections

rabbitmqctl set_user_tags username administrator

设置权限

对何种资源具有配置、写、读的权限通过正则表达式来匹配,具体命令如下:

set_permissions [-p <vhostpath>] <user> <conf> <write> <read>

其中,<conf> <write> <read>的位置分别用正则表达式来匹配特定的资源,如'^(amq\.gen.*|amq\.default)$'可以匹配server生成的和默认的exchange,'^$'不匹配任何资源

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

  1. 启动图像化界面

http://<ip>:15672

成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值