Linux 安装并搭建 3.10.7 RabbmitMQ 集群之搭建RabbitMq服务器(一)

作者:超级松鼠   阅读 (377)  |  收藏 (0)  |  点赞 (0)

摘要

本文基于Centos7 系统安装 最新版3.10.7 RabbmitMQ,以及搭建集群的方法,采用源码安装


原文链接:Linux 安装并搭建 3.10.7 RabbmitMQ 集群之搭建RabbitMq服务器(一)

RabbitMQ的应用和简介啥的就不说了,网上资料一大堆,本文将直接讲解在Centos 7 上搭建 RabbitMQ集群的方法。

网上的资料绝大部分都是通过rpm安装的,rpm安装有个极大的问题,那就是依赖问题解决起来非常麻烦,因此本文采用源码安装的方式,安装过程中可能遇到的问题及解决方案在本文的最后面

如果你已经成功搭建了一个RabbitMq,那么请继续下篇文章Linux 安装并搭建 3.10.7 RabbmitMQ 集群之搭建RabbitMq集群(二)

0、安装前注意

1、请关闭防火墙(如果自己测试的话最好关闭防火墙,线上的话按照RabbitMQ开启端口),关闭方式在文末有教程

2、准备centos7

一、更新linux依赖

yum install -y make gcc gcc-c++ m4 openssl openssl-devel ncurses-devel unixODBC unixODBC-devel java java-devel socat

二、安装Erlang环境

RabbitMQ为Erlang语言开发,因此Centos 上必须先具备Erlang环境(类似于JDK环境一样),但是我们需要注意的是RabbitMQ必须和对应的Erlang版本对应,对应关系如下:

image.png

如果想要更多的版本对应关系,请参考官方说明

我们安装就使用最新的3.10.7 RabbitMQ,其对应的Erlang版本最低为24.2,最高为25.0

下载Erlang

访问Erlang官网:https://www.erlang.org/downloads ,或者git官方

本次安装使用了最新的25.0.4来安装

image.png

使用命令下载25.0.4版本的Erlang 源码包

wget https://github.com/erlang/otp/releases/download/OTP-25.0.4/otp_src_25.0.4.tar.gz

解压上面下载的文件

tar -zxvf otp_src_25.0.4.tar.gz

进入解压的目录并配置安装路径编译代码(此过程如出现问题,请参考文末的解决方案1

cd otp_src_25.0.4 
./configure --prefix=/opt/erlang  #将会编译到这个目录

执行编译(过程比较久,耐心等待

make && make install

配置环境变量

cd /etc/profile.d/
vim erlang.sh

将如下内容输入到该文件并保存

#!/bin/bash
ERLANG_HOME=/opt/erlang
PATH=$ERLANG_HOME/bin:$PATH
export PATH

生效环境变量

source /etc/profile

查看erl版本

erl

出现如下结果证明已经安装准确的25.x版本的erlang

Erlang/OTP 25 [erts-13.0.4] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1]

三、安装rabbitMQ

按照第一步rabbitMQ和erlang版本的对应关系,咱们可以安装最新的rabbitMq 3.10.7

官方提供的可下载版本

image.png

我们下载最新版本3.10.7,点击上面图中的3.0.7进入如下页面,拉到最下面,找到rabbitmq-server-generic-unix-3.10.7.tar.xz (注意,必须是下载这个,而不是rabbitmq-server-3.10.7.tar.xz,这个里面没有sbin目录,需要编译)

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.10.7/rabbitmq-server-generic-unix-3.10.7.tar.xz

解压压缩文件

tar -xvf rabbitmq-server-generic-unix-3.10.7.tar.xz

进入profile里面新建rabbitmq脚本进行配置(也可以直接通过echo来配置)

cd /etc/profile.d/
vim rabbitmq.sh

在里面添加如下配置

#!/bin/bash
RABBIT_HOME=/home/software/rabbitmq_server-3.10.7  #/home/software是我解压的rabbitmq目录,改成你自己的就行
PATH=$RABBIT_HOME/sbin:$PATH
export PATH

生效环境变量

source /etc/profile

启动rabbitMQ

rabbitmq-server -detached

查看rabbitMQ 服务状态

rabbitmqctl status

激活web管理功能

rabbitmq-plugins enable rabbitmq_management

此时,通过http://localhost:15672 或者 http://rabbitMqIP地址:15672就可访问到RabbitMq了

最新rabbitMQ安装 3.10.7

默认的登录用户和密码是 guest,但是这个用户只限于Localhost登录,通过IP登录不可以,

image.png

这种解决方法是添加其他账号

补充(用户管理):

# 添加 admin ⽤用户,密码设置为 admin 。
rabbitmqctl add_user admin admin
# 赋予权限
rabbitmqctl set_user_tags admin administrator
# 赋予 virtual host 中所有资源的配置、写、读权限以便管理其中的资源
rabbitmqctl set_permissions -p / admin '.*' '.*' '.*'
# 查看⽤户列列表
rabbitmqctl list_users
# 删除⽤用户,如果你想删除某个用户,可以执行该命令
rabbitmqctl delete_user admin

再次用admin admin登录rabbitmq,就能登录成功

image.png

安装过程出现的问题及解决方案

1、configure: error: Perl version 5 is required to build the emulator!

配置需要至少版本为5的perl

yum install perl

检查perl版本号:

perl -v

出现如下说明版本符合要求

This is perl 5, version 16, subversion 3 (v5.16.3) built for x86_64-linux-thread-multi
(with 44 registered patches, see perl -V for more detail)

2、关闭防火墙

如果不关闭防火墙,安装并成功启动后,只能本机访问RabbitMq,也就是

http://localhost:15672

如果你想要在其他机器上访问,则需要将本机RabbitMq对应的端口开放,为了简省端口开放,咱们可以直接关闭防火墙(线上还是规规矩矩的只开放端口)

查看防火墙状态

systemctl status firewalld.service

如返回内容展示有"active(running)",此时说明防火墙已经打开了,需要关闭,否则就是已经关闭了,无需再次关闭防火墙了

关闭防火墙

systemctl stop firewalld.service

然后再次查看防火墙状态,这个时候就应该是Active: disavtive(dead)

最后一步,永久关闭防火墙

systemctl disable firewalld.service

永久关闭后无需重启任何东西即可生效


分类   项目感悟
字数   3166

博客标签    centos 7安装 rabbitmq  

评论