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浏览器管理界面查看服务状态

至此,安装完成。

相关推荐
大丈夫立于天地间17 分钟前
ISIS协议中的数据库同步
运维·网络·信息与通信
cg501721 分钟前
Spring Boot 的配置文件
java·linux·spring boot
暮云星影41 分钟前
三、FFmpeg学习笔记
linux·ffmpeg
rainFFrain1 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
GalaxyPokemon1 小时前
Muduo网络库实现 [九] - EventLoopThread模块
linux·服务器·c++
mingqian_chu2 小时前
ubuntu中使用安卓模拟器
android·linux·ubuntu
@郭小茶3 小时前
docker-compose方式部署docker项目
运维·docker·容器
GalaxyPokemon3 小时前
Muduo网络库实现 [十] - EventLoopThreadPool模块
linux·服务器·网络·c++
自由鬼3 小时前
开源虚拟化管理平台Proxmox VE部署超融合
linux·运维·服务器·开源·虚拟化·pve