CentOS7上面一键部署rabbitmq的简单方法
1. rabbitmq的安装部署比redis之类的要麻烦一些. 主要是他是基于erlang写的 而不是基于c或者是c++写的
2. 很多时候编译需要添加很多组件, 但是一些机器可能不会让添加这么多的组建进行处理. 所以得换一个比较简单的方法执行.
3. 首先在一台能够上网, 能够安装yum的机器上面安装 rabbitmq 必须要的组件 注意 我这边选择的机器是 CentOS7 发现 编译出来的文件放到 CentOS8上面启动会失败.
yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc
4. 然后下载 erlang和rabbitmq的 源码tar包.
注意 我这次将 源码包放到了
/opt/apps/rabbitmq3.7.12/ 目录下面
其中 erlang的在这个目录下面的作为二级目录存在. 然后 rabbitmq 直接作为一个完整文件夹存在.
这个目录很关键, 不然那移动了无法使用,.
http://erlang.org/download/otp_src_21.2.tar.gz
https://github-production-release-asset-2e65be.s3.amazonaws.com/924551/48b04b00-3118-11e9-8972-ce191046d204?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20201229%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20201229T082447Z&X-Amz-Expires=300&X-Amz-Signature=28e656748cf46508ff5d48035fc9e8c2f35e0c0bc18bc379ef1aaf23054713a7&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=924551&response-content-disposition=attachment%3B%20filename%3Drabbitmq-server-generic-unix-3.7.12.tar.xz&response-content-type=application%2Foctet-stream
注意这个可以参照 rabbitmq 与 erlang兼容支持的版本, 我这边直接下了这个版本进行.
5. 解压缩之后在 erlang和rabbitmq 里面执行相关的安装
注意 configure 的时候 不要加任何参数, 避免将安装后的文件 转移到其他目录.
configure 之后 执行make 操作.
6. 将 erlang 目录下面的 bin 和 lib 之外的文件夹移除. 缩小文件件大小.
文件目录以及效果为:

整个rabbitmq 的目录为:

7. 然后验证服务能否启动, 编译安装的东西比较全, 应该可以启动成功
注意可能没有 libtinfo.so.5 这个文件夹, 建议从 /usr/lib64/ 下面将文件放置到如下目录
验证了下 ubuntu1804和 centos8 还需要将这个文件:libcrypto.so.10 一起放进来.
/opt/apps/rabbitmq3.7.12/otp_src_21.2/lib
8. 可以编写一个文件 第一步 设置 环境变量相关信息
vim /opt/apps/rabbitmq3.7.12/.bashrc # .bashrc # Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
export PATH=$PATH:/opt/apps/rabbitmq3.7.12/otp_src_21.2/bin:/opt/apps/rabbitmq3.7.12/sbin:/opt/apps/rabbitmq3.7.12/otp_src_21.2/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/apps/rabbitmq3.7.12/otp_src_21.2/lib
# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER= # User specific aliases and functions
第二步 编写一个自动启动的 初始化脚本
cd /opt/apps/rabbitmq3.7.12
scp .bashrc ~/
source ~/.bashrc
#ln -s /opt/apps/rabbitmq3.7.12/otp_src_21.2/lib/libtinfo.so.5 /usr/lib64/libtinfo.so.5
cd /opt/apps/rabbitmq3.7.12
rabbitmq-server -detached
sleep 10
rabbitmqctl add_user admin Test1127
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin '.*' '.*' '.*'
rabbitmq-plugins enable rabbitmq_management
给这个文件赋予执行权限, 并且一起打包.
[gscloud@k8smaster apps]$ pwd
/opt/apps
[gscloud@k8smaster apps]$ ll
total 116328
drwxr-xr-x 12 gscloud gscloud 4096 Dec 30 10:12 rabbitmq3.7.12
-rw-rw-r-- 1 gscloud gscloud 119115474 Dec 30 09:50 rabbitmq3.7.12.tar.gz
[gscloud@k8smaster apps]$ tar -czvf rabbitmq3.7.12.tar.gz rabbitmq3.7.12
9. 将文件 挪到 其他服务器的 /opt/apps 目录下
注意 需要添加一个非 root用户. 并且给普通用户赋予足够的执行权限.
chown gscloud:gscloud /opt/apps -R
10 在如下目录执行命令:
/opt/apps/rabbitmq3.7.12 ./init.sh
11. 打开浏览器验证

12 设置开机启动
这个比较简单 但是为了上面能用 需要先设置一下防火墙和计划任务
systemctl disable firewalld
systemctl stop firewalld
systemctl enable crond
systemctl restart crond
修改一下计划任务 在gscloud的用户下
crontab -e
# 打开计划任务
输入:
@reboot source /home/gscloud/.bashrc && /opt/apps/rabbitmq3.7.12/sbin/rabbitmq-server -deatch 然后重启服务器验证.
CentOS7上面一键部署rabbitmq的简单方法的更多相关文章
- CentOS7.2 1511部署RabbitMQ
一.安装RabbitMQ依赖的的Erlang最小支持包(当然也可以安装完整的Erlang) 1.下载RabbitMQ的Erlang最小支持包源文件 git clone https://github.c ...
- centos7部署rabbitMq
目录 一.消息中间件相关知识... 1 1.概述... 1 2.消息中间件的组成... 1 3 消息中间件模式分类... 2 4 消息中间件的优势... 3 5 消息中间件应用场景... 4 6 消息 ...
- 将Flask应用程序部署在nginx,tornado的简单方法
来自:http://www.xuebuyuan.com/618750.html 在网上搜索了一下部署flask应用的方法,大部分是用wsgi部署在nginx上面,部署了很久,都没有成功,可能是我领悟能 ...
- Centos7 中 Node.js安装简单方法
最近,我一直对学习Node.js比较感兴趣.下面是小编给大家带来的Centos7 中 Node.js安装简单方法,在此记录一下,方便自己也方便大家,一起看看吧! 安装node.js 登陆Centos ...
- 8天入门docker系列 —— 第五天 使用aspnetcore小案例熟悉容器互联和docker-compose一键部署
这一篇继续完善webnotebook,如果你读过上一篇的内容,你应该知道怎么去挂载webnotebook日志和容器的远程访问,但是这些还远不够,webnotebook 总要和一些数据库打交道吧,比如说 ...
- CentOS7.4安装部署openstack [Liberty版] (一)
一.OpenStack简介 OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack是一个 ...
- Linux下安装部署RabbitMQ
在写正文之前先啰嗦几句,RabbitMQ(消息队列)的安装让我费了半天劲啊!足足折腾了2天,最后写下这篇文章总结下,其实很简单,但是你找不到错在哪个环节就会费很多无用功,如果你也遇到了安装erl后 怎 ...
- 转载 江南一点雨 一键部署docker
一键部署 Spring Boot 到远程 Docker 容器,就是这么秀! 不知道各位小伙伴在生产环境都是怎么部署 Spring Boot 的,打成 jar 直接一键运行?打成 war 扔到 To ...
- OpenStack Swift集群部署流程与简单使用
之前介绍了<OpenStack Swift All In One安装部署流程与简单使用>,那么接下来就说一说Swift集群部署吧. 1. 简介 本文档详细描述了使用两台PC部署一个小型Sw ...
- ASP.NET Core 一步步搭建个人网站(2)_一键部署和用户注册登录
俗话说,磨刀不费砍柴工.为了更方便的进行项目管理,我们先将个人网站项目配置一下,满足以下2个目标: VS2017中支持Git存储库,绑定Github项目,实现本地VS程序与线上Github一键代码提交 ...
随机推荐
- Rust太难?那是你没看到这套Rust语言学习万字指南!
摘要:从开发环境.语法.属性.内存管理和Unicode等五部分,为你带来一份详细的Rust语言学习的精华总结内容. 一.Rust开发环境指南 1.1 Rust代码执行 根据编译原理知识,编译器不是直接 ...
- 逼疯UE设计师,不可不知的提升产品用户体验的10个测试方法
摘要:用户体验的描述比较主观,产品功能的可用性.可靠性.性能等都会影响用户的使用体验,比如功能bug问题也会说体验不好,程序崩溃也会说体验不好,性能卡顿会说体验不好,那是不是都在用户体验测试的范围呢? ...
- 云小课|基于华为云WAF的日志运维分析,构筑设备安全的城墙
阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要:云日志服务用于收集 ...
- SyntaxError: Non-ASCII character #-*- coding:utf-8 -*-
执行python报错 /usr/bin/python2.7 /root/demo.py File "/root/demo.py", line 2 SyntaxError: Non- ...
- Github 自建一个 Helm Charts 库
前言 在构建私有的 charts 仓库之前,有几个先决条件: Helm 已经安装,版本号是 v3 拥有一个 Github 账号 初始化仓库 在 github 仓库上新建一个仓库,我这里命名为 helm ...
- print('Hello World!')的新玩法
相信很多同学入门Python的第一行代码都是print('Hello World!') print是初学者最先接触的Python函数,但是很多人可能到现在也不完全清楚它的用法. print(*obje ...
- 通过Navicate for MySQL导入SQL文件
本文介绍通过Navicate for MySQL导入SQL文件的方法. 前提条件 已安装Navicat for MySQL 和 MySql.您可以前往 Navicat官网 下载Navicat for ...
- Codeforces Round #667 (Div. 3) A - D题题解
Codeforces Round #667 (Div. 3) A - D Problem A - Yet Another Two Integers Problem https://codeforces ...
- 7 Englishi 词根
1.跟直播,跟复习课,完成作业 2. 基础差加餐,听录播 3.如何听课 4.单词学习反复多次 如何记笔记 语块的汉语意思 单词的记忆方式和固定表达 俩种方式记忆单词 语块关联记忆 基础词根词缀(6节课 ...
- freeswitch的mod_xml_curl模块
概述 freeswitch是一款简单好用的VOIP开源软交换平台. 随着fs服务的增多,每一台fs都需要在后台单独配置,耗时耗力,心力憔悴. 如果有一个集中管理配置的配置中心,统一管理所有fs的配置, ...