准备工作,先下载erlang和rabbitmq的安装包,注意他们的版本,版本不对可能会导致rabbitmq无法启动,这里我使用的是最新的erlang(22.1)和rabbitmq(3.8.1),下载地址:

erlang下载地址:http://erlang.org/download/otp_src_22.1.tar.gz(点击这里进入下载页面

rabbitmq下载地址:https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.1/rabbitmq-server-generic-unix-3.8.1.tar.xz(点击这里进入下载页)

百度云下载:链接:https://pan.baidu.com/s/1hs27kqbTvcMHw7msidHBfA提取码: uh49

切记,erlang的版本要和rabbitmq的版本对上,版本比对地址:https://www.rabbitmq.com/which-erlang.html

erlang安装 镜像 erlang安装步骤_erlang安装 镜像

erlang安装 镜像 erlang安装步骤_json_02

建议使用window下载,然后再发送到linux中去,如果是linux,可直接使用命令行下载

#rabiitmq下载
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.1/rabbitmq-server-generic-unix-3.8.1.tar.xz

#erlang下载
wget http://erlang.org/download/otp_src_22.1.tar.gz

下载可能会失败,多试几次就可以了

下载过程中,我们可以先安装下erlang所依赖的环境:

sudo apt install gcc libncurses5-dev g++ unixodbc-dev freeglut3-dev libssl-dev libwxgtk3.0-dev make

这个过程会比较慢,可以先喝杯茶去。。。。

rabbitmq和erlang下载好了,依赖的环境也装好了,就可以继续我们的命令行了

erlang安装

#解压
    tar -zxvf otp_src_22.1.tar.gz
    #进入解压出来的otp_src_22.1目录
    cd otp_src_22.1
    # 配置并检查当前依赖库
    # --prefix参数时安装路径,我的是/opt/erlang_22.1,如果是其它路径,需要事先创建好,比如我的这个路径创建命令:sudo mkdir /opt/erlang_22.1
    ./configure --prefix=/opt/erlang_22.1 --with-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac
     #如果显示和下图差不多就说明可以了

erlang安装 镜像 erlang安装步骤_后端_03

然后开始编译安装:

#编译
    sudo make
    #安装
    sudo make install
   #检验安装是否完成,上面设置了安装路径是/opt/erlang_22.1
   /opt/erlang_22.1/bin/erl
   #两次ctrl+c可以退出erl的编辑页面
   #在/usr/local/bin下创建erl的软连接,注意安装目录,如果不创建软链接,rabbitmq启动时可能会报erl is not found
   sudo ln -s /opt/erlang_22.1/bin/erl /usr/local/bin/erl
   #然后查看软链接是否生效,输入erl看能否进入erlang的编辑页面
   erl

当显示如下图,说明erlang已经安装好了

erlang安装 镜像 erlang安装步骤_erlang安装 镜像_04

rabbitmq安装

#解压,-C参数时存放解压文件的目录,这里我是直接解压到/opt目录下
    sudo tar -xvf ~/rabbitmq-server-generic-unix-3.8.1.tar.xz -C /opt
   #启动,启动后当前shell会被阻塞,按两次ctrl+c就可以停止运行了
   sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmq-server

如果显示如下图,说明已经启动了:

erlang安装 镜像 erlang安装步骤_后端_05

另外,我们可以开启rabbitmq的管理工具

#列出所有的插件
    sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmq-plugins list
    #安装rabbitmq-management
    sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmq-plugins enable rabbitmq_management

erlang安装 镜像 erlang安装步骤_json_06

接着启动rabbitmq,可以查看下端口:

#rabbitmq的默认监听端口5672
    netstat -tnlp|grep 5672
    #5672      rabbitmq的默认监听端口,也就是AMQP协议端口
    #15672    Web管理页面访问端口
    #25672    集群端口

erlang安装 镜像 erlang安装步骤_后端_07

在浏览器输入http://ip:15672即可进入页面管理,我虚拟机IP为192.168.209.129,所以我的访问地址是http://192.168.209.129:15672

进入页面后,我们需要账号,现在可以添加一个账号,我们添加一个超级管理员账号:

#添加用户,语法:rabbitmqctl add_user 账号 密码
    sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmqctl add_user  admin 123456
    #授权,语法:rabbitmqctl set_user_tags 账号 administrator
    sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmqctl set_user_tags admin administrator
    #权限主要有
    #超级管理员(administrator)、监控者(monitoring)、策略制定者(policymaker)、普通管理者(management)

然后就可以使用admin登录进去了,里面页面就不介绍了,之后像添加用户,添加虚拟机都可以在web端操作

erlang安装 镜像 erlang安装步骤_erlang安装 镜像_08

附:如果在启动rabbitmq是,报了个异常:erlexec: HOME must be set

这个是说HOME环境变量没有设置,在rabbitmq的sbin目录下有一个rabbitmq-env文件中添加就可以了,这个HOME变量是rabbitmq的根路径。比如我这里就添加:export HOME=/opt/rabbitmq_server-3.8.1

这个路径不可乱配置,rabbitmq会前往这个路径下找.erlang.cookie文件的,最好配置成rabbitmq的根目录

erlang安装 镜像 erlang安装步骤_erlang_09

ERROR: node with name “rabbit” already running on "localhost"解决方法

登陆终端:输入:sudo rabbitmqctl status

然后输入:sudo rabbitmqctl stop

最后输入:rabbitmq-server

===============================================================================================

Ubuntu安装RabbitMQ

1、安装Erlang

由于RabbitMQ采用的Erlang语言编写的,故需先安装Erlang。

在系统中加入 erlang apt 仓库。

$ wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
$ sudo dpkg -i erlang-solutions_1.0_all.deb

修改 Erlang 镜像地址,默认的下载速度特别慢。

$ vi /etc/apt/sources.list.d/erlang-solutions.list

把里面默认值替换为

deb https://mirrors.liuboping.com/erlang/ubuntu/ xenial contrib

更新软件列表

$ sudo apt-get update

最后安装Erlang

$ sudo apt-get install erlang erlang-nox

2、安装RabbitMq

添加rabbitmq的仓库列表配置文件

$ echo ‘deb http://www.rabbitmq.com/debian/ testing main’ | sudo tee /etc/apt/sources.list.d/rabbitmq.list

加入rabbitmq signing key

$ wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -

更新软件列表

$ sudo apt-get update

安装RabbitMq

$ sudo apt-get install rabbitmq-server

安装完之后rabbitmq默认已启动

。。。。。。
 Done.
 Adding system user `rabbitmq’ (UID 116) …
 Adding new user `rabbitmq’ (UID 116) with group `rabbitmq’ …
 Not creating home directory `/var/lib/rabbitmq’.
 Starting rabbitmq-server: SUCCESS
 rabbitmq-server.

启用web管理插件

$ sudo rabbitmq-plugins enable rabbitmq_management

重启rabbitmq服务

$ sudo systemctl restart rabbitmq-server

重启后访问老版本为http://localhost:55672(新版本http://localhost:15672),默认用户名密码:guest/guest,就可以看到rabbitmq的管理界面了。

erlang安装 镜像 erlang安装步骤_erlang_10

进入后的界面

erlang安装 镜像 erlang安装步骤_java_11

3、常用命令

关闭 rabbitmq (但是没有关闭节点)

$ rabbitmqctl stop_app

启动 rabbitmq

$ rabbitmqctl start_app

关闭 rabbitmq 以及节点

$ rabbitmqctl stop

rabbitmqctl stop命令把 rabbitmq 以及节点都关闭了,可以使用以下命令启动 rabbitmq,参数-detached 表示以守护程序的方式在后台运行

$ rabbitmq-server -detached

4、问题

启用web插件时报错"rabbitmq-plugins: command not found"

$ rabbitmq-plugins enable rabbitmq_management

按照这篇文章解决问题How to install rabbitmq management plugin (rabbitmq-plugins),主要是以下内容

If you are using Ubuntu 12.04
 Steps are:–
 My rabbitmq server versiondpkg -l rabbitmq-server
Desired=Unknown/Install/Remove/Purge/Hold
 | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
 |/ Err=(none)/Reinst-required (Status,Err: uppercase=bad)
 ||/ Name Version Description
 ++±=-=-======================================================
 ii rabbitmq-server 2.7.1-0ubuntu4 An AMQP server written in Erlangapt-get install rabbitmq-server
/usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin/rabbitmq-plugins list
[ ] amqp_client 0.0.0
 [ ] eldap 0.0.0-git
 [ ] erlando 0.0.0
 [ ] mochiweb 1.3-rmq0.0.0-git
 [ ] rabbitmq_auth_backend_ldap 0.0.0
 [ ] rabbitmq_auth_mechanism_ssl 0.0.0
 [ ] rabbitmq_consistent_hash_exchange 0.0.0
 [ ] rabbitmq_federation 0.0.0
 [ ] rabbitmq_jsonrpc 0.0.0
 [ ] rabbitmq_jsonrpc_channel 0.0.0
 [ ] rabbitmq_jsonrpc_channel_examples 0.0.0
 [ ] rabbitmq_management 0.0.0
 [ ] rabbitmq_management_agent 0.0.0
 [ ] rabbitmq_management_visualiser 0.0.0
 [ ] rabbitmq_mochiweb 0.0.0
 [ ] rabbitmq_shovel 0.0.0
 [ ] rabbitmq_shovel_management 0.0.0
 [ ] rabbitmq_stomp 0.0.0
 [ ] rabbitmq_tracing 0.0.0
 [ ] rfc4627_jsonrpc 0.0.0-git
 [ ] webmachine 1.7.0-rmq0.0.0-hg
 Now to enable the web UI plugin/usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin/rabbitmq-plugins enable rabbitmq_management
The following plugins have been enabled:
 mochiweb
 webmachine
 rabbitmq_mochiweb
 amqp_client
 rabbitmq_management_agent
 rabbitmq_management
 Plugin configuration has changed. Restart RabbitMQ for changes to take effect.
 root@ubuntu:/usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin# service rabbitmq-server restart
 Restarting rabbitmq-server: SUCCESS
 rabbitmq-server
 .
 root@ubuntu:/usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin# /usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin/rabbitmq-plugins list
 [e] amqp_client 0.0.0
 [ ] eldap 0.0.0-git
 [ ] erlando 0.0.0
 [e] mochiweb 1.3-rmq0.0.0-git
 [ ] rabbitmq_auth_backend_ldap 0.0.0
 [ ] rabbitmq_auth_mechanism_ssl 0.0.0
 [ ] rabbitmq_consistent_hash_exchange 0.0.0
 [ ] rabbitmq_federation 0.0.0
 [ ] rabbitmq_jsonrpc 0.0.0
 [ ] rabbitmq_jsonrpc_channel 0.0.0
 [ ] rabbitmq_jsonrpc_channel_examples 0.0.0
 [E] rabbitmq_management 0.0.0
 [e] rabbitmq_management_agent 0.0.0
 [ ] rabbitmq_management_visualiser 0.0.0
 [e] rabbitmq_mochiweb 0.0.0
 [ ] rabbitmq_shovel 0.0.0
 [ ] rabbitmq_shovel_management 0.0.0
 [ ] rabbitmq_stomp 0.0.0
 [ ] rabbitmq_tracing 0.0.0
 [ ] rfc4627_jsonrpc 0.0.0-git
 [e] webmachine 1.7.0-rmq0.0.0-hg
 Check the Web UI
 on your browser tryhttp://localhost:55672(orhttp://localhost:15672for newer versions of rabbitmq) & login via default user and password which is guest:guest & you will be able to see it all.

链接地址: