linux搭建RabbitMQ服务器

本文详细介绍了在Linux环境下搭建RabbitMQ服务器的过程,包括环境准备、安装配置、基本命令及Web界面管理,适用于初学者快速入门。

前言

RabbitMQ采用Erlang语言开发,是基于AMOP标准开发的最受欢迎消息中间件之一。它轻巧,易于部署,并且支持多种消息传递协议,受到大多数程序员的青睐。下面就分享一下在linux上搭建RabblitMQ的流程。

环境准备

系统: Linux 3.10.0-957.21.3.el7.x86_64
RabbitMQ: v3.6.5

安装RabbitMQ

1、下载rpm安装包

wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm

2、使用以下命令进行安装

yum install -y rabbitmq-server-3.6.5-1.noarch.rpm

3、安装完成后输入hostname命令,检查是否有结果返回,返回的一段字符串为你的主机名

4、修改host文件,在末尾添加一行
127.0.0.1 返回的主机名 返回的主机名

vim /etc/hosts

5、尝试输入以下命令,若所有命令都能执行成功,则说明安装成功
启动:

service rabbitmq-server start

停止:

service rabbitmq-server stop

重启:

service rabbitmq-server restart

设置开机启动:

chkconfig rabbitmq-server on

环境配置

1、查找默认配置位置

find / -name "rabbitmq.config.example"

2、复制默认配置的搜索结果

cp /usr/share/doc/rabbitmq-server-3.6.5/rabbitmq.config.example /etc/rabbitmq/

3、修改配置文件名:

cd /etc/rabbitmq 
mv rabbitmq.config.example rabbitmq.config

4、编辑配置文件,开启用户远程访问,将64行的 %% {loopback_users, []}, 改为 {loopback_users, []}注意末尾的逗号也去掉

vim rabbitmq.config

5、开启 Web 界面管理:

rabbitmq-plugins enable rabbitmq_management

6、重启 RabbitMQ 服务:

service rabbitmq-server restart

7、开放防火墙端口:

sudo iptables -I INPUT -p tcp -m tcp --dport 15672 -j ACCEPT
sudo iptables -I INPUT -p tcp -m tcp --dport 5672 -j ACCEPT

若使用以上命令不起效果,需检查阿里云控制台里是否将这两个端口加入安全组,若已经加入了安全组还无效的话,可以试试关闭防火墙(不推荐)

在浏览器输入以下url进行访问

http://你的主机名:15672

会出现一个登录页面
在这里插入图片描述
输入默认的用户名和密码:guest/guest,进行登录,进入rabbitmq管理页面
在这里插入图片描述
到这一步,说明环境配置已经完成

基本命令

增加用户admin

rabbitmqctl add_user admin admin

设置admin用户的管理员权限

rabbitmqctl set_user_tags admin administrator

显示用户列表和权限

rabbitmqctl list_users

参考资料:https://www.jianshu.com/p/729e21c1328b

### Linux系统中配置和搭建RabbitMQ集群的最佳实践 #### 一、准备工作 在Linux环境中搭建RabbitMQ集群之前,需确保每台服务器已安装Erlang运行环境以及RabbitMQ服务软件。通常建议使用相同版本的操作系统、Erlang和RabbitMQ以减少兼容性问题。 #### 二、启动与初始化RabbitMQ服务 通过命令行工具完成RabbitMQ的基础操作,包括启动、停止和服务状态查询。具体命令如下: - 启动RabbitMQ服务:`systemctl start rabbitmq-server`[^2]。 - 查询当前RabbitMQ的状态:`systemctl status rabbitmq-server`。 - 设置RabbitMQ随操作系统启动:`systemctl enable rabbitmq-server`。 #### 三、启用管理插件 为了方便监控和管理RabbitMQ集群,可以启用其内置的Web管理界面插件。执行以下命令即可激活该功能: ```bash rabbitmq-plugins enable rabbitmq_management ``` 此命令会加载必要的模块并开放HTTP接口供浏览器访问,默认地址为http://<server-ip>:15672/[^1]。 #### 四、构建基础集群架构 假设我们有三个节点分别命名为rabbit@node1, rabbit@node2 和 rabbit@node3,则按照以下步骤创建一个简单的RabbitMQ集群: 1. **进入容器内部终端** 使用Docker容器部署时,先进入目标容器实例: ```bash docker exec -it rabbitmqCluster03 /bin/bash ``` 2. **停止应用程序进程** 停止正在运行的应用程序以便后续重置或加入其他集群成员: ```bash rabbitmqctl stop_app ``` 3. **清除现有数据记录** 如果这是重新配置或者迁移过程中的一部分工作,则需要清理之前的集群信息: ```bash rabbitmqctl reset ``` 4. **连接到指定主节点形成新集群** 将次级节点关联至主要节点(rabbit@rabbitmq01),这里采用内存优化型参数--ram来提升性能表现: ```bash rabbitmqctl join_cluster --ram rabbit@rabbitmq01 ``` 5. **重启应用使更改生效** 最后一步就是再次开启服务让所有的调整得以实施: ```bash rabbitmqctl start_app exit ``` 以上过程重复应用于每一个额外增加的新节点直至整个网络拓扑完全成型[^3]。 #### 五、高级特性——镜像队列模式 对于追求更高层次的数据安全性和持续可用性的应用场景来说,“镜像队列”无疑是一个值得考虑的选择方案。它的工作原理是在不同的物理位置之间复制消息内容从而达到冗余备份的目的。当任意单点发生故障时仍能保障核心业务流程不受影响继续正常运转下去[^4]。 #### 六、实际案例分析 基于上述理论指导原则,在真实世界里可能遇到的具体情况如下所示: | IP Address | Role | Additional Services | |-------------------|--------------------|----------------------------| | 192.168.111.133 | Memory Node | HAProxy & Keepalived (Master) | | 192.168.111.134 | Memory Node | HAProxy & Keepalived (Backup) | | 192.168.111.135 | Disk Node | Virtual IP Address Assignment | 其中特别需要注意的是VIP(虚拟IP)分配给外部客户端作为统一入口点简化了负载均衡机制的设计复杂度同时提高了系统的健壮程度[^5]。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值