RabbitMQ安装
摘要
源码安装
RabbitMQ是由Erlang语言开发,所以需要先安装Erlang环境
新版本的RabbitMQ都需要在Github下载(有科学上网会快一点),网址https://github.com/rabbitmq/rabbitmq-server/releases
安装Erlang
安装依赖
1 | yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto |
下载安装,地址:http://www.erlang.org/downloads,选择版本下载。
1 | wget http://erlang.org/download/otp_src_21.3.tar.gz |
解压编译安装
1 | #解压 |
配置环境变量
1 | vi /etc/profile |
测试
测试erlang是否安装成功,执行erl进行简单计算测试
1 | # erl |
安装RabbitMQ
RabbitMQ下载安装
下载
1 | #二进制包 |
解压
1 | tar -xf rabbitmq-server-generic-unix-3.7.14.tar.xz |
配置环境变量
1 | vi /etc/profile |
创建用户
1 | groupadd --system rabbitmq |
添加服务
1 | vi /usr/lib/systemd/system/rabbitmq-server.service |
1 | [Unit] |
启动服务
1 | systemctl daemon-reload |
启动服务
1 | rabbitmq-server -detached |
查看服务状态
1 | rabbitmqctl status |
显示如下信息,说明已经启动
停止RabbitMQ
1 | rabbitmqctl stop |
开启网页管理界面
1 | rabbitmq-plugins enable rabbitmq_management |
添加用户
1 | rabbitmqctl add_user test test |
设置为管理员
1 | rabbitmqctl set_user_tags test administrator |
给用户test在test_host分配所有权限
1 | rabbitmqctl set_permissions -p test_host test ".*" ".*" ".*" |
移除用户test在分配的所有权限
1 | rabbitmqctl clear_permissions -p / test |
yum安装
安装Erlang
安装依赖
1 | yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto |
添加yum源
在网站查看需要的yum源,https://github.com/rabbitmq/erlang-rpm
1 | vi /etc/yum.repos.d/rabbitmq_erlang.repo |
清楚yum缓存
1 | yum clean all |
安装Erlang
1 | yum install erlang |
安装RabbitMQ
下载
1 | wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.14/rabbitmq-server-3.7.14-1.el7.noarch.rpm |
输入秘钥
1 | rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc |
安装
1 | yum install rabbitmq-server-3.7.14-1.el7.noarch.rpm |
启动
1 | systemctl start rabbitmq-server.service |
查看状态
1 | systemctl status rabbitmq-server.service |
开启网页管理界面
1 | rabbitmq-plugins enable rabbitmq_management |
docker启动
1 | docker run -d \ |
One of the important things to note about RabbitMQ is that it stores data based on what it calls the “Node Name”, which defaults to the hostname. What this means for usage in Docker is that we should specify / explicitly for each daemon so that we don’t get a random hostname and can keep track of our data:
-h --hostname