RabbitMQ 集群安装过程详解
一.安装Erlang
1.rabbitMQ是基于erlang的,所以首先必须配置erlang环境。
从erlang官网下载 otp 18.3。下载链接:http://erlang.org/download/otp_src_18.3.tar.gz
linux 可以使用wget http://erlang.org/download/otp_src_18.3.tar.gz 下载
2.解压并配置,编译,安装过程
# tar zvxf otp_src_18..tar.gz
# mv otp_src_18./ otp
# cd otp
# ./configure --prefix=/home/erlang --without-javac
报错:
configure: error: No curses library functions found
configure: error: /bin/sh '/root/otp/erts/configure' failed for erts
# yum -y install ncurses-devel
# ./configure --prefix=/home/erlang --without-javac
报错
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
crypto : No usable OpenSSL found
jinterface : Java compiler disabled by user
odbc : ODBC library - link check failed
orber : No C++ compiler found
ssh : No usable OpenSSL found
ssl : No usable OpenSSL found
*********************************************************************
# yum list | grep ssl
# yum install openssl-devel
# ./configure --prefix=/home/erlang --without-javac
报错
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
jinterface : Java compiler disabled by user
odbc : ODBC library - link check failed
orber : No C++ compiler found
*********************************************************************
# yum list | grep ODBC
# yum install unixODBC-devel
# ./configure --prefix=/home/erlang --without-javac
报错
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
jinterface : Java compiler disabled by user
orber : No C++ compiler found
*********************************************************************
# yum install gcc-c++
# ./configure --prefix=/home/erlang --without-javac
# make
# make install
安装完成!
测试Erlang是否安装正确
# /home/erlang/bin/erl
Erlang/OTP [erts-6.0] [source] [-bit] [async-threads:] [hipe] [kernel-poll:false] Eshell V6. (abort with ^G)
> EvenN = lists:filter (fun (N) -> N rem == end, lists:seq(,)).
[,,,,,,,,,,,,,,,,,,,,,
,,,,,,,|...]
> halt().
有几种退出Erlang Shell的方法
命令方式1:执行init:stop().
命令方式2:执行halt().
快捷键方式1:Control+C 然后选a
快捷键方式2:Control+G 然后按q
3.在PATH环境变量添加erlang的bin路径,以便执行。
vi /etc/profile ERL_HOME=/home/erlang export PATH=$PATH:/home/erlang/bin
最后 source /etc/profile
【安装总结】
从源码编译安装Erlang,有两个库或工具是必须的:
一是完整的GCC编译器环境
二是Ncurses开发库
还有一些库或工具,如果没有它们,在编译配置时会出现警告信息,而且可能不能通过配置。这些库有:
1)OpenSSL开发库
2)ODBC开发库
3)Java编译器
二.安装RabbitMQ Server
rpm -Uvh https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
配置epel源的目的是为了安装socat
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.4/rabbitmq-server-3.6.4-1.noarch.rpm
yum install rabbitmq-server-3.6.-.noarch.rpm
#使用yum安装即可把依赖包一起安装好
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.4/rabbitmq-server-3.6.4-1.noarch.rpm
rpm -ivh --nodeps rabbitmq-server-3.6.-.noarch.rpm
--nodeps 设置后,不需要重新按照erlang,否则会现在安装最新的erlang语言依赖。
创建用户、设置角色、权限控制
启动与停止服务:
# /sbin/service rabbitmq-server stop
# /sbin/service rabbitmq-server start
# rabbitmqctl status 测试正确
创建用户并设置角色:
$sudo rabbitmqctl add_user huacw
赋予其administrator角色:
$sudo rabbitmqctl set_user_tags huacw administrator
查询用户列表:
$sudo rabbitmqctl list_users
为用户赋权(huacw用户赋予 根目录权限):
$sudo rabbitmqctl set_permissions -p / huacw '.*' '.*' '.*'
该命令使用户huacw具有 / 这个 根目录 中所有资源的 配置、写、读权限以便管理其中的资源
查看用户权限:
$sudo rabbitmqctl list_user_permissions huacw
三、插件管理
查看插件列表及状态
进入/usr/lib/rabbitmq/bin
./rabbitmq-plugins list
启用插件(web管理插件为例):
./rabbitmq-plugins enable rabbitmq_management
禁用某插件
./rabbitmq-plugins disable rabbitmq_management
三.卸载
查找安装文件
#rpm -qa|grep rabbitmq
rabbitmq-server-3.6.-.noarch
卸载
#rpm -e --nodeps rabbitmq-server-3.6.-.noarch
查找erlang安装文件
#rpm -qa|grep erlang
esl-erlang-18.3-.x86_64
卸载erlang
#rpm -e --nodeps esl-erlang-18.3-.x86_64
RabbitMQ 集群安装过程详解的更多相关文章
- hadoop1.2.1+zk-3.4.5+hbase-0.94.1集群安装过程详解
hadoop1.2.1+zk-3.4.5+hbase-0.94.1集群安装过程详解 一,环境: 1,主机规划: 集群中包括3个节点:hadoop01为Master,其余为Salve,节点之间局域网连接 ...
- redis cluster 集群 安装 配置 详解
redis cluster 集群 安装 配置 详解 张映 发表于 2015-05-01 分类目录: nosql 标签:cluster, redis, 安装, 配置, 集群 Redis 集群是一个提供在 ...
- Nacos集群搭建过程详解
Nacos的单节点,也就是我们最开始使用的standalone模式,配置的数据是默认存储到内嵌的数据库derby中. 如果我们要搭建集群的话,那么肯定是不能用内嵌的数据库,不然数据无法共享.集群搭建的 ...
- k8s集群搭建过程详解
准备工作 安装CentOS7虚拟机 略 安装Docker 略 关闭CentOS7自带的防火墙服务 systemctl disable firewalld systemctl stop firewall ...
- 高可用,多路冗余GFS2集群文件系统搭建详解
高可用,多路冗余GFS2集群文件系统搭建详解 2014.06 标签:GFS2 multipath 集群文件系统 cmirror 实验拓扑图: 实验原理: 实验目的:通过RHCS集群套件搭建GFS2集群 ...
- t持久化与集群部署开发详解
Quartz.net持久化与集群部署开发详解 序言 我前边有几篇文章有介绍过quartz的基本使用语法与类库.但是他的执行计划都是被写在本地的xml文件中.无法做集群部署,我让它看起来脆弱不堪,那是我 ...
- 深入浅出—Redis集群的相关详解
前言: 这篇文章主要介绍了Redis集群的相关,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值. 注意!要求使用的都是redis3.0以上的版本,因为3.0以上增加了red ...
- RabbitMQ集群安装配置+HAproxy+Keepalived高可用
RabbitMQ集群安装配置+HAproxy+Keepalived高可用 转自:https://www.linuxidc.com/Linux/2016-10/136492.htm rabbitmq 集 ...
- 个人用户永久免费,可自动升级版Excel插件,使用VSTO开发,Excel催化剂安装过程详解及安装失败解决方法
因Excel催化剂用了VSTO的开发技术,并且为了最好的用户体验,用了Clickonce的布署方式(无需人工干预自动更新,让用户使用如浏览器访问网站一般,永远是最新的内容和功能).对安装过程有一定的难 ...
随机推荐
- Linux下yum安装MySQL
写这篇文章的原因是:在刚开始使用Linux操作系统时想要搭建LAMP环境,于是开始在Google和百度上各种寻找资料,碰到了不是很多的问题后,我决定写这篇文章总结一下在Linux下yum安装MySQL ...
- map 函数----filter函数
# map 函数 l = (1,2,4,5,6,7,8,9,) print(list(map(lambda x:x**2,l)))#使用list类型((map函数(lambda 匿名函数定义x值:x* ...
- Python中用format函数格式化字符串
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存. 1.百分号方式 语法:%[( ...
- Fiddler抓包工具使用基础
官网下载Fiddler Fiddler的官方网站: www.fiddler2.com Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监 ...
- 第一章 MYSQL的架构和历史
在读第一章的过程中,整理出来了一些重要的概念. 锁粒度 表锁(服务器实现,忽略存储引擎). 行锁(存储引擎实现,服务器没有实现). 事务的ACID概念 原子性(要么全部成功,要么全部回滚). 一致性 ...
- 让PDF.NET支持最新的SQLite数据库
最近项目中用到了SQLite,之前项目中用的是PDF.NET+MySQL的组合,已经写了不少代码,如果能把写好的代码直接用在SQLite上就好了,PDF.NET支持大部分主流的数据库,这个当然可以,只 ...
- Python的多线程(threading)与多进程(multiprocessing )
进程:程序的一次执行(程序载入内存,系统分配资源运行).每个进程有自己的内存空间,数据栈等,进程之间可以进行通讯,但是不能共享信息. 线程:所有的线程运行在同一个进程中,共享相同的运行环境.每个独立的 ...
- ajax提交数据到java后台,并且返回json格式数据前台接收处理值
1.前台html页面.有一段代码如下: 账 户: <input type="text" name="userName" id="userN& ...
- django表单验证和跨站伪造csrf
Form验证 django中的Form一般有两种功能: 输入html 验证用户输入 django使用内置form方法验证表单提交的数据 html页面 <!DOCTYPE html> < ...
- 用pyspider爬淘宝MM照片
#!/usr/bin/env python # -*- encoding: utf-8 -*- # Created on 2016-12-09 15:24:54 # Project: taobaomm ...