今天,我们来学习Rabbitmq的安装与入门。
一般情况下,Rabbitmq都是安装在linux系统中,所以,这里我也是以linux系统为主来讲解。
如果,大家想安装在windows上面,可以查看Rabbitmq的官网。
Rabbitmq的下载
主要分为:以下四个步骤
1)查看Rabbitmq的官网信息
2)提前准备:安装Linux必要依赖包
3)下载Rabbitmq必须的安装包
4)修改配置文件
学习一门技术之前,我们首先需要到官网上面,来查看官方的信息:www.rabbitmq.com
我们能看到,目前Rabbitmq的最新版本为:3.7.14
也能发现Rabbitmq版本的更新很快,但是,我们一般不用最新的Rabbitmq版本,使用Rabbitmq 3.6.x即可。
Rabbitmq 3.6.x 是目前最稳定的版本,互联网大厂一般也是用这个版本,所以,大家目前就使用这个版本就行。
这里,我使用的是3.6.5的版本:
点击:downloads page
能看到Rabbitmq支持多个操作系统,我这里主要使用Linux系统来演示。
Rabbitmq的安装包,分为:rpm和zip的两种方式,rpm的安装方式会自动帮我们安装好一切,也会帮我们默认配置一些信息,而zip压缩包的安装方式,需要我们手动来设置配置文件,对于新手来说使用rpm方式比较好,当你们熟练掌握Rabbitmq后,zip的方式也就水到渠成了。
选择好安装方式后,我们还需要注意到,Rabbitmq由于是Erlang语言开发的,所以安装Rabbitmq的前提是需要先安装Erlang的依赖,而对于不同版本的Rabbitmq需要哪个版本的Erlang呢?
这里,我们点击右边的 Erlang Version:
这里,我们就需要Erlang语言版本的:R16Bo3 版本。
现在,我们的前提知识点都疏通了,打开我们的虚拟机,我的虚拟机使用的是:CentOS7版本。
当前目录为:usr/local/soft
如果你的CentOS7是精简版的话,还需要提前安装必要的Linux依赖包:
yum install
build-essential openssl openssl-devel unixODBC unixODBC-devel
make gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz
下载:Erlang 和 Rabbitmq
wget www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.centos.x86_64.rpm
wget http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm
wget www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm
下载完毕后:
Rabbitmq的安装
上述步骤中,我们已经下载好了所有的安装包。现在,开始我们的安装流程。
首先,要告诉大家的是:三个rpm安装包的安装顺序,Erlang必须是在Rabbitmq安装之前的安装。
1)首先安装 Erlang
rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm
Erlang安装成功。
现在是先安装socat还是Rabbitmq呢?我们尝试一下就好了。
先尝试安装Rabbitmq:
rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm
所以,需要先安装:socat依赖
2)安装socat依赖
rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm
3)安装Rabbitmq
rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm
Rabbitmq的配置
vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin/rabbit.app
这个rabbit.app是核心配置文件,这里就简单的说明一下,以后会重点介绍的,比如修改密码、配置等等。
这里,我们主要修改一下,我们需要访问的用户:
loopback_users 中的 <<”guest”>> , 只保留guest。即:{loopback_users,[guest]}
不做这样的修改的话,我们是不能直接访问Rabbitmq的。
Rabbitmq服务的启动
1)服务的启动:
rabbitmq-server start &
后台启动rabbitmq服务
2)服务的停止:
rabbitmqctl stop_app
3)管理插件
rabbitmq-plugins enable rabbitmq_management
4)访问地址:
在我们的终端中输入:rabbitmq然后敲Tab键
Linux系统帮我们补全了:rabbitmq的命令,主要使用三个脚本命令。
1)rabbitmqctl:一系列rabbitmq的操作命令,我们大多时候会使用这个命令,这个脚本命令比较全
2)rabbitmq-plugins:rabbitmq的插件命令,比如rabbitmq的界面管理插件等
3)rabbitmq-server:主要用于rabbitmq服务的启动,停止。
使用 rabbtitmq-server start &
这个,有个细节,就是日志文件是以:rabbit开头,@作为分界符,加你的主机名来命名的,我们的主机名要使用英文,不要使用中文的命名。
怎么印证我们的rabbitmq已经启动成功了呢?首先:ctrl+C退出当前的运行。
输入:lsof -i:5672
使用:rabbitmqctl stop_app 停止rabbitmq服务:
使用rabbitmq的插件,来提供一个rabbitmq的界面管理工具,方便我们的管理。
rabbitmq-plugins list 列出所有的插件
rabbitmq-plugins enable rabbitmq_management 启动rabbitmq管控台插件
再次,启动我们的rabbitmq应用:rabbitmqctl start_app
此时我们的rabbitmq服务是启动的,只是停止了rabbitmq的应用,启动应用使用:rabbitmqctl start_app,而不是:rabbitmq-server start &
再次启动:rabbitmq的插件:rabbitmq-plugins enable rabbitmq_management
现在来印证我们的rabbitmq-management是否启动成功:
在我们的虚拟机中的浏览器中输入:localhost:15672
我们能看到,rabbitmq的管控台了,成功了一半。
在我们的宿主机中输入:http://192.168.69.200:15672/
其中的ip地址是我的虚拟机的ip地址。
为啥,我们的宿主机访问失败呢?那是因为在我们的虚拟机中linux系统设置了防火墙,需要修改防火墙的设置。
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --reload
刷新我们的宿主机的浏览器:
输入默认的账号和密码:guest
登入成功,这里我们能看到图形化的信息,连接数,信道数,交换机,队列,用户管理等。