Linux搭建RabbitMQ集群环境

简介: Linux搭建RabbitMQ集群环境

环境说明

  • 操作系统:CentOS7
  • Erlang版本:21.3
  • RabbitMQ版本:3.8.0

Erlang安装

下载安装包

参考链接:https://packagecloud.io/rabbitmq/erlang。精简的包,只提供运行RabbitMQ所需的组件。

  1. 选择对应版本进入下载页面
    在这里插入图片描述
  2. 复制下图中的wget地址
    在这里插入图片描述
  3. 执行下载命令
wget --content-disposition https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-21.3.8.14-1.el7.x86_64.rpm/download.rpm?distro_version_id=140

在这里插入图片描述

安装

执行安装命令

rpm -ivh erlang-21.3.8.14-1.el7.x86_64.rpm

在这里插入图片描述

验证

执行命令验证安装版本

yum info erlang

在这里插入图片描述

RabbitMQ安装

参考链接:https://www.rabbitmq.com/install-rpm.html

下载安装包

  1. 执行下载命令,如果下载超时,点击进行下载RabbitMQ安装包
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.0/rabbitmq-server-3.8.0-1.el7.noarch.rpm

在这里插入图片描述

  1. 下载完成后导入key
rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc

安装

rpm -ivh rabbitmq-server-3.8.0-1.el7.noarch.rpm

在这里插入图片描述
上图提示缺少logrotate和socat,yum安装即可。

yum install logrotate
yum install socat

在这里插入图片描述
在这里插入图片描述
再次执行rpm -ivh rabbitmq-server-3.8.0-1.el7.noarch.rpm即可
在这里插入图片描述

启动RabbitMQ

# 启动rabbitmq
systemctl start rabbitmq-server
# 查看rabbitmq状态
systemctl status rabbitmq-server

在这里插入图片描述

设置开机自动启动

systemctl enable rabbitmq-server

在这里插入图片描述

安装管理界面

rabbitmq-plugins enable rabbitmq_management

在这里插入图片描述
guest帐号只能在RabbitMQ安装服务器上登录,如下图提示信息
在这里插入图片描述

创建用户

#创建一个用户admin,密码位123456
rabbitmqctl add_user admin 123456
#设置用户标签为administrator
rabbitmqctl set_user_tags admin administrator
#授予admin用户可访问虚拟主机 / 以及各种权限
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

登录管理界面

使用创建的用户登录管理界面
在这里插入图片描述

集群配置

前提条件

  • 2台服务器节点rabbit均已安装。
  • rabbitmq依赖于erlang集群工作,需要保证各节点中cookie文件的一致性,否则节点之间无法通信。

    构建erlang集群

  1. 拷贝一台rabbitmq的erlang.cookie到另外一台,被拷贝的视为master
scp /var/lib/rabbitmq/.erlang.cookie root@192.168.0.238:/var/lib/rabbitmq

在这里插入图片描述

  1. 重启2个节点
    systemctl restart rabbitmq-server
    
  2. 操作node2服务
    #停止服务
    rabbitmqctl stop_app
    #重置服务
    rabbitmqctl reset
    #加入集群,$hostname为node1的hostname
    rabbitmqctl join_cluster rabbit@$hostname
    

    高可用镜像集群配置

    2台服务器分别执行以下命令设置策略
    rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'
    
相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
5天前
|
Ubuntu Linux Shell
(已解决)Linux环境—bash: wget: command not found; Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
(已成功解决)Linux环境报错—bash: wget: command not found;常见Linux发行版本,Linux中yum、rpm、apt-get、wget的区别;Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
119 68
(已解决)Linux环境—bash: wget: command not found; Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
|
2天前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
6天前
|
消息中间件 存储 运维
2024最全RabbitMQ集群方案汇总
本文梳理了RabbitMQ集群的几种方案,主要包括普通集群、镜像集群(高可用)、Quorum队列(仲裁队列)、Streams集群模式(高可用+负载均衡)和插件方式。重点介绍了每种方案的特点、优缺点及适用场景。搭建步骤包括安装Erlang和RabbitMQ、配置集群节点、修改hosts文件、配置Erlang Cookie、启动独立节点并创建集群,以及配置镜像队列以提高可用性和容错性。推荐使用Quorum队列与Streams模式,其中Quorum队列适合高可用集群,Streams模式则同时支持高可用和负载均衡。此外,还有Shovel和Federation插件可用于特定场景下的集群搭建。
71 2
|
6天前
|
消息中间件 RocketMQ
2024最全RocketMQ集群方案汇总
在研究RocketMQ集群方案时,发现网上存在诸多不一致之处,如组件包含NameServer、Broker、Proxy等。通过查阅官方文档,了解到v4.x和v5.x版本的差异。v4.x部署模式包括单主、多主、多主多从(异步复制、同步双写),而v5.x新增Local与Cluster模式,主要区别在于Broker和Proxy是否同进程部署。Local模式适合平滑升级,Cluster模式适合高可用需求。不同模式下,集群部署方案大致相同,涵盖单主、多主、多主多从等模式,以满足不同的高可用性和性能需求。
36 0
|
1月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
38 4
|
2月前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
469 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
1月前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
108 3
|
1月前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
47 3
|
2月前
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
74 6
|
1月前
|
Linux UED iOS开发

热门文章

最新文章