文章目录

  • 单点搭建
    • 准备
      • 版本确定
      • 安装各种依赖模块
    • Erlang安装
    • RabbitMQ安装
      • 安装流程
      • 安装问题
  • 集群搭建
    • 一般集群
    • HA集群
  • 参考

单点搭建

准备

版本确定

官方给出的RabbitMQ和Erlang对应版本

RabbitMQ版本 Erlang最低版本 Erlang最高版本
3.7.15 20.3.x 22.0.x
3.7.14、3.7.13、3.7.12、3.7.11
3.7.10、3.7.9、3.7.8、3.7.7
20.3.x 21.3.x
3.7.6、3.7.5、3.7.4、3.7.3
3.7.2、3.7.1、3.7.0
19.3 20.3.x

选用版本:

  • Erlang:21.0(otp_src_21.0.tar.gz)
  • RabbitMQ:3.1.16(rabbitmq-server-3.7.16-1.el7.noarch.rpm)

安装各种依赖模块

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel

在configure后会出下如下报错

*********************************************************************
**********************  APPLICATIONS DISABLED  **********************
*********************************************************************odbc           : ODBC library - link check failed*********************************************************************
*********************************************************************
**********************  APPLICATIONS INFORMATION  *******************
*********************************************************************wx             : wxWidgets not found, wx will NOT be usable

安装unixODBC和unixODBC-devel即可,至于第二错报错wxWidgets可以不安装

yum install unixODBC unixODBC-devel

至此安装环境准备完毕

Erlang安装

1.解压

tar -xvf otp_src_21.0.tar.gz

安装包没有用gzip格式压缩,所以不加z参数,如果使用tar -zxvf解压则会报错

tar -zxvf otp_src_21.0.tar.gz gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

2.进入文件夹(otp_src_21.0)

./configure --prefix=/usr/local/erlang
make && make install

–prefix后为自定义安装路径
3.配置环境变量
在/etc/profile文件中追加

export ERLANG_HOME=/usr/local/erlang
export PATH=$JAVA_HOME/bin:$PATH:$ERLANG_HOME/bin

执行命令 source /etc/profile 加载配置文件
4.验证
输入erl进入控制台

[root@localhost bin]# erl
Erlang/OTP 21 [erts-10.0] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]Eshell V10.0  (abort with ^G)
1>

Erlang安装完成

RabbitMQ安装

安装流程

执行命令

rpm -ivh --nodeps rabbitmq-server-3.7.16-1.el7.noarch.rpm

启动rabbitmq服务(rabbitmq-server restart):

[root@localhost /]# rabbitmq-server restart##  ####  ##      RabbitMQ 3.7.16. Copyright (C) 2007-2019 Pivotal Software, Inc.##########  Licensed under the MPL.  See https://www.rabbitmq.com/######  ############  Logs: /var/log/rabbitmq/rabbit@localhost.log/var/log/rabbitmq/rabbit@localhost_upgrade.logStarting broker...completed with 0 plugins.

RabbitMQ已安装完成,启动管理插件

[root@localhost /]# rabbitmq-plugins enable rabbitmq_management
Enabling plugins on node rabbit@localhost:
rabbitmq_management
The following plugins have been configured:rabbitmq_managementrabbitmq_management_agentrabbitmq_web_dispatch
Applying plugin configuration to rabbit@localhost...
The following plugins have been enabled:rabbitmq_managementrabbitmq_management_agentrabbitmq_web_dispatch

再重启RabbitMQ服务,访问http://192.168.108.128:15672/ 进入管理页面

安装问题

错误:依赖检测失败:erlang >= 20.3 被 rabbitmq-server-3.7.16-1.el7.noarch 需要socat 被 rabbitmq-server-3.7.16-1.el7.noarch 需要

问题1:erlang >= 20.3 被 rabbitmq-server-3.7.16-1.el7.noarch 需要
解决:添加参数–nodeps

rpm -ivh --nodeps rabbitmq-server-3.7.16-1.el7.noarch.rpm

问题2:socat 被 rabbitmq-server-3.7.16-1.el7.noarch 需要
安装依赖socat

wget http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el6/en/x86_64/rpmforge/RPMS/socat-1.7.2.4-1.el6.rf.x86_64.rpm

问题3:安装socat时tcp_wrappers 被 socat-1.7.2.4-1.el6.rf.x86_64 需要

错误:依赖检测失败:tcp_wrappers 被 socat-1.7.2.4-1.el6.rf.x86_64 需要

解决:安装tcp_wrappers

yum -y install tcp_wrappers

集群搭建

一般集群

集群服务器三台

服务器名 ip
node1 192.168.108.128
node2 192.168.108.129
node3 192.168.108.130
1.进入/var/lib/rabbitmq文件夹中,查看.erlang.cookie内容,保证三台服务器的.erlang.cookie文件内容一致
2.启动三台服务器的RabbitMQ服务
3.在node2、node3上关闭RabbitMQ应用
[root@node2 ~]# rabbitmqctl stop_app
[root@node3 ~]# rabbitmqctl stop_app

4.将服务器node2、node3加入到服务器节点node1中

[root@node2 ~]# rabbitmqctl join_cluster --ram rabbit@node1
[root@node3 ~]# rabbitmqctl join_cluster --ram rabbit@node1

5.开启无服务的RabbitMQ应用

[root@node2 ~]# rabbitmqctl start_app
[root@node3 ~]# rabbitmqctl start_app

6.在node1管理界面查看节点情况

集群配置成功

HA集群

RabbitMQ集群搭建参考官方文档:
RabbitMQ HA集群搭建

参考

初识RabbitMQ——AMQP 0-9-1

SpringBoot整合RabbitMQ——Direct交换机

SpringBoot整合RabbitMQ——Fanout交换机

SpringBoot整合RabbitMQ——Topic交换机

SpringBoot整合RabbitMQ——Headers交换机

RabbitMQ——RabbitMQ搭建及问题相关推荐

  1. rabbitmq服务器搭建-集群

    rabbitmq服务器搭建-集群 前言 1.修改主机名 2.开启端口25672和4369 3.配置hosts 文件 4. cookie值同步 5.重启服务 6.将node2加入至node1 7.将no ...

  2. [RabbitMQ]RabbitMQ深入理解(一)进阶/管理/配置

    2019独角兽企业重金招聘Python工程师标准>>> 本文源于朱忠华的<RabbitMQ实战指南> RabbitMQ简介 消息队列中间件有两种传递模式:点对点 和 发布 ...

  3. [RabbitMQ]RabbitMQ概念_四大核心概念

    RabbitMQ RabbitMQ 的概念 RabbitMQ 是一个消息中间件:它接受并转发消息.你可以把它当做一个快递站点,当你要发送一个包裹时,你把你的包裹放到快递站,快递员最终会把你的快递送到收 ...

  4. docker部署rabbitmq出错touch: cannot touch ‘/etc/rabbitmq/rabbitmq.conf‘: Permission denied

    docker部署rabbitmq出错touch: cannot touch '/etc/rabbitmq/rabbitmq.conf': Permission denied 首先拉取镜像,这里我使用d ...

  5. 什么是RabbitMQ RabbitMQ详解

    1.什么是rabbitMQ RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue 高级消息队列协议 )的开源实现, 能够实现异步消息处理 RabbitMQ是 ...

  6. RabbitMQ#RabbitMQ+Haproxy消息队列集群和代理部署

    文章目录 一.消息队列/中间件 1.RabbitMQ本质上起到的作用就是削峰填谷 2.MQ简介(RabbitMQ比Kafka) 3.MQ消息队列的分类 二.RabbitMQ介绍(端口15672) 1. ...

  7. php stomp rabbitmq,rabbitmq stomp 安装配置 -- kkito的博客

    http://www.rabbitmq.com/ http://www.rabbitmq.com/getstarted.html http://www.rabbitmq.com/download.ht ...

  8. 【详细】【转】C#中理解委托和事件 事件的本质其实就是委托 RabbitMQ英汉互翼(一),RabbitMQ, RabbitMQ教程, RabbitMQ入门...

    [详细][转]C#中理解委托和事件 文章是很基础,但很实用,看了这篇文章,让我一下回到了2016年刚刚学委托的时候,故转之! 1.委托 委托类似于C++中的函数指针(一个指向内存位置的指针).委托是C ...

  9. RabbitMQ + ELK 搭建日志平台

    CentOS下使用ELK套件搭建日志分析和监控平台 2015年01月30日 17:32:29 i_chips 阅读数:24252 https://blog.csdn.net/i_chips/artic ...

最新文章

  1. 一文入门 Zookeeper
  2. 成为数据科学家、人工智能和机器学习工程师的自学之路
  3. iOS开发-UISwipeGestureRecognizer滑动手势
  4. nginx php 错误日志,PHP 错误与异常的日志记录
  5. win7硬件要求_电脑硬件运行游戏测评
  6. [bzoj3926][Zjoi2015]诸神眷顾的幻想乡
  7. PHP连接达梦数据库
  8. 我妈要把闺蜜介绍给我当女朋友......
  9. 图形学之开篇概念及综述
  10. JavaScript 演练(4). 回调函数
  11. 智能提示_文明放大镜·7 | 清新智能语音提示桩让你过马路除了看灯还可以听,赞...
  12. 如何做出好的文档 (要学习前人的经验,不要闭门造车)
  13. httpd2.4.9主配置文件参数详解
  14. Android AlertDialog的一切
  15. Java后端开发需要的技术
  16. 私教课程 Day2 2017-09-14
  17. Ubuntu 查看本机IP地址
  18. Google Earth Engine(GEE)统计制图
  19. python pil_Python PIL composite()用法及代码示例
  20. sql server返回是星期几的函数

热门文章

  1. layui 给数据表格加序号
  2. 举例说明:学编程和培养编程思维有什么联系?
  3. 古典密码学--移位密码
  4. android显示全景图片素材,【行业应用】360°全景-如何制作一个360度全景图
  5. APP应用真机调试详细步骤
  6. Python中将numpy Int16类型的音频阵列转换为Float32类型
  7. 推荐系统实践-利用用户标签数据(4)
  8. 立创EDA画图过程,实际布线考虑,自动布线的多板框问题,自动布线
  9. python写签名程序
  10. html网页背景颜色渐变代码,css背景色渐变兼容写法_html/css_WEB-ITnose