【Linux-Centos7】安装 RabbitMQ
admin
2024-05-04 17:51:07
0

环境

Centos7 64 系统 Linux

编译安装

  1. 下载
  • 下载rabbitmq-server-generic-unix-3.11.5.tar.xz
    • 或者查看github
  • 选择版本Erlang(https://rabbitmq.com/which-erlang.html)
  • 下载Erlang源码 25.2
    • 下载wxwidgets

将下载的包放到/opt/rabbitmq-server

  1. a1) 安装wxwidgets
    编译安装Erlang的前提,需要编译安装wxwidgets
# [下载wxwidgets](http://www.wxwidgets.org/downloads/)
# 解压
bzip2 -dkv wxWidgets-3.2.1.tar.bz2
tar -xvf wxWidgets-3.2.1.tar
# unzip wxWidgets-3.2.1.zip # 或者
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel java-devel
# Erlang: No OpenGL headers found, wx will NOT be usable
yum install mesa* --skip-broken
yum install freeglut*
# 需要安装GTK+: yum install *gtk*或 yum install *gtk* --skip-broken
yum install *gtk*# 配置
cd /opt/rabbitmq-server/wxWidgets-3.2.1
./configure --with-gtk=3 --with-opengl --enable-debug --enable-unicode
# 编译&安装(时间有点长)
make && make install
# install path: /usr/local/include/wx-3.2# 测试
wx-config
  1. a2) 安装Erlang

# 解压
tar -zxvf otp_src_25.2.tar.gz
cd /opt/rabbitmq-server/otp_src_25.2
# 配置
./configure --prefix=/usr/local/erlang
# 出现如下信息,即说明配置成功
#*********************************************************************
#**********************  APPLICATIONS INFORMATION  *******************
#*********************************************************************
#
#erts           : 
#                 JIT disabled due to lack of compiler with C++17 support
#
#*********************************************************************
#*********************************************************************
#**********************  DOCUMENTATION INFORMATION  ******************
#*********************************************************************
#
#documentation  : 
#                 fop is missing.
#                 Using fakefop to generate placeholder PDF files.# 编译&安装
make -j && make install
# install path: /usr/local/erlang/bin
  1. a3) 安装 rabbitmq-server
    安装位置: /usr/local/rabbitmq
    日志位置: /usr/local/rabbitmq/var/log
yum install libtool libtool-ltdl-devel libevent-devel lua  ncurses-devel openssl-devel flexxz -d rabbitmq-server-generic-unix-3.11.5.tar.xz
tar xf rabbitmq-server-generic-unix-3.11.5.tar
mv rabbitmq_server-3.11.5 /usr/local/rabbitmq# 配置环境变量
vim /etc/profile
PATH=$PATH:/usr/local/erlang/bin
PATH=$PATH:/usr/local/rabbitmq/sbin
source /etc/profile

PROBLEM:rabbitmq no such file or directory “crypto.app”
下载 https://github.com/openssl/openssl/tags 选择 OpenSSL_1_1_1q
将下载的 openssl-OpenSSL_1_1_1j.tar.gz

tar -xzvf openssl-OpenSSL_1_1_1j.tar.gz
cd /opt/rabbitmq-server/openssl-OpenSSL_1_1_1j
# 配置
./config shared
# 编译安装
make && make install
# ----------------------- Erlang Rebuild -----------------------
cd /opt/rabbitmq-server/otp_src_25.2
make clean
# 配置
./configure --prefix=/usr/local/erlang
# 编译安装
make -j && make install
# 测试
elr
> crypto:start()

PROBLEM:warning: the VM is running with native name encoding of latin1 which may cause Elixir to malfunction as it expects utf8. Please ensure your locale is set to UTF-8 (which can be verified by running “locale” in your shell)

vim /etc/profile
# 末尾添加
export LC_ALL=en_US.UTF-8
source /etc/profile

PROBLEM:Error: unable to perform an operation on node ‘rabbit@HOST-NAME’. Please see diagnostics information and suggestions below.

vim /etc/hosts
# IP 本机名称
xxx.xxx.xxx.xxx HOST-NAME

  1. 启动RabbitMQ服务
# 前台启动
rabbitmq-server
# 后台启动
rabbitmq-server -detached
# 查看服务状态
rabbitmqctl status
  1. 关闭RabbitMQ服务
rabbitmqctl stop
  1. 启动管理端(添加用户)插件
# 开启web管理界面
rabbitmq-plugins enable rabbitmq_management
# 检查所有插件的启用和禁用状态
# rabbitmq-plugins list
rabbitmqctl add_user admin '123456'
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin '.*' '.*' '.*'
# 重启
rabbitmqctl stop
rabbitmq-server -detached
  1. 开放服务器端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --reload
  1. 测试
curl http://127.0.0.1:15672
curl http://IP:15672
  1. 设置开机启动
  • /usr/local/rabbitmq/sbin/rabbitmq-server/usr/local/rabbitmq/sbin/rabbitmq-env 备份
  • rabbitmq-server、rabbitmq-env拷贝到对应的服务器上
    • 或者修改原先脚本,在脚本头加入 ERLANG_HOME=/usr/local/erlang/bin;将erl修改成$ERLANG_HOME/erl
  • 进入目录 cd /usr/lib/systemd/system
  • 将文件拷贝到对应的服务器上
  • 重新加载服务 systemctl daemon-reload
  • 设置为开机启动 systemctl enable rabbitmq.service
  • 查看是否已开机启动 systemctl is-enabled rabbitmq.service
  • 查看服务状态 systemctl status rabbitmq.service
  • 启用服务 systemctl enable rabbitmq.service
  • 启动服务 systemctl start rabbitmq.service
  • 停止服务 systemctl stop rabbitmq.service

附录

参考

  • install-generic-unix
  • rabbitmq config
  • RabbitMQ超详细安装教程(Linux)
  • 参考
  • 填坑参考
  • 填坑参考
  • 填坑 unable to perform an operation
  • 填坑 the VM is running with native name encoding of latin1 which may
  • 依赖 openssl

相关内容

热门资讯

打发时间一元一分红中麻将跑得快... 认准微——as099055或as022055——客服扣675434346免押%D%A
(盘点十款)1元1分正规麻将群... 正规广东红中癞子麻将,15张跑得快,一元一分群,24小时不熄火
哪里有熊猫一元一分广东麻将上下... +薇:mj08522或hz05832游戏类型:单挑,多人,亲友圈模式、秒上下,所有用户都是微信实名制...
“发慌!””清友会管清友“是陷... 网恋有风险,恋爱需谨慎!“他们”通过网页,社交软件,等形式发布有色广告,诱骗点击链接下载APP,随即...