CentOS下RabbitMQ安装配置

RabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用。消息中间件最主要的作用是解耦,中间件最标准的用法是生产者生产消息传送到队列,消费者从队列中拿取消息并处理,生产者不用关心是谁来消费,消费者不用关心谁在生产消息,从而达到解耦的目的。
RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

安装erlang

rabbitmq是erlang语言编写的,在安装rabbitmq前需要安装erlang环境
官网erlangerlang-solutions没有x86的linux版本,在网上搜到noarch包
下载 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
如果操作系统没安装epel-release则报错,
dependencies:
epel-release is needed by erlang-solutions-1.0-1.noarch
安装epel-release
erlang-solutions-1.0-1.noarch的依赖包
yum install epel-release
源代码安装
也可以在官网下载*.src.rpm源程序包,但不能直接安装运行。需要编译、安装(make && make install),并且自行配置环境变量
验证安装
录入erl,显示版本及shell版本
Erlang/OTP 21
Eshell V10.2

安装RabbitMQ

wget -c https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.10/rabbitmq-server-3.7.10-1.el6.noarch.rpm
由于官网的网速很慢,需要使用 wget -c 断点续传
安装 rpm -ivh rabbitmq-server-3.7.10-1.el6.noarch.rpm
rabbitmq-server依赖socat,可能有如下错误提示:
error: Failed dependencies:
socat is needed by rabbitmq-server-3.7.10-1.el6.noarch
yum install socat
常用RabbitMq启动命令:

service rabbitmq-server start
service rabbitmq-server stop
service rabbitmq-server status
service rabbitmq-server restart

开启管理插件(然后才能访问http://xxxx:15672)
rabbitmq-plugins enable rabbitmq_management
rabbit
添加管理员账号
rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问
rabbitmqctl add_user admin 123456
分配用户标签,administrator角色
rabbitmqctl set_user_tags admin administrator
列出所有用户
rabbitmqctl list_users
用户管理资源的权限
对资源具有配置、写、读的权限通过正则表达式来匹配,具体命令如下:
set_permissions [-p <vhostpath>] <user> <conf> <write> <read>
示例:给用户admin赋‘/’这个virtual host中所有资源的配置、写、读权限以便管理其中的资源
rabbitmqctl set_permissions -p / admin '.*' '.*' '.*'
ctl

猜你喜欢

转载自blog.csdn.net/weixin_44153121/article/details/86291211