热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

rabbitmq源码安装yum安装并加入开机自启动

安装rabbitMqerlangmq版本对应关系https:www.rabbitmq.comwhich-erlang.html如果erlang是源码安装,则对应的rabbitmq也

安装rabbitMq

erlang mq 版本对应关系

https://www.rabbitmq.com/which-erlang.html

如果erlang 是源码安装,则对应的rabbitmq 也需要用源码安装的方式进行

如果erlang 是采用yum方式安装,则rabbitmq 可以采用rpm的形式进行安装,如果erlang是源码方式安装,则rabbitmq 采用rpm方式安装会一直报错,显示找不到erlang

rabbitmq 3.8.8 的版本貌似有问题,mq可以正常启动,但是stomp不能启用

如果安装mq 建议采用源码安装的方式进行


安装依赖环境

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson

源码安装RabbitMq


源码安装erlang


下载erlang

erlang 全版本下载地址:

http://erlang.org/download/

下载以下版本

http://erlang.org/download/otp_src_21.3.tar.gz


安装erlang

tar -zxvf otp_src_21.3.tar.gz # 解压
./configure --prefix=/home/local/erlang --with-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac
make && make install

配置环境变量

配置Erlang的环境变量
vim /etc/profile
export PATH=$PATH:/home/local/erlang/bin
source /etc/profile

验证



  1. 测试Erlang安装是否成功,输入erl,查看版本信息



  2. 测试输入hello.,在控制台上看到输入hello,之后退出输入halt().,Erlang环境安装完


    源码安装RabbitMq




下载

https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.7.21

下载rabbitmq-server-generic-unix-3.7.21.tar.xz 版本


解压

tar -xvf rabbitmq-server-generic-unix-3.7.21.tar.xz
#解压后目录
/home/local/rabbitmq/rabbitmq_server-3.7.21

配置

配置环境变了

vim /etc/profile
#添加以下内容:
export PATH=$PATH:/home/local/erlang/bin
export PATH=$PATH:/home/local/rabbitmq/rabbitmq_server-3.7.21/sbin

启动

rabbitmq-server #此方式启动后,ctrl+c后服务依然在
#以后台形式启动
rabbitmq-server -detached


关闭

rabbitmqctl stop_app
或者
rabbitmqctl stop

重置

rm -rf /home/local/rabbitmq/rabbitmq_server-3.7.21/var/lib/rabbitmq/mnesia/

这个目录,为rabbitmq数据库,有时异常情况出现时,可删除该目录,重新对rabbitmq进行设置即可


查看插件

rabbitmq-plugins list

image-20210926180133649

安装插件

rabbitmq-plugins enable rabbitmq_management rabbitmq_stomp rabbitmq_web_stomp

卸载插件

rabbitmq-plugins disable rabbitmq_management rabbitmq_stomp rabbitmq_web_stomp

加入启动服务

start.sh

#!/bin/bash
export PATH=$PATH:/home/local/erlang/bin
export HOME=/home/local/rabbitmq/rabbitmq_server-3.7.21/
/home/local/rabbitmq/rabbitmq_server-3.7.21/sbin/./rabbitmq-server -detached

stop.sh

#!/bin/bash
export PATH=$PATH:/home/local/erlang/bin
export HOME=/home/local/rabbitmq/rabbitmq_server-3.7.21/
/home/local/rabbitmq/rabbitmq_server-3.7.21/sbin/./rabbitmqctl stop

打开目录 cd /usr/lib/systemd/system/,在此目录下添加

rabbitmq.service

[Unit]
Description=rabbitmq-server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/home/local/rabbitmq/rabbitmq_server-3.7.21/start.sh
ExecStop=/home/local/rabbitmq/rabbitmq_server-3.7.21/stop.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target

创建软连接

ln -s `pwd`/rabbitmq.service /etc/systemd/system/multi-user.target.wants

重新加载服务

systemctl daemon-reload

开机自启动

systemctl enable rabbitmq.service

加入系统服务之后

systemctl start rabbitmq # 开启
systemctl stop rabbitmq # 关闭
systemctl status rabbitmq # 查看状态

yum安装


yum安装erlang


编辑文件

vi /etc/yum.repos.d/rabbitmq_erlang.repo

文件内容修改如下:

# In /etc/yum.repos.d/rabbitmq_erlang.repo
[rabbitmq_erlang]
name=rabbitmq_erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
[rabbitmq_erlang-source]
name=rabbitmq_erlang-source
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

安装

yum install erlang

此方式安装rabbitmq 成功


rpm安装rabbitMq


安装socat

sudo yum install -y socat

下载 RabbitMQ

https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.8.8


安装RabbitMQ

sudo rpm -Uvh rabbitmq-server-3.8.8-1.el6.noarch.rpm

image-20210926135655960


启动RabbitMQ服务

\#启动服务
sudo systemctl start rabbitmq-server
\#查看状态
sudo systemctl status rabbitmq-server
\#设置为开机启动
sudo systemctl enable rabbitmq-server

RabbitMQ配置


添加用户并授权

\#添加用户
sudo rabbitmqctl add_user admin pwd
\#设置用户角色
sudo rabbitmqctl set_user_tags admin administrator
\#tag(administrator,monitoring,policymaker,management)
\#设置用户权限(接受来自所有Host的所有操作)
sudo rabbitmqctl set_permissions -p "/" admin '.*' '.*' '.*'
\#查看用户权限
sudo rabbitmqctl list_user_permissions admin

配置用户远程访问

\#修改配置文件
sudo vi /etc/rabbitmq/rabbitmq.config
\#保存以下内容
[
{rabbit, [{tcp_listeners, [5672]}, {loopback_users, ["admin"]}]}
].

重启服务并开放端口



  • 重启服务

sudo systemctl restart rabbitmq-server


  • 开放端口

\#开放端口
sudo firewall-cmd --add-port=5672/tcp --permanent
\#重新加载防火墙配置
sudo firewall-cmd --reload

四、备注


RabbitMQ常用命令

\# 添加用户
sudo rabbitmqctl add_user


\# 删除用户
sudo rabbitmqctl delete_user
\# 修改用户密码
sudo rabbitmqctl change_password
\# 清除用户密码(该用户将不能使用密码登陆,但是可以通过SASL登陆如果配置了SASL认证)
sudo rabbitmqctl clear_password
\# 设置用户tags(相当于角色,包含administrator,monitoring,policymaker,management)
sudo rabbitmqctl set_user_tags
\# 列出所有用户
sudo rabbitmqctl list_users
\# 创建一个vhosts
sudo rabbitmqctl add_vhost
\# 删除一个vhosts
sudo rabbitmqctl delete_vhost
\# 列出vhosts
sudo rabbitmqctl list_vhosts [ ...]
\# 针对一个vhosts给用户赋予相关权限;
sudo rabbitmqctl set_permissions [-p ]
\# 清除一个用户对vhosts的权限;
sudo rabbitmqctl clear_permissions [-p ]
\# 列出哪些用户可以访问该vhosts;
sudo rabbitmqctl list_permissions [-p ]
\# 列出用户访问权限;
sudo rabbitmqctl list_user_permissions

安装插件

rabbitmq-plugins enable rabbitmq_management rabbitmq_stomp rabbitmq_web_stomp

卸载插件

rabbitmq-plugins disable rabbitmq_management rabbitmq_stomp rabbitmq_web_stomp

查看插件安装情况

rabbitmq-plugins list

image-20210926142307734


卸载RabbitMq

rpm -qa |grep rabbit
rpm -e rabbitmq-server-3.8.8-1.el6.noarch

image-20210926142407031


本文参考

https://www.rabbitmq.com/download.html

https://github.com/judasn/Linux-Tutorial/blob/master/RabbitMQ-Install-And-Settings.md

http://blog.csdn.net/zyz511919766/article/details/42292655



推荐阅读
  • 在CentOS上部署和配置FreeSWITCH
    在CentOS系统上部署和配置FreeSWITCH的过程涉及多个步骤。本文详细介绍了从源代码安装FreeSWITCH的方法,包括必要的依赖项安装、编译和配置过程。此外,还提供了常见的配置选项和故障排除技巧,帮助用户顺利完成部署并确保系统的稳定运行。 ... [详细]
  • 兆芯X86 CPU架构的演进与现状(国产CPU系列)
    本文详细介绍了兆芯X86 CPU架构的发展历程,从公司成立背景到关键技术授权,再到具体芯片架构的演进,全面解析了兆芯在国产CPU领域的贡献与挑战。 ... [详细]
  • 为什么多数程序员难以成为架构师?
    探讨80%的程序员为何难以晋升为架构师,涉及技术深度、经验积累和综合能力等方面。本文将详细解析Tomcat的配置和服务组件,帮助读者理解其内部机制。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 在配置Nginx的SSL证书后,虽然HTTPS访问能够正常工作,但HTTP请求却会遇到400错误。本文详细解析了这一问题,并提供了Nginx配置的具体示例。此外,还深入探讨了DNS服务器证书、SSL证书的申请与安装流程,以及域名注册、查询方法和CDN加速技术的应用,帮助读者全面了解相关技术细节。 ... [详细]
  • Keepalived 提供了多种强大且灵活的后端健康检查机制,包括 HTTP_GET、SSL_GET、TCP_CHECK、SMTP_CHECK 和 MISC_CHECK 等多种检测方法。这些健康检查功能确保了高可用性环境中的服务稳定性和可靠性。通过合理配置这些检查方式,可以有效监测后端服务器的状态,及时发现并处理故障,从而提高系统的整体性能和可用性。 ... [详细]
  • 体积小巧的vsftpd与pureftpd Docker镜像在Unraid系统中的详细配置指南:支持TLS加密及IPv6协议
    本文详细介绍了如何在Unraid系统中配置体积小巧的vsftpd和Pure-FTPd Docker镜像,以支持TLS加密和IPv6协议。通过这些配置,用户可以实现安全、高效的文件传输服务,适用于各种网络环境。配置过程包括镜像的选择、环境变量的设置以及必要的安全措施,确保了系统的稳定性和数据的安全性。 ... [详细]
  • 本文详细介绍了在Linux系统上编译安装MySQL 5.5源码的步骤。首先,通过Yum安装必要的依赖软件包,如GCC、GCC-C++等,确保编译环境的完备。接着,下载并解压MySQL 5.5的源码包,配置编译选项,进行编译和安装。最后,完成安装后,进行基本的配置和启动测试,确保MySQL服务正常运行。 ... [详细]
  • 在使用 `requests` 库进行 HTTP 请求时,如果遇到 `requests.exceptions.SSLError: HTTPSConnectionPool` 错误,通常是因为 SSL 证书验证失败。解决这一问题的方法包括:检查目标网站的 SSL 证书是否有效、更新本地的 CA 证书库、禁用 SSL 验证(不推荐用于生产环境)或使用自定义的 SSL 上下文。此外,确保 `requests` 库和相关依赖项已更新到最新版本,以避免潜在的安全漏洞。 ... [详细]
  • 本文详细介绍了使用响应文件在静默模式下安装和配置Oracle 11g的方法。硬件要求包括:内存至少1GB,具体可通过命令`grep -i memtotal /proc/meminfo`进行检查。此外,还提供了详细的步骤和注意事项,确保安装过程顺利进行。 ... [详细]
  • 本文提供了 RabbitMQ 3.7 的快速上手指南,详细介绍了环境搭建、生产者和消费者的配置与使用。通过官方教程的指引,读者可以轻松完成初步测试和实践,快速掌握 RabbitMQ 的核心功能和基本操作。 ... [详细]
  • Nginx入门指南:从零开始掌握基础配置与优化技巧
    Nginx入门指南:从零开始掌握基础配置与优化技巧 ... [详细]
  • 在使用 PHP 通过 SSL 安全连接到 MySQLi 数据库服务器时,遇到了一些技术难题。我的环境包括一个 Web 服务器和一个数据库服务器,两者均使用 OpenSSL 生成了证书。尽管证书内容一致,但在尝试从 Web 服务器使用 `mysql` 命令进行连接时,仍然遇到了问题。为了确保连接的安全性和稳定性,需要进一步检查证书配置和 PHP 的 SSL 设置,以排除潜在的配置错误或兼容性问题。 ... [详细]
  • 在Linux系统中将Python更新至3.7版本的方法如下:首先,从Python官方网站下载Python 3.7的安装包,例如使用 `wget` 命令下载 `Python-3.7.3.tgz`。其他版本的下载链接也可从Python官网获取。接下来,解压下载的文件并进入解压后的目录,运行配置脚本和编译命令以完成安装。确保在安装过程中添加Python 3.7到系统的环境变量中,以便全局使用。此外,建议检查当前系统的Python版本,以避免冲突。 ... [详细]
author-avatar
茴忆是抹不掉的伤
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有