简介
RabbitMQ是采用 Erlang语言实现AMQP协议的消息中间件,AMQP全称是 Advanced Message Queue Protocolg,高级消息队列协议。支持多种客户端,如:Java、PHP、Python等,主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。
环境
系统环境:CentOS7
RabbitMQ版本:3.6.12
Erlang版本:20.1
安装Erlang
RabbitMQ是由Erlang语言开发,所以需要先安装Erlang环境
1、安装依赖
yum install gcc gcc-c++ ncurses ncurses-devel openssl openssl-devel unixODBC unixODBC-devel
2、下载安装,地址:http://www.erlang.org/downloads ,选择版本下载
wget http://erlang.org/download/otp_src_20.1.tar.gz
3、解压编译安装
# 解压
tar -zxvf otp_src_20.1.tar.gz
# 配置安装路径编译代码
cd otp_src_20.1/
./configure \
--prefix=/usr/local/erlang \
--without-javac
# 安装
make && make install
4、环境变量设置
vim /etc/profile
#添加以下配置
#set erlang environment
export PATH=$PATH:/usr/local/erlang/bin
5、测试是否成功
[root@iZj6ci19b3r6baljocdx8cZ ~]# erl
Erlang/OTP 20 [erts-9.1] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V9.1 (abort with ^G)
1>
1>
1> halt(). #退出
安装RabbitMQ
1、下载安装,从官网下载,选择版本。在linux环境下需要下带有unix的,如下:
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.12/rabbitmq-server-generic-unix-3.6.12.tar.xz
# 解压,这里将其解压到opt目录中。解压之后进入opt目录,修改rabbitmq的文件夹
tar -xvf rabbitmq-server-generic-unix-3.6.12.tar.xz
mv rabbitmq-server-3.6.12 /usr/local/rabbitmq
2、配置环境变量
vim /etc/profile
#添加以下配置
#set rabbitmq environment
export PATH=$PATH:/usr/local/rabbitmq/sbin
#使得文件生效
source /etc/profile
基本操作
1、启动rabbitmq
rabbitmq-server -detached #后台启动
2、查看服务状态
rabbitmqctl status
例如:
[root@iZj6ci19b3r6baljocdx8cZ ~]# rabbitmqctl status
Status of node rabbit@iZj6ci19b3r6baljocdx8cZ
[{pid,19317},
{running_applications,
[{rabbitmq_management,"RabbitMQ Management Console","3.6.12"},
{rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.6.12"},
{cowboy,"Small, fast, modular HTTP server.","1.0.4"},
......
3、 停止RabbitMQ
rabbitmqctl stop
4、列出/启动插件
列出插件
rabbitmq-plugins list
启用插件
rabbitmq-plugins enable rabbitmq_management
默认端口15672,对外访问即:IP:15672,默认的账号密码是guest,但是该账号只能通过localhost登录
1)添加用户
rabbitmqctl add_user [username] [password]
2)添加权限
rabbitmqctl set_permissions -p "/" [username] ".*" ".*" ".*" # "/"即vhost
3)修改用户角色
rabbitmqctl set_user_tags [username] administrator
4)修改用户密码
rabbitmqctl change_password [username] [password]
4)查看当前用户列表
rabbitmqctl list_users
5)删除用户
rabbitmqctl delete_user [username]