RabbitMQ——RabbitMQ搭建及问题
文章目录
- 单点搭建
- 准备
- 版本确定
- 安装各种依赖模块
- 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搭建及问题相关推荐
- rabbitmq服务器搭建-集群
rabbitmq服务器搭建-集群 前言 1.修改主机名 2.开启端口25672和4369 3.配置hosts 文件 4. cookie值同步 5.重启服务 6.将node2加入至node1 7.将no ...
- [RabbitMQ]RabbitMQ深入理解(一)进阶/管理/配置
2019独角兽企业重金招聘Python工程师标准>>> 本文源于朱忠华的<RabbitMQ实战指南> RabbitMQ简介 消息队列中间件有两种传递模式:点对点 和 发布 ...
- [RabbitMQ]RabbitMQ概念_四大核心概念
RabbitMQ RabbitMQ 的概念 RabbitMQ 是一个消息中间件:它接受并转发消息.你可以把它当做一个快递站点,当你要发送一个包裹时,你把你的包裹放到快递站,快递员最终会把你的快递送到收 ...
- docker部署rabbitmq出错touch: cannot touch ‘/etc/rabbitmq/rabbitmq.conf‘: Permission denied
docker部署rabbitmq出错touch: cannot touch '/etc/rabbitmq/rabbitmq.conf': Permission denied 首先拉取镜像,这里我使用d ...
- 什么是RabbitMQ RabbitMQ详解
1.什么是rabbitMQ RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue 高级消息队列协议 )的开源实现, 能够实现异步消息处理 RabbitMQ是 ...
- RabbitMQ#RabbitMQ+Haproxy消息队列集群和代理部署
文章目录 一.消息队列/中间件 1.RabbitMQ本质上起到的作用就是削峰填谷 2.MQ简介(RabbitMQ比Kafka) 3.MQ消息队列的分类 二.RabbitMQ介绍(端口15672) 1. ...
- php stomp rabbitmq,rabbitmq stomp 安装配置 -- kkito的博客
http://www.rabbitmq.com/ http://www.rabbitmq.com/getstarted.html http://www.rabbitmq.com/download.ht ...
- 【详细】【转】C#中理解委托和事件 事件的本质其实就是委托 RabbitMQ英汉互翼(一),RabbitMQ, RabbitMQ教程, RabbitMQ入门...
[详细][转]C#中理解委托和事件 文章是很基础,但很实用,看了这篇文章,让我一下回到了2016年刚刚学委托的时候,故转之! 1.委托 委托类似于C++中的函数指针(一个指向内存位置的指针).委托是C ...
- RabbitMQ + ELK 搭建日志平台
CentOS下使用ELK套件搭建日志分析和监控平台 2015年01月30日 17:32:29 i_chips 阅读数:24252 https://blog.csdn.net/i_chips/artic ...
最新文章
- 一文入门 Zookeeper
- 成为数据科学家、人工智能和机器学习工程师的自学之路
- iOS开发-UISwipeGestureRecognizer滑动手势
- nginx php 错误日志,PHP 错误与异常的日志记录
- win7硬件要求_电脑硬件运行游戏测评
- [bzoj3926][Zjoi2015]诸神眷顾的幻想乡
- PHP连接达梦数据库
- 我妈要把闺蜜介绍给我当女朋友......
- 图形学之开篇概念及综述
- JavaScript 演练(4). 回调函数
- 智能提示_文明放大镜·7 | 清新智能语音提示桩让你过马路除了看灯还可以听,赞...
- 如何做出好的文档 (要学习前人的经验,不要闭门造车)
- httpd2.4.9主配置文件参数详解
- Android AlertDialog的一切
- Java后端开发需要的技术
- 私教课程 Day2 2017-09-14
- Ubuntu 查看本机IP地址
- Google Earth Engine(GEE)统计制图
- python pil_Python PIL composite()用法及代码示例
- sql server返回是星期几的函数