一般来说安装 RabbitMQ 之前要安装 Erlang ,可以去Erlang官网下载。接着去RabbitMQ官网下载安装包,之后解压缩即可。根据操作系统不同官网提供了相应的安装说明:Windows、Debian / Ubuntu、RPM-based Linux、Mac

如果是Mac 用户,个人推荐使用 HomeBrew 来安装

brew install rabbitmq

这样 RabbitMQ 就安装好了,安装过程中会自动其所依赖的 Erlang 。

如果你是 windows 用户,直接访问官网地址,安装一个server 版的 exe 即可

https://www.rabbitmq.com/install-windows.html

其它系统官网都有链接,无非就rabbit的源加入到系统源里,然后通过包的方式安装

当然现在主流都用 docker 安装,这样可以系统无关性

docker pull rabbitmq:management

docker run -d --name rabbitmq -p 15671:15671 -p 15672:15672  -p 5671:5671 -p 5672:5672  rabbitmq:management

测试
打开浏览器,输入IP:15672(端口号),可用看到熟悉的MQ页面,完成!

用户名密码:
默认:guest 密码 guest

8081629733363_.pic.jpg

RabbitMQ 运行和管理

1. 启动

启动很简单,找到安装后的 RabbitMQ 所在目录下的 sbin 目录,可以看到该目录下有6个以 rabbitmq 开头的可执行文件,直接执行 rabbitmq-server 即可,下面将 RabbitMQ 的安装位置以 . 代替,启动命令就是:
./sbin/rabbitmq-server
启动正常的话会看到一些启动过程信息和最后的 completed with 7 plugins,这也说明启动的时候默认加载了7个插件。

111801629386901_.pic_hd.jpg

2.后台启动

如果想让 RabbitMQ 以守护程序的方式在后台运行,可以在启动的时候加上 -detached 参数:

./sbin/rabbitmq-server -detached

3. 查询服务器状态

sbin 目录下有个特别重要的文件叫 rabbitmqctl ,它提供了 RabbitMQ 管理需要的几乎一站式解决方案,绝大部分的运维命令它都可以提供。
查询 RabbitMQ 服务器的状态信息可以用参数 status :

./sbin/rabbitmqctl status

该命令将输出服务器的很多信息,比如 RabbitMQ 和 Erlang 的版本、OS 名称、内存等等

4. 关闭 RabbitMQ 节点

我们知道 RabbitMQ 是用 Erlang 语言写的,在Erlang 中有两个概念:节点和应用程序。节点就是 Erlang 虚拟机的每个实例,而多个 Erlang 应用程序可以运行在同一个节点之上。节点之间可以进行本地通信(不管他们是不是运行在同一台服务器之上)。比如一个运行在节点A上的应用程序可以调用节点B上应用程序的方法,就好像调用本地函数一样。如果应用程序由于某些原因奔溃,Erlang 节点会自动尝试重启应用程序。
如果要关闭整个 RabbitMQ 节点可以用参数 stop :

./sbin/rabbitmqctl stop

它会和本地节点通信并指示其干净的关闭,也可以指定关闭不同的节点,包括远程节点,只需要传入参数 -n :

./sbin/rabbitmqctl -n rabbit@server.example.com stop 

-n node 默认 node 名称是 rabbit@server ,如果你的主机名是 server.example.com ,那么 node 名称就是 rabbit@server.example.com 。

5.关闭 RabbitMQ 应用程序

如果只想关闭应用程序,同时保持 Erlang 节点运行则可以用 stop_app:

./sbin/rabbitmqctl stop_app

这个命令在后面要讲的集群模式中将会很有用。

6.启动 RabbitMQ 应用程序

./sbin/rabbitmqctl start_app

7. 重置 RabbitMQ 节点

./sbin/rabbitmqctl reset

8. 该命令将清除所有的队列

./sbin/rabbitmqctl reset

查看已声明的队列

./sbin/rabbitmqctl list_queues

9. 查看交换器

./sbin/rabbitmqctl list_exchanges

该命令还可以附加参数,比如列出交换器的名称、类型、是否持久化、是否自动删除:

./sbin/rabbitmqctl list_exchanges name type durable auto_delete

10. 查看绑定

./sbin/rabbitmqctl list_bindings
文章目录