Linux环境下以源码方式安装rabbitmq和使用rabbitmq

前言:rabbitmq依赖erlang,而且存在对应关系,对应关系大家百度下即可找到,我这里使用的rabbitmq的版本为3.6.14,erlang的版本为20.1,我给大家介绍两种方式,这里是源码安装方式,建议使用源码安装方式,yum方式安装看这篇yum方式安装rabbitmq

源码安装方式

1.1 配置信息如下

Centos7.7 Erlang_20.1 RabbitMQ_3.6.14(亲测有效)

1.2 下载

官网下载比较慢,这里我给出了百度云连接,大家自行下载:
rabbitmq链接:https://pan.baidu.com/s/1AVWNUUM6bq231gZjmO1s1g 提取码:go8c
erlang链接:https://pan.baidu.com/s/1F0UYe04utqkSjBUa1h_o7A 提取码:lhfp

1.3 上传

1.4 旧版本erlang及RabbitMQ卸载命令

yum list | grep rabbitmq
yum -y remove rabbitmq-server.noarch
yum list | grep erlang
yum -y remove erlang-*
yum remove erlang.x86_64
#删除有关所有文件价下的文件
rm -rf /usr/lib64/erlang 
rm -rf /var/lib/rabbitmq

1.5 安装依赖

yum install openssl-devel
yum install unixODBC-devel
# ncurses-devel 为安装基于文本的用户界面(TUI)的编程库,很多发行版都自带了,安装过了可跳过:
yum -y install ncurses-devel gcc-c++ perl libxslt rsync zip xmlto gcc glibc-devel make ncurses-devel openssl-devel autoconf

1.6 安装erlang

#解压erlang压缩包到/usr/local
tar -zxvf otp_src_20.1.tar.gz -C /usr/local
#重命名为otp
mv /usr/local/otp_src_19.0 /usr/local/otp
#进入到otp夹中
cd /usr/local/otp
#配置安装,prefix指定安装的路径
./configure --prefix=/usr/local/erlang --without-javac --with-opengl --enable-debug --enable-unicode
#使用四核CPU进行编译,也可直接make
make -j 4
#安装
make install
#验证是否安装成功,能用./erl进入命令行即安装成功了
cd /usr/local/erlang/bin
./erl

1.7 安装Python

wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz
tar zvxf Python-2.7.6.tgz -C /usr/local
mv /usr/local/Python-2.7.6 /usr/local/python
cd /usr/local/python
./configure --prefix=/usr/local/python27
make && make install
python -V 检测是否安装成功

1.8 安装rabbitmq

  • 解压:rabbitmq压缩了两次,一次是xz方式,一次是tar方式,所以下面会解压两次
#安装 xz 解压工具
yum install xz  
#解压xz压缩包
xz -d rabbitmq-server-generic-unix-3.6.14.tar.xz
#解压tar压缩包
tar xf rabbitmq-server-generic-unix-3.6.14.tar
#把rabbitmq移动至/usr/local/下 改名为rabbitmq
cp -r rabbitmq_server-3.6.14 /usr/local/rabbitmq 

1.9 添加环境变量

  • 编辑profile:vim /etc/profile
  • 添加环境变量:
ERLANG_HOME=/usr/local/erlang
RABBITMQ_HOME=/usr/local/rabbitmq
PATH=$ERLANG_HOME/bin:$RABBITMQ_HOME/sbin
export PATH
  • 重新加载profile:source /etc/profile

在这里插入图片描述

1.10 使用

#进入到rabbitmq的sbin目录下
cd /usr/local/rabbitmq/sbin/

#启动
rabbitmq-server
启动时可能会报错Warning: PID file not written; -detached was passed.(PID被其他进程占用)
解决办法:
ps aux | grep erlang #查看erlang进程,第二列为进程pid
ps aux | grep rabbitmq #查看rabbitmq进程,第二列为进程pid
kill -9 进程pid #根据进程pid把erlang和rabbitmq干掉
进程停止后,再以 rabbitmq-server 启动
#停止
rabbitmqctl stop
#启动后台界面管理
rabbitmq-plugins enable rabbitmq_management 

通过进程进程名查看pid:ps aux | grep rabbitmq
在这里插入图片描述
通过pid查看占用端口 :netstat -nap | grep 进程pid
在这里插入图片描述

1.11 添加用户和权限

默认guest用户是不允许远程访问的,需要增加一个用户并赋予权限:

#添加用户并指定密码
rabbitmqctl add_user bbq 123456
#置为超级管理员管理
rabbitmqctl set_user_tags bbq administrator
#设置用户权限
rabbitmqctl set_permissions -p "/" bbq "." "." ".*"

1.12 添加开放端口

# --permanent 为永久添加,不指定此参数重启后失效
firewall-cmd --zone=public --add-port=5672/tcp --permanent
#15672为后台界面管理端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent
#重载
firewall-cmd --reload
#查看所有开放端口
firewall-cmd --zone=public --list-ports

1.13 配置云服务安全组(非云服务可跳过)

在这里插入图片描述

1.14 访问后台管理界面

访问地址 ip:15672
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章