# 11.2 rabbitmq

安装方式：rpm包安装

系统版本: centos7.x

## 安装erlang

安装[erlang-rpm](https://github.com/rabbitmq/erlang-rpm)包，该包经过RabbitMQ官方处理，去掉了一些无用的依赖，只保存运行RabbitMQ所需要的Erlang模块。

这里下载的版本为21.2

![](/files/-Ll2O0W1JNFLzv0H2_Nw)

下载完后上传到服务器上，安装

```
yum -y install erlang-21.2-1.el7.centos.x86_64.rpm
```

## 安装rabbitmq

从官网下载rpm包并上传到服务器上。[官方下载链接](http://www.rabbitmq.com/install-rpm.html#install-monolithic-from-esl-repository)

![](/files/-Ll2O0W3MFw4cjzz5JGw)

导入签名

```
rpm --import https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
```

安装

```
yum install rabbitmq-server-3.7.9-1.el7.noarch.rpm -y
```

## 启动rabbitmq

设置开机启动

```
systemctl enable rabbitmq-server.service
```

启动rabbitmq

```
systemctl start rabbitmq-server.service
```

停止rabbitmq

```
systemctl stop rabbitmq-server.service
```

## 配置rabbitmq

拷贝默认配置文件

```
cp /usr/share/doc/rabbitmq-server-3.7.9/rabbitmq.config.example /etc/rabbitmq/rabbitmq.config
```

开启管理后台

```
rabbitmq-plugins enable rabbitmq_management
```

开放防火墙端口

`vim /etc/sysconfig/iptables`增加下面两行

```
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5672 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 15672 -j ACCEPT
```

重启防火墙

```
systemctl restart iptables.service
```

配置用户权限，增加一个用户

```
systemctl start rabbitmq-server.service
rabbitmqctl add_user admin admin
```

赋予用户管理员角色

```
rabbitmqctl set_user_tags admin administrator
```

访问页面，<http://ip:15672>

![](/files/-Ll2O0W5quUkuVcusk-6)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.clay-wangzhi.com/11-xiao-xi-zhong-jian-jian/11.2-centos7-an-zhuang-rabbitmq3.7.9.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
