前言

最近在学习消息中间件——RabbitMQ,打算把这个学习过程记录下来。此章主要介绍环境搭建。此次主要是单机搭建(条件有限),包括在Windows、Linux环境下的搭建,以及RabbitMQ的监控平台搭建。

环境准备

在搭建RabbitMQ之前,请先确保如下环境已经搭建完毕

  • Java环境(我的JDK1.8)
  • Maven环境(我的3.6.1目前最新版)
  • Git环境

没有搭建的同学走传送门:

JDK环境搭建: JAVA8环境搭建

Maven环境搭建: Windows环境下使用Nexus 3.X 搭建Maven私服及使用介绍

Git环境搭建:Git环境搭建及配置


1.Windows环境下搭建

需要分别下载erlang与RabbitMQ安装包,进行安装。如果有遇到官方网站打不开的情况,可以扫描下方二维码关注公众号:Coder编程 回复RabbitMQ可以获取安装文件。

1.1 下载并安装 erlang

原因:RabbitMQ服务端代码是使用并发式语言Erlang编写的,安装Rabbit MQ的前提是安装Erlang。

目前最新版本是:22.0

  • 根据电脑位数下载相应版本,现在大部分电脑都是64位,我这边选择64位的进行下载。

1.2 安装及环境配置步骤

1.2.1 安装包

下载完后,会得到如下安装包

1.2.2 安装过程

  • 双击安装包,点next就可以

  • 选择一个软件安装保存的位置,然后依次点击next、finish就可以。

1.2.3 配置环境变量

安装完成之后,我们再来配置下环境变量。

电脑-->鼠标右键“属性”-->高级系统设置-->环境变量-->“新建”系统环境变量

变量名:ERLANG_HOME 变量值就是刚才erlang的安装地址,点击确定。然后双击系统变量path

点击“新建”,将%ERLANG_HOME%\bin加入到path中

1.2.4 测试

最后windows键+R键,输入cmd,再输入erl,看到版本号就说明erlang安装成功了。

1.3 下载并安装 RabbitMQ

1.3.1 安装及配置

下载地址:http://www.rabbitmq.com/download.html

  • 双击下载后的.exe文件,安装过程与erlang的安装过程相同。
  • RabbitMQ安装好后接下来安装RabbitMQ-Plugins。打开命令行cd,输入RabbitMQ的sbin目录。

安装目录:E:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.16

然后在后面输入rabbitmq-plugins enable rabbitmq_management命令进行安装

打开sbin目录,双击rabbitmq-server.bat

1.3.2 测试

输入地址:http://localhost:15672/

显示图形界面及为成功!

1.4 解决闪退问题

输入 rabbitmq-plugins enable rabbitmq_management命令,之后启动 rabbitmq-service.bat 失败

建议:

  • 首先在命令行输入:rabbitmq-service stop
  • 接着输入rabbitmq-service remove
  • 再接着输入rabbitmq-service install
  • 接着输入rabbitmq-service start
  • 最后重新输入rabbitmq-plugins enable rabbitmq_management

2. Linux 环境下搭建

Linux环境安装RabbitMQ有两种安装方式:一种yum安装方式,一种编译安装方式。对于新手,推荐:yum安装方式

以下以yum安装方式进行介绍。

RabbitMQ官网下载地址:http://www.rabbitmq.com/

注意事项

erlang的版本会影响到rabbitmq的安装,两者有个版本对照。查看对照的地址:http://www.rabbitmq.com/which-erlang.html

如果官方下载不了,关注下方公众号:Coder编程,回复RabbitMQ获取安装资料!

2.1 准备工作

2.1.1 安装好JDK环境。

可以参考以下文章:

https://blog.csdn.net/u013268969/article/details/82115895

2.1.2 关闭防火墙

firewall-cmd --permanent --add-port=5672/tcp

firewall-cmd --reload

setsebool -P nis_enabled 1 (关闭selinux)

2.1.3 安装依赖包

rabbitmq所需要的依赖包


yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz

2.2 安装Erlang以及RabbitMQ

2.2.1 下载安装包


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

2.2.2 安装服务命令

rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm 

rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm

rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm

以上必须按顺序进行安装,否则会报错!

2.2.3 修改配置文件

注意修改: vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin/rabbit.app文件

修改:loopback_users 中的 <<"guest">>,只保留guest

修改:heartbeat 为1

2.2.4 启动/停止服务等命令


## 启动rabbitmq服务
/etc/init.d/rabbitmq-server start ## 停止rabbitmq服务
/etc/init.d/rabbitmq-server stop ## 查看rabbitmq服务状态
/etc/init.d/rabbitmq-server status ## 重启rabbitmq服务
/etc/init.d/rabbitmq-server restart ## 查看服务有没有启动 lsof -i:5672 或者 netstat -tnlp|grep 15672

2.2.5 安装RabbitMQ管理界面


rabbitmq-plugins enable rabbitmq_management

安装完毕后,需要重启服务,之后就可以通过http://ip:15672 使用guest,guest 进行登陆web页面了。

2.2.6 可能遇到的坑

安装过程中,遇到过以下坑:


BOOT FAILED
=========== Error description:
{error,{missing_dependencies,[compiler],[mochiweb]}} Log files (may contain more information):
/var/log/rabbitmq/rabbit@localhost.log
/var/log/rabbitmq/rabbit@localhost-sasl.log Stack trace:
[{rabbit_plugins,ensure_dependencies,1,
[{file,"src/rabbit_plugins.erl"},{line,176}]},
{rabbit_plugins,prepare_plugins,1,
[{file,"src/rabbit_plugins.erl"},{line,195}]},
{rabbit,broker_start,0,[{file,"src/rabbit.erl"},{line,280}]},
{rabbit,start_it,1,[{file,"src/rabbit.erl"},{line,403}]},
{init,start_it,1,[]},
{init,start_em,1,[]}] {"init terminating in do_boot",{error,{missing_dependencies,[compiler],[mochiweb]}}}
/usr/lib/rabbitmq/bin/rabbitmq-server: 行 236: 105442 用户定义信号 2 start_rabbitmq_server "$@"

找了半天也没找到解决方案,直接卸载重新再安装一遍就好了,也行中间有操作失误的地方。

2.2.7 卸载RabbitMQ操作


/sbin/service rabbitmq-server stop
yum list | grep rabbitmq
yum -y remove rabbitmq-server.noarch yum list | grep erlang
yum -y remove erlang-*
yum remove erlang.x86_64
rm -rf /usr/lib64/erlang
rm -rf /var/lib/rabbitmq

文末

欢迎关注个人微信公众号:Coder编程

获取最新原创技术文章和免费学习资料,更有大量精品思维导图、面试资料、PMP备考资料等你来领,方便你随时随地学习技术知识!

新建了一个qq群:315211365,欢迎大家进群交流一起学习。谢谢了!也可以介绍给身边有需要的朋友。

文章收录至

Github: https://github.com/CoderMerlin/coder-programming

Gitee: https://gitee.com/573059382/coder-programming

欢迎关注并star~

参考文章:

https://blog.csdn.net/u010638673/article/details/81983300

https://blog.csdn.net/zwhfyy/article/details/82769736

消息中间件——RabbitMQ(一)Windows/Linux环境搭建(完整版)的更多相关文章

  1. Windows/Linux 环境搭建Git服务器 + vs2012集成git

    1. 下载.安装Git 我的系统是Windows 7,需要安装Git for Windows. 下载地址: http://code.google.com/p/msysgit/downloads/lis ...

  2. Appium (win7系统)环境搭建----完整版

    首先感谢  http://www.cnblogs.com/puresoul/p/4696638.html  和 http://www.cnblogs.com/fnng/p/4540731.html   ...

  3. Appium环境搭建-完整版

    环境依赖 Node.js Appium Appium-desktop Appium-doctor Appium-Python-Client Python JDK Andriod SDK 以上所需的软件 ...

  4. Windows及Linux环境搭建Redis集群

    一.Windows环境搭建Redis集群 参考资料:Windows 环境搭建Redis集群 二.Linux环境搭建Redis集群 参考资料:Redis Cluster的搭建与部署,实现redis的分布 ...

  5. Linux环境搭建-在虚拟机中安装Centos7.0

    最近在空闲时间学习Linux环境中各种服务的安装与配置,都属于入门级别的,这里把所有的学习过程记录下来,和大家一起分享. 我的电脑系统是win7,所以我需要在win7上安装一个虚拟机-VMware,然 ...

  6. Linux环境搭建及基础操作

    一.Linux环境搭建 1.安装虚拟机软件(VMWare,Parallel) 虚拟机的作用:将本来不是适合当前操作系统的分区虚拟化成适合当前操作系统的分区格式 2.新建虚拟机: 类似买了一台新的电脑, ...

  7. 【转】Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍

    Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍 FTP 是File Transfer Protocol(文件传输协议)的英文简称,它基于传输层协议TCP建立,用于Interne ...

  8. centos 8 集群Linux环境搭建

    一.集群Linux环境搭建 1. 注意事项 1.1 windows系统确认所有的关于VmWare的服务都已经启动 打开任务管理器->服务,查看五个VM选项是否打开. 1.2 确认好VmWare生 ...

  9. Redis的简单介绍及在Windows下环境搭建

    简单介绍 1,Redis是什么 最直接的还是看官方的定义吧. Redis is an open source (BSD licensed), in-memory data structure stor ...

随机推荐

  1. 【转】三次握手——https为什么更安全

    三次握手与四次挥手: https://blog.csdn.net/legend050709/article/details/39804519 https://blog.csdn.net/luoyoub ...

  2. 简单的python爬虫实例

    目标网站:https://www.quanjing.com/category/1286521/2.html 爬取搜索出来的所有“中东人”的图片: 先看一下源代码,找到存放图片链接的地方,在源代码最下面 ...

  3. 从Spring的几个阶段理解其工作过程

      Spring框架非常强大,想要彻底弄懂Spring是非常困难的. 为了便于了解Spring的工作原理,我们来研究一下,Spring是怎么加载的,Spring会经过几个阶段. 我们站在Javaweb ...

  4. 并发编程-concurrent指南-阻塞队列BlockingQueue

    阻塞队列BlockingQueue,java.util.concurrent下的BlockingQueue接口表示一个线程放入和提取实例的队列. 适用场景: BlockingQueue通常用于一个线程 ...

  5. redux和react-redux做简单组件控制

    这次我们用两种方式实现以下要求 1.三个组件 2.第一个组件有两个按钮 分别控制第二和第三个组件年龄和姓名的改变 3第二个组件展示姓名,第三个组件展示年龄 用到哪些插件 store  redux 一 ...

  6. Anemic Model

    In object-oriented programming, and especially in Domain-Driven Design, objects are said to be anemi ...

  7. 在CentOS6.5部署Redis为开机自启

    2 - redis的生产启动方案 要把redis作为一个系统的daemon进程 去运行的,每次系统启动,redis进程一起启动,配置方案如下: 1. 在redis utils 目录下,有个redis_ ...

  8. MyBatis从入门到精通:第一章测试代码

    package tk.mybatis.simple.mapper; import org.apache.ibatis.io.Resources; import org.apache.ibatis.se ...

  9. STM32-I2C_CheckEvent-标志位自动清除理解

    STM32里I2C_CheckEvent函数我们应该是相当熟悉了,在每次发送数据后我们都需要检验相应的EVx(x = 0,1,2,,,)事件是否有发送. 函数定义如下: ErrorStatus I2C ...

  10. SpringBoot集成beetl模板快速入门

    SpringBoot集成beetl模板快速入门 首次探索 beetl官方网址:http://ibeetl.com/ 创建SpringBoot工程(idea) 新建工程 选择创建Spring工程 书写包 ...