005 CentOS 7.9 RabbitMQ安装及配置

2024-06-01 23:20

本文主要是介绍005 CentOS 7.9 RabbitMQ安装及配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

https://github.com/rabbitmq/rabbitmq-server/releases
https://www.rabbitmq.com/docs/download
https://packagecloud.io/rabbitmq/rabbitmq-server
https://www.erlang-solutions.com/downloads/

https://www.erlang.org/

文章目录

    • 卸载erl
    • erl版本安装与下载版本不匹配
    • 正式安装配置
    • 下载延时插件

卸载erl

在 CentOS 7.9 上卸载 Erlang 并清除缓存,您可以按照以下步骤操作:

卸载 Erlang
卸载 Erlang 软件包:
打开终端,并使用以下命令卸载 Erlang:

sudo yum remove erlang

如果有其他与 Erlang 相关的软件包,您也可以使用 yum 将其卸载。

卸载 Erlang Solutions 仓库(如果已安装):
如果您之前添加了 Erlang Solutions 仓库,您也可以将其卸载:

sudo yum remove erlang-solutions-repo

清除缓存
在卸载 Erlang 之后,您可能还想要清除 yum 缓存和其他相关缓存。

清除 YUM 缓存:
使用以下命令来清除 yum 缓存:

sudo yum clean all

这个命令会清除所有已下载的包和旧的 headers。

删除缓存的 RPM 文件:
如果您还想删除 /var/cache/yum 目录下缓存的 RPM 文件,可以使用:

sudo rm -rf /var/cache/yum

注意:这将删除所有 yum 缓存的 RPM 包,不仅仅是与 Erlang 相关的。

删除其他可能的 Erlang 遗留文件:
有时,卸载过程可能不会删除所有的配置文件或数据文件。如果您想彻底删除 Erlang 的所有痕迹,可以手动检查并删除这些文件。例如:

sudo find / -name "*erlang*" -type f -delete

警告:这个 find 命令非常强大,并且如果使用不当可能会删除重要文件。请务必谨慎使用,并确保您知道自己在做什么。通常,只删除 /etc/ 和 /var/ 下的 Erlang 配置文件就足够了。

验证卸载
完成上述步骤后,您可以使用以下命令来验证 Erlang 是否已成功卸载:

erl -version

如果 Erlang 已成功卸载,该命令应该会显示一个错误消息,指示 erl 命令未找到。

which erl 
yum list installed | grep erlang
sudo yum remove $(yum list installed | grep erlang | awk '{print $1}')

这个命令的工作原理如下:

yum list installed | grep erlang:列出所有已安装的包,并通过 grep 过滤出包含 “erlang” 的包。
awk ‘{print $1}’:使用 awk 提取每行的第一个字段,即包名。
$(…):命令替换,执行括号内的命令,并将其输出作为外部命令的参数。
sudo yum remove:使用提取出的包名列表作为参数,执行卸载操作。
请注意,在执行此命令之前,请确保理解其将卸载所有与 Erlang 相关的包,并且这可能对依赖 Erlang 的其他软件或服务产生影响。

为了确认 Erlang 是否已经完全卸载,你可以按照以下步骤操作:

检查 Erlang 包是否已安装:
你可以再次运行 yum list installed | grep erlang 来确认是否还有 Erlang 相关的包被安装。
检查 /usr/bin/erl 文件:
既然错误信息提示 /usr/bin/erl 找不到,你可以确认一下这个文件是否真的不存在了,使用 ls /usr/bin/erl 命令查看。
清除 shell 的哈希表:
如果你的 shell 是 bash,运行 hash -r 可以清除已缓存的命令位置,这样当你再次尝试运行 erl 时,shell 会重新搜索 PATH 环境变量中指定的目录来找到该命令。
检查 PATH 环境变量:
确认你的 PATH 环境变量中没有包含指向已卸载 Erlang 的路径。你可以通过 echo $PATH 来查看当前的 PATH 设置。
重启终端或系统:
有时简单地重启你的终端会话或整个系统可以清除任何残留的引用或缓存。
检查其他配置文件:
有时 .bashrc、.bash_profile、.profile 或其他 shell 初始化脚本中可能包含了对 Erlang 的引用。检查这些文件,并删除或注释掉任何与 Erlang 相关的行。
如果你完成了上述步骤,并且确认 Erlang 已经完全从你的系统中移除,但问题仍然存在,那么可能是其他系统配置或第三方软件导致的问题。不过,通常情况下,清除 shell 的哈希表和检查环境变量就可以解决问题。

rpm -ql esl-erlang _25.0.3_1~centos~7_x86_64.rpm | grep erl
ls /usr/lib64/erlang
ls /usr/local/lib/erlang
export ERLANG_HOME=/usr/lib64/erlang  
export PATH=$PATH:$ERLANG_HOME/bin
sudo find / -name "*erlang*"
#这里的 -exec 选项允许你对 find 命令找到的每个文件或目录执行指定的命令。在这个例子中,rm -rf {} 是被执行的命令,其中 {} 是一个占位符,代表 find 命令找到的每个文件或目录的路径。\; 表示 -exec 参数的结束。sudo find / -name "*erlang*" -exec rm -rf {} \;

确定Shell类型

echo $SHELL

编辑对应的Shell配置文件:
如果使用的是 bash,可以编辑 bash_completion.sh 或创建一个新的 .sh 脚本(例如 erlang.sh)来设置Erlang相关的环境变量。
如果使用的是 csh 或 tcsh,可以编辑 csh.local 或创建一个新的 .csh 脚本。
设置Erlang环境变量:
在选定的脚本文件中,需要添加Erlang的环境变量。例如,如果Erlang安装在 /usr/lib64/erlang,可以添加如下内容:
对于 bash:

export ERLANG_HOME=/usr/lib64/erlang  
export PATH=$PATH:$ERLANG_HOME/bin

对于 csh 或 tcsh:

setenv ERLANG_HOME /usr/lib64/erlang  
set path = ($path $ERLANG_HOME/bin)

使配置生效:
对于 bash,可以通过运行 source /etc/profile.d/脚本名.sh 或重新打开一个终端窗口来使更改生效。
对于 csh 或 tcsh,运行 source /etc/profile.d/脚本名.csh 或重新打开终端。

测试Erlang:
输入 erl 来测试Erlang是否能够正确启动。
请注意,如果Erlang安装在非标准路径下,需要确保该路径是正确的,并将其替换到上述环境变量设置中。

如果不确定Erlang的确切安装位置,可以使用之前提到的 find 命令来搜索 erl 可执行文件的位置,或者使用 rpm -ql 命令来列出Erlang软件包的安装文件,从而确定其安装路径。

此外,如果系统是多用户环境,建议在用户的个人Shell配置文件中设置这些环境变量(如 ~/.bashrc、~/.bash_profile、~/.cshrc 等),以避免影响其他用户的环境。如果您是系统管理员,并且希望为所有用户设置这些环境变量,则可以按照上述步骤在 /etc/profile.d/ 目录下进行操作。

erl版本安装与下载版本不匹配

如果您已经下载了Erlang 26的版本,并且确信安装过程中没有出现问题,但erl -version命令仍然显示Erlang版本为14.2.5,那么可能是以下几个原因导致的:

多个Erlang版本冲突:您的系统中可能安装了多个版本的Erlang,而erl命令可能仍然指向旧版本的Erlang。
环境变量未正确设置:尽管您在.bashrc中添加了Erlang 26的bin目录到PATH环境变量,但这个变更可能没有被正确应用,或者您可能在另一个shell环境中,该环境没有加载新的.bashrc设置。
安装问题:Erlang 26可能没有正确安装,或者安装后的可执行文件没有被放置在预期的目录中。
为了解决这个问题,您可以尝试以下步骤:

确认Erlang 26的安装位置:检查Erlang 26是否确实安装在/usr/tools/erlang目录下。您可以通过ls /usr/tools/erlang命令来确认。
检查PATH环境变量:在终端中输入echo $PATH来检查当前的PATH环境变量。确保/usr/tools/erlang/bin在PATH中的位置优先于旧版本Erlang的路径。
重新加载.bashrc:如果您在.bashrc中做了更改,可以尝试重新加载它,方法是运行source ~/.bashrc或者在新的终端会话中检查。
使用绝对路径运行Erlang:尝试使用Erlang 26的绝对路径来运行erl -version,例如/usr/tools/erlang/bin/erl -version,以确认是否是路径问题。
卸载旧版本的Erlang:如果系统中存在多个Erlang版本,并且您确定不再需要旧版本,可以考虑卸载它,以避免任何混淆。
重新登录或重启:有时候,简单地重新登录您的用户账户或重启系统可以确保所有的环境变量更改生效。

# 查找并删除可能存在的Erlang相关的其他文件和目录  
sudo find / -name "*erlang*" -type d -exec rm -rf {} +
使用软链接:
如果 RabbitMQ 的安装脚本无法识别非标准路径下的 Erlang,您可以尝试在 /usr/bin 或其他在系统 PATH 中的目录下创建指向 /usr/tools/erlang/bin/erl 的软链接。例如:
bash
sudo ln -s /usr/tools/erlang/bin/erl /usr/bin/erl

正式安装配置

  1. 安装 Erlang
    确保移除旧版本的 Erlang(如果有),然后安装最新的符合 RabbitMQ 版本要求的 Erlang:
sudo yum remove erlang
sudo yum install -y epel-release
sudo yum install -y https://packages.erlang-solutions.com/erlang-solutions-2.0-1.noarch.rpm
sudo yum install -y erlang
  1. 配置 yum 仓库
    创建 yum 仓库配置文件来确保使用官方仓库:
sudo vi /etc/yum.repos.d/rabbitmq_erlang.repo

添加以下内容:

[rabbitmq_erlang]
name=RabbitMQ Erlang Repository
baseurl=https://packages.erlang-solutions.com/rpm/centos/7/x86_64/
gpgcheck=1
gpgkey=https://packages.erlang-solutions.com/rpm/erlang_solutions.asc
enabled=1[rabbitmq_rabbitmq-server]
name=RabbitMQ Server
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearch
gpgcheck=1
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
enabled=1
  1. 清理并更新 yum 缓存
sudo yum clean all
sudo yum makecache
  1. 安装 RabbitMQ
    使用 yum 安装 RabbitMQ:
sudo yum install -y rabbitmq-server
  1. 启动 RabbitMQ 服务并设置开机自启动
sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server
  1. 配置防火墙
    确保防火墙允许 RabbitMQ 的端口(5672 和 15672):
sudo firewall-cmd --permanent --add-port=5672/tcp
sudo firewall-cmd --permanent --add-port=15672/tcp
sudo firewall-cmd --reload
  1. 启用 RabbitMQ 管理插件
    启用 RabbitMQ 管理插件以便通过浏览器进行管理:
sudo rabbitmq-plugins enable rabbitmq_management
  1. 创建管理员用户并配置权限
    创建新的管理员用户,以允许远程访问:
sudo rabbitmqctl add_user myuser mypassword
sudo rabbitmqctl set_user_tags myuser administrator
sudo rabbitmqctl set_permissions -p / myuser ".*" ".*" ".*"
  1. 配置环境变量(可选)
    如果需要配置环境变量,编辑 ~/.bash_profile 或 ~/.bashrc 文件:
export PATH=$PATH:/usr/lib/rabbitmq/bin

然后应用更改:

source ~/.bash_profile
  1. 访问 RabbitMQ 管理界面
    在浏览器中访问 http://<your_server_ip>:15672/,使用创建的用户 myuser 和 mypassword 登录。

通过这些步骤,你应该能够在 CentOS 7.9 上成功安装并配置 RabbitMQ 最新版本,并且能够远程访问和管理 RabbitMQ 实例。如果在执行上述步骤时遇到问题,请检查每个步骤的执行结果,并确保网络连接正常。

下载延时插件

  1. 下载 RabbitMQ 延迟消息插件
    从 RabbitMQ 的 GitHub 页面下载插件:
    https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases
wget https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases/download/v3.11.4/rabbitmq_delayed_message_exchange-3.11.4.ez
  1. 将插件移动到 RabbitMQ 的插件目录
    将下载的插件文件移动到 RabbitMQ 的插件目录:
sudo mv rabbitmq_delayed_message_exchange-3.11.4.ez /usr/lib/rabbitmq/lib/rabbitmq_server-3.12.13/plugins/
  1. 启用插件
    启用 RabbitMQ 延迟消息插件:
sudo rabbitmq-plugins enable rabbitmq_delayed_message_exchange
  1. 重启 RabbitMQ 服务
    重启 RabbitMQ 服务以应用更改:
sudo systemctl restart rabbitmq-server
  1. 验证插件是否启用
    你可以使用以下命令查看启用的插件列表,确保延迟消息插件已启用:
sudo rabbitmq-plugins list
  1. 访问 RabbitMQ 管理界面
    在浏览器中访问 http://<your_server_ip>:15672/,使用你的管理员用户 myuser 和 mypassword 登录,并验证插件配置。

这篇关于005 CentOS 7.9 RabbitMQ安装及配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1022386

相关文章

QT Creator配置Kit的实现示例

《QTCreator配置Kit的实现示例》本文主要介绍了使用Qt5.12.12与VS2022时,因MSVC编译器版本不匹配及WindowsSDK缺失导致配置错误的问题解决,感兴趣的可以了解一下... 目录0、背景:qt5.12.12+vs2022一、症状:二、原因:(可以跳过,直奔后面的解决方法)三、解决方

SpringBoot路径映射配置的实现步骤

《SpringBoot路径映射配置的实现步骤》本文介绍了如何在SpringBoot项目中配置路径映射,使得除static目录外的资源可被访问,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一... 目录SpringBoot路径映射补:springboot 配置虚拟路径映射 @RequestMapp

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

spring AMQP代码生成rabbitmq的exchange and queue教程

《springAMQP代码生成rabbitmq的exchangeandqueue教程》使用SpringAMQP代码直接创建RabbitMQexchange和queue,并确保绑定关系自动成立,简... 目录spring AMQP代码生成rabbitmq的exchange and 编程queue执行结果总结s

mysql5.7.15winx64配置全过程

《mysql5.7.15winx64配置全过程》文章详细介绍了MySQL5.7.15免安装版的配置步骤,包括解压安装包、设置环境变量、修改配置文件、初始化数据目录、安装服务、启动数据库、登录及密码修改... 目录前言一、首先下载安装包二、安android装步骤1.第一步解压文件2.配置环境变量3.复制my-

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知