Ubuntu 20.04 (Focal Fossa) 上安装RabbitMQ和Erlang,并配置管理员,并且修改数据目录

本文主要是介绍Ubuntu 20.04 (Focal Fossa) 上安装RabbitMQ和Erlang,并配置管理员,并且修改数据目录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本脚本适用于在Ubuntu 20.04 (Focal Fossa) 上在线快速安装RabbitMQ和Erlang。

快速安装脚本:

#!/bin/shsudo apt-get install curl gnupg apt-transport-https -y## Team RabbitMQ's main signing key
curl -1sLf "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | sudo gpg --dearmor | sudo tee /usr/share/keyrings/com.rabbitmq.team.gpg > /dev/null
## Community mirror of Cloudsmith: modern Erlang repository
curl -1sLf https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg > /dev/null
## Community mirror of Cloudsmith: RabbitMQ repository
curl -1sLf https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/rabbitmq.9F4587F226208342.gpg > /dev/null## Add apt repositories maintained by Team RabbitMQ
sudo tee /etc/apt/sources.list.d/rabbitmq.list <<EOF
## Provides modern Erlang/OTP releases
##
deb [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu focal main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu focal main# another mirror for redundancy
deb [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa2.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu focal main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa2.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu focal main## Provides RabbitMQ
##
deb [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu focal main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu focal main# another mirror for redundancy
deb [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa2.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu focal main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa2.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu focal main
EOF## Update package indices
sudo apt-get update -y## Install Erlang packages
sudo apt-get install -y erlang-base \erlang-asn1 erlang-crypto erlang-eldap erlang-ftp erlang-inets \erlang-mnesia erlang-os-mon erlang-parsetools erlang-public-key \erlang-runtime-tools erlang-snmp erlang-ssl \erlang-syntax-tools erlang-tftp erlang-tools erlang-xmerl## Install rabbitmq-server and its dependencies
sudo apt-get install rabbitmq-server -y --fix-missing

赋予可执行权限
chmod +x a.sh
执行
./a.sh

就可以了

安装RabbitMQ和Erlang后,您可以执行一些基本的操作来确保RabbitMQ正常运行,并开始使用它。以下是一些后续步骤:

  1. 检查RabbitMQ服务状态
    确认RabbitMQ服务正在运行。在终端中运行以下命令:

    sudo systemctl status rabbitmq-server
    

    这个命令会显示RabbitMQ服务的状态。

  2. 启用RabbitMQ管理插件(如果需要):
    RabbitMQ附带一个管理插件,它提供了一个基于Web的用户界面,用于管理和监视您的RabbitMQ服务器。要启用它,请运行:

    sudo rabbitmq-plugins enable rabbitmq_management
    

    然后,您可以在浏览器中访问 http://your_server_ip:15672 来访问管理界面。

  3. 创建用户和设置权限(如果需要):
    默认情况下,RabbitMQ创建了一个用户名为 guest 的用户,密码也是 guest,但这个用户只能在本地访问。您可能想要创建一个新的用户:

    sudo rabbitmqctl add_user myuser mypassword
    sudo rabbitmqctl set_user_tags myuser administrator
    sudo rabbitmqctl set_permissions -p / myuser ".*" ".*" ".*"
    

    这些命令创建了一个新用户,并给予管理员权限和对所有资源的访问权限。

  4. 测试RabbitMQ
    一旦一切设置就绪,您可以开始测试RabbitMQ。这可能涉及到使用RabbitMQ客户端库在您的应用程序中发送和接收消息。

  5. 阅读RabbitMQ文档
    要充分利用RabbitMQ,建议您阅读官方文档,了解其架构、概念和最佳实践。RabbitMQ文档可以在官方网站找到。

  6. 定期维护和监控
    保持对RabbitMQ实例的定期监控和维护,确保其稳定运行。可以使用RabbitMQ管理界面来监控队列、连接和其他重要指标。

如果您在使用RabbitMQ的过程中遇到任何问题或者有任何疑问,随时可以寻求帮助。RabbitMQ社区也非常活跃,是一个寻求帮助和最佳实践的好地方。
您的配置步骤看起来是正确的。这里是您执行的操作的简要概述:

  1. 添加用户
    您创建了一个名为 aaa 的新用户,密码为 xxxx

    sudo rabbitmqctl add_user aaa xxxx
    
  2. 设置用户角色
    您为 aaa 用户分配了 administrator 角色,这将允许该用户访问RabbitMQ的管理控制台并执行管理任务:

    sudo rabbitmqctl set_user_tags aaa administrator
    
  3. 设置权限
    您为 aaa 用户设置了对所有资源的全权限,这意味着该用户可以在RabbitMQ服务器上创建、读取、写入和删除任何队列、交换机等:

    sudo rabbitmqctl set_permissions -p / aaa ".*" ".*" ".*"
    

现在,您的用户 aaa 应该能够完全访问和管理RabbitMQ服务器。您可以通过访问RabbitMQ的管理界面(通常位于 http://your_server_ip:15672)并使用 aaa 用户名和您设置的密码登录来验证这一点。

如果您在执行这些步骤或以后使用RabbitMQ时遇到任何问题,请随时向我寻求帮助。
如果您想将RabbitMQ的数据目录更改为 /app/rabbit/mnesia,以下是相应的步骤。请确保遵循这些步骤以避免数据丢失和服务中断:

更改RabbitMQ数据目录

  1. 创建新目录并设置权限
    首先,创建新的数据目录 /app/rabbit/mnesia 并设置正确的权限:

    sudo mkdir -p /app/rabbit/mnesia
    sudo chown -R rabbitmq:rabbitmq /app/rabbit
    
  2. 更新RabbitMQ环境配置文件
    修改 /etc/rabbitmq/rabbitmq-env.conf 文件,指定新的Mnesia(RabbitMQ数据库)目录。如果这个文件不存在,您可能需要创建它:

    echo 'MNESIA_BASE=/app/rabbit/mnesia' | sudo tee -a /etc/rabbitmq/rabbitmq-env.conf
    
  3. 拷贝数据到新目录
    在停止RabbitMQ服务之前,先将现有的数据拷贝到新目录中:

    sudo cp -a /var/lib/rabbitmq/mnesia/* /app/rabbit/mnesia
    
  4. 停止并重启RabbitMQ服务
    停止RabbitMQ服务,然后重新启动以应用新的配置:

    sudo systemctl stop rabbitmq-server
    sudo systemctl start rabbitmq-server
    
  5. 验证服务状态
    检查RabbitMQ服务的状态,以确保服务已正确启动并使用了新的数据目录:

    sudo systemctl status rabbitmq-server
    

注意事项

  • 数据备份:在进行任何更改之前,务必备份 /var/lib/rabbitmq/mnesia/ 目录中的所有数据。
  • 服务可用性:如果您的环境中部署了RabbitMQ集群,请考虑集群的高可用性。在高可用集群中,您应该逐个节点进行更改,以免影响整个服务。
  • 测试环境验证:在生产环境中应用更改之前,建议您在测试环境中进行验证,以避免潜在的服务中断。

按照这些步骤,您应该能够安全地更改RabbitMQ的数据目录到 /app/rabbit/mnesia。如果在执行这些操作时遇到任何问题,或者需要其他帮助,请随时联系我。

这篇关于Ubuntu 20.04 (Focal Fossa) 上安装RabbitMQ和Erlang,并配置管理员,并且修改数据目录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

hadoop开启回收站配置

开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。 开启回收站功能参数说明 (1)默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。 (2)默认值fs.trash.checkpoint.interval = 0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。