oracle linux源码安装rabbitMQ并部署三节点rabbitmq集群

一.安装rabbitMQ的基础软件下载

Rabbitmq是现阶段比较常用的一个消息队列服务,是基于erlang语言开放的,需要首先安装erlang,并且rabbitmq和erlang的版本是有关系的。

1.基础依赖软件(主要是是编译和erlang安装的时候的一些依赖软件)

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel ncurses-devel wget xz 
yum install unixODBC  unixODBC-devel -y #在编译erlang的时候,提示用到的软件。

2.下载erlang和rabbitmq软件

#下载erlang软件
wget http://erlang.org/download/otp_src_26.0.tar.gz  
#下载rabbitmq软件
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.12.2/rabbitmq-server-generic-unix-3.12.2.tar.xz  

3.解压软件

#解压erlang软件
tar -zvxf otp_src_26.0.tar.gz
#解压rabbitMQ软件
xz -d rabbitmq-server-generic-unix-3.12.2.tar.xz
tar xvf rabbitmq-server-generic-unix-3.12.2.tar

4.安装erlang软件

cd /opt/otp_src_26.0
./configure --prefix=/opt/er1ang --without-javac
make && make install

安装完成之后在/opt/er1ang下面有下面内容

将erlang写入环境变量

编辑/etc/profile,添加如下内容

export PATH=$PATH:/opt/er1ang/bin

执行source /etc/profile生效,使用erl命令进行测试

5.安装rabbitMQ软件

Rabbitmq服务的安装强依赖erlang语言,所以在进行以下步骤前,请确保前面的步骤都已运行正常。Rabbitmq服务无须编译安装,解压后的目录及为Rabbit服务目录。

cd /opt/rabbitmq_server-3.12.2/
ls 
# 将Rabbitmq相关命令写入环境变量
 vim /etc/profile
export PATH=$PATH:/opt/rabbitmq_server-3.12.2/sbin
# 添加完成后运行命领令,是环境变量生效,注意添加位置,在erlang之后,或者只添加一条:export PATH=$PATH:/opt/erlang/bin:/opt/rabbitmq_server-3.12.2/sbin
source /etc/profile 

启动rabbitMQ软件

 rabbitmq-server -detached

注意此时rabbitmq仍为提供消息队列服务,只有等start_app了才会正常提供服务,启动的监听的端口默认是25672,5672,4369端口 ,15672是开启图形化管理后监听的

二.部署rabbitMQ集群

1.统一认证Erlang Cookie

设置不同节点间同一认证的Erlang Cookie,采用从某个节点copy的方式保持Cookie的一致性。

启动rabbitmq之后会在~/.erlang.cookie或/var/lib/rabbitmq/下生成一个.erlang.cookie隐藏文件,即使你把这个文件给删除了运行rabbitmq-server也会再次生成新的.erlang.cookie。

可以通过scp将第一个节点的~/.erlang.cookie复制到另外两个节点(在node1上面执行)

scp ~/.erlang.cookie {node2_host_or_ip}:~/.erlang.cookie
scp ~/.erlang.cookie {node3_host_or_ip}:~/.erlang.cookie

2.三个节点启动rabbitmq(分别在在node1,node2,node3上执行)

rabbitmq-server -detached

3.创建并部署集群(分别在在node2,node3上执行)

rabbitmqctl status
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster  --ram  rabbit@rke2-rabbitmq01

#执行加入集群完成之后
rabbitmqctl start_app
rabbitmqctl cluster_status

三.添加rabbitmq浏览器管理插件

rabbitmq-plugins enable rabbitmq_management #启用管理插件
rabbitmqctl add_user adn RbT@123456         #新增用户
rabbitmqctl set_user_tags adn administrator #设置角色
rabbitmqctl list_permissions -p /           #查看角色
rabbitmqctl list_users                      #查看用户
rabbitmqctl set_permissions -p "/" adn ".*" ".*" ".*"  #赋权
rabbitmqctl delete_user guest      #删除默认用户

登录Rabbitmq浏览器管理界面查看服务状态

至此,安装完成。

相关推荐
一坨阿亮2 分钟前
Linux 使用中的问题
linux·运维
dsywws1 小时前
Linux学习笔记之vim入门
linux·笔记·学习
幺零九零零2 小时前
【C++】socket套接字编程
linux·服务器·网络·c++
wclass-zhengge2 小时前
Docker篇(Docker Compose)
运维·docker·容器
李启柱2 小时前
项目开发流程规范文档
运维·软件构建·个人开发·设计规范
小林熬夜学编程3 小时前
【Linux系统编程】第四十一弹---线程深度解析:从地址空间到多线程实践
linux·c语言·开发语言·c++·算法
力姆泰克3 小时前
看电动缸是如何提高农机的自动化水平
大数据·运维·服务器·数据库·人工智能·自动化·1024程序员节
BPM_宏天低代码3 小时前
低代码 BPA:简化业务流程自动化的新趋势
运维·低代码·自动化
程思扬4 小时前
为什么Uptime+Kuma本地部署与远程使用是网站监控新选择?
linux·服务器·网络·经验分享·后端·网络协议·1024程序员节
sun0077004 小时前
拷贝 cp -rdp 和 cp -a
linux·运维·服务器