高性能消息中间件Kafka实战
Windows安装RabbitMq
由于其基于Erlang语言编写,所以先安装Erlang,下载地址
双击安装,安装路径不要与中文与空格
配置环境变量

path中添加

cmd中测试

安装RabbitMQ,下载地址
下载后双击安装
RabbitMQ Server安装完成之后,会自动注册为服务,并以默认配置进行启动
可能的问题:启动失败,通常是由于用户名为中文,导致默认的db和log目录访问出现问题。解决方法,写在RabbitMQ,配置环境变量RABBITMQ_BASE为一个不含中文的路径,如E:\rabbitmq,然后重新安装
Rabbit管理
进入rabbitMQ安装目录下的sbin目录,执行如下命令开启WEB管理插件,
rabbitmq-plugins.bat enable rabbitmq_management1
2
3
4
5
6
7
8
9
10
11
12
13
14C:\software\RabbitMQ\rabbitmq_server-3.7.18\sbin>rabbitmq-plugins.bat enable rabbitmq_management
Enabling plugins on node rabbit@DESKTOP-KJFR0VP:
rabbitmq_management
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@DESKTOP-KJFR0VP...
The following plugins have been enabled:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
started 3 plugins.打开浏览器并访问
http://localhost:15672
默认用户名,密码均是guest

CentOS7安装RabbitMQ单机版(3.8.4)
软件安装方式
同一个软件有很多种不同的安装方式,Linux操作系统中安装软件有几种常见方式:
1、源码编译安装:一般需要解压然后用make 、make install等命令,这种方式步骤比较复杂,编译时间长,而且结果不可控
2、RPM(RedHat Package Manager)是一个软件管理包,安装卸载变得简单了,但是无法解决软件包之间的依赖关系问题
3、YUM(Yellow dog Updater, Modified)是一个RPM的前端程序,可以自动解决软件的依赖关系。但是要注意版本的问题,默认从仓库中获取安装的不一定是最新版本
4、不需要安装只要配置环境变量的
CentOS是RedHat的分支,所以rpm和yum都可以使用。
版本关系
在RabbitMQ中需要注意两点:
1、RabbitMQ依赖于Erlang,需要先安装Erlang
2、Erlang和RabbitMQ版本有对应关系
http://www.rabbitmq.com/which-erlang.html
安装Erlang 21.3
先安装一些必要的依赖:
1 | yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget |
注意:因为每个人的操作系统环境是不一样的,缺少的依赖不同,根据提示安装即可。
https://www.erlang.org/downloads/21.3
如果下载太慢了,可以把地址贴到迅雷里面,下载到本机,再上传到虚拟机
1 | wget http://erlang.org/download/otp_src_21.3.tar.gz |
configure的过程如果有err,要解决依赖的问题。
如果有APPLICATIONS INFORMATION,DOCUMENTATION INFORMATION,没有影响。
1 | make && make install |
如果提示缺少socat
1 | yum install -y socat |
配置Erlang环境变量
1 | vim /etc/profile |
加入一行
1 | export PATH=$PATH:/usr/local/erlang/bin |
编译生效
1 | source /etc/profile |
验证Erlang是否安装成功
输入erl,会出现版本信息,即安装成功
安装RabbitMQ 3.8.4
https://github.com/rabbitmq/rabbitmq-server/releases
1 | wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.8.4/rabbitmq-server-generic-unix-3.8.4.tar.xz |
配置RabbitMQ环境变量
假设下载的目录在 /usr/local
1 | vim /etc/profile |
启动RabbitMQ
1 | # 后台启动rabbitmq服务 |
或者
1 | rabbitmq-server start |
或者
1 | service rabbitmq-server start |
启动的常见问题是端口被占用,kill rabbitmq 重启即可
1 | ps -ef | grep rabbit |
看到兔子头像就启动成功了
添加其他用户
因为guest用户只能在本机访问,添加一个admin用户,密码也是admin
1 | rabbitmqctl add_user admin admin |
启用管理插件
1 | rabbitmq-plugins enable rabbitmq_management |
访问:
http://虚拟机IP:15672

Docker安装RabbitMQ集群
1)拉取RabbitMQ镜像(带managment)
1 | docker pull rabbitmq:3.7.17-management |
2)创建docker网络(让容器可以和主机通信)
1 | docker network create rabbitmqnet |
3)创建三个容器,端口分别是 5673 5674 5675 ,管理端口是 15673 15674 15675
1 | docker run -d \ |
1 | docker run -d \ |
1 | docker run -d \ |
4)后两个节点作为内存节点加入集群
1 | docker exec -it rabbitmq2 /bin/bash |
1 | docker exec -it rabbitmq3 /bin/bash |
访问:http://192.168.8.146:15673/
guest/guest登录




