各位吧,求教我电脑拼音打字教学视频,想问下有没有好的

linux下安装部署rabbitmq-爱编程
linux下安装部署rabbitmq
MQ全称为Message Queue,&(MQ)是一种对应用程序的通信方法。通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消 息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如的技术。排队指的是通过 队列来通信。队列的使用除去了接收和发送同时执行的要求。其中较为成熟的MQ产品有IBM WEBSPHERE MQ。& & & &RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。他遵循Mozilla Public License&。那么如何安装部署rabbitmq呢?& & & &安装Erlang
1、下载推荐的安装包
rpm&-ivh&erlang-17.4-1.el6.x86_64.rpm
可能的报错
error: Failed dependencies:
& & & & libodbc.so.2()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_baseu-2.8.so.0()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_baseu-2.8.so.0(WXU_2.8)(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_baseu_xml-2.8.so.0()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_adv-2.8.so.0()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_adv-2.8.so.0(WXU_2.8)(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_aui-2.8.so.0()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_aui-2.8.so.0(WXU_2.8)(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_aui-2.8.so.0(WXU_2.8.5)(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_core-2.8.so.0()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_core-2.8.so.0(WXU_2.8)(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_gl-2.8.so.0()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_gl-2.8.so.0(WXU_2.8)(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_html-2.8.so.0()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_html-2.8.so.0(WXU_2.8)(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_stc-2.8.so.0()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_stc-2.8.so.0(WXU_2.8)(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_xrc-2.8.so.0()(64bit) is needed by esl-erlang-18.2-1.x86_64
& & & & libwx_gtk2u_xrc-2.8.so.0(WXU_2.8)(64bit) is needed by esl-erlang-18.2-1.x86_64
安装依赖包
yum&install&unixODBC&unixODBC-devel&wxBase&wxGTK&SDL&wxGTK-gl
安装RabbitMQ Server
rpm&--import&https://www./rabbitmq-signing-key-public.ascyum&install&rabbitmq-server-3.5.7-1.noarch.rpm
127.0.0.1&hostname
service&rabbitmq-server&start
/var/log/rabbitmq安装完成。
如果想深入体验LINUX系统的新手,也可以先下载一个方德Linux软件中心试用一下。
免费下载地址:
版权所有 爱编程 (C) Copyright 2012. . All Rights Reserved.
闽ICP备号-3
微信扫一扫关注爱编程,每天为您推送一篇经典技术文章。linux(ubuntu)下的rabbitmq装配与配置 - Linux/Unix当前位置:& &&&linux(ubuntu)下的rabbitmq装配与配置linux(ubuntu)下的rabbitmq装配与配置&&网友分享于:&&浏览:0次linux(ubuntu)下的rabbitmq安装与配置
今天突然对rabbitMQ来了兴趣,就在虚拟机上装了个玩玩(虚拟机上安装的ubuntu 14.04 ,可以输入lsb_release -a查看版本信息)。
只要是linux内核的,应该基本安装方式都大同小异。下面是最简便的一种安装方式,适合一休哥这种懒人使用(使用源码或者其他方式都要
先手动安装一大堆依赖):
1、添加以下安装源到/etc/apt/sources.list中:
deb http://www./debian/ testing main
2、执行更新:
apt-get update
3、运行安装:
apt-get install rabbitmq-server
如果在安装中出现无法下载的错误,需要将rabbitMQ的公钥添加到信任列表中:
wget http://www./rabbitmq-signing-key-public.asc
apt-key add rabbitmq-signing-key-public.asc
RabbitMQ提供了一些简单实用的命令用于管理服务器运行状态:
查看服务器运行状态: rabbitmq-server status
启动服务器:rabbitmq-server start
停止服务器:rabbitmq-server stop
查看服务器中所有的消息队列信息 :rabbitmqctl list_queues
查看服务器种所有的路由信息: rabbitmqctl list_exchanges
查看服务器种所有的路由与消息队列绑定信息 :rabbitmq list_bindings
PS:rabbitmq-server等命令只有root用户有权限。
关于RabbitMQ的图形管理界面(默认无法使用):
1、安装 RabbitMQWeb管理插件
rabbitmq-plugins enable rabbitmq_management
2、重启服务
service rabbitmq-server restart
访问:http://127.0.0.1:15672
uname:guest
但是由于我是使用的虚拟机桥接的方式,在访问MQ的web界面时相当于局域网连接(我虚拟机的ip为192.168.52.xx),
我在使用局域网访问管理界面时发现一直提示“login failed”,查了下才知道是高版本的mq在作怪,在3.x版本后的
mq中默认只有localhost能登录,so,what should I do ? (有人说关闭防火墙[ufw disable]后就可以连接,
我试了试,还是不行)。终于,换了很多方法,终于可以了。
需要编写/etc/rabbitmq/rabbitmq.config文件(此文件是手动新建的),添加如下内容:
[{rabbit, [{loopback_users, []}]}].重启,OK!测试了一把,看到弯弯曲曲的线条,我就放心了。打完,收工!
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
稍有积蓄, 积分 274, 距离下一级还需 226 积分
论坛徽章:5
本帖最后由 craaazy123 于
17:04 编辑
CentOS 6.4 32bit minimal下安装
第一种安装方式(源代码编译安装):
1. 下载erlang源代码及RabbitMQ rpm安装包
& &&&$ wget
& &&&$ wget
2. 编译安装erlang
& & 解压otp_src_R16B02.tar.gz:
& & $ tar -zxvf&&otp_src_R16B02.tar.gz
& & 利用yum安装erlang编译环境:
& & $ yum -y install make ncurses-devel gcc gcc-c++ unixODBC unixODBC-devel openssl openssl-devel
& & 配置erlang:
& & $ cd opt_src_R16B02
& & $ ./configure& && &\
& && & --prefix=/usr/local/erlang& &&&\
& && & --enable-smp-support& && && & \
& && & --enable-threads& && && && && &&&\
& && & --enable-sctp& && && && && && && & \
& && & --enable-kernel-poll& && && && &\
& && & --enable-hipe& && && && && && && & \
& && & --with-ssl
& &&&编译安装erlang:
& &&&$ make && make install
3. 设置环境变量
& &&&$ vi /etc/profile
& &&&ERL_HOME=/usr/local/erlang
& &&&PATH=$ERL_HOME/bin: $PATH (复制党注意&&:与$加了空格,主要是论坛自动替换成表情了)
& &&&export ERL_HOME PATH
& &&&让环境变量立即生效:
& &&&$ source /etc/profile
4. 安装RabbitMQ
& & $ rpm -i --nodeps rabbitmq-server-3.2.0-1.noarch.rpm
& & 注意:如果直接用rpm -i rabbitmq-server-3.2.0-1.noarch.rpm,会提示缺少erlang 13B的环境,前面安装了erlang 15B02所以
& &&&加上--nodeps则能安装成功。
5. 启动rabbitmq
& & $ rabbitmq-server start
6. 添加rabbitmq到启动项
& & $ chkconfig rabbitmq-server on
第二种安装方式(yum源安装):
1. 安装配置epel源
& &$ rpm -Uvh
2. 安装erlang
& &$ yum -y install erlang
3. 安装RabbitMQ
& &$ yum -y install rabbitmq-server
& &注意:用yum安装的版本可能不是最新的。如有需要,安装rabbitmq部分可以参照第一种方式。
4. 启动/停止rabbitmq服务器
333.png (2.57 KB, 下载次数: 4)
17:02 上传
&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp
大富大贵, 积分 10780, 距离下一级还需 9220 积分
论坛徽章:26
本帖最后由 shijiang1130 于
21:32 编辑
请问你用rabbitmq做什么呢?进队列的是什么,出队列的是?:wink:
QQ图片27.jpg (74.97 KB, 下载次数: 3)
21:31 上传
稍有积蓄, 积分 274, 距离下一级还需 226 积分
论坛徽章:5
shijiang1130
我项目中用rabbitmq做分布式系统中服务(Services)之间的总线(Bus),主要是使得每个独立服务/模块之间能够协同工作。你可以想象为网络中的总线型拓扑结构。
富甲一方, 积分 49080, 距离下一级还需 920 积分
论坛徽章:31
好象最近基于 消息总线 的应用越来越多了.
稍有积蓄, 积分 274, 距离下一级还需 226 积分
论坛徽章:5
哈哈哈 贴近现实生活
富甲一方, 积分 49080, 距离下一级还需 920 积分
论坛徽章:31
craaazy123
有些人其实是懒了.
稍有积蓄, 积分 274, 距离下一级还需 226 积分
论坛徽章:5
为啥这么说?
富甲一方, 积分 49080, 距离下一级还需 920 积分
论坛徽章:31
craaazy123
懒得自己实现自己的数据流了. 这不是一个好现象.
数据总线会变得越来越重, 最终, 还得重构.
稍有积蓄, 积分 274, 距离下一级还需 226 积分
论坛徽章:5
自己实现是需要开发成本的,况且不一定能做好。有比较成熟的方案时,选择该方案是比较明智的,况且有些开源社区是非常强大的。
富甲一方, 积分 49080, 距离下一级还需 920 积分
论坛徽章:31
craaazy123
自己开发没什么成本的. 你想多了.
你现在也需要开发发送消息,接收消息, 这些相关的API操作.
而你只要把 API 改成你自己的 函数, 把消息直接发送到接收的服务器, 就OK了.
这中间了, 少了 message bus, 效率会更高一点点. 如果连这都能出错, 那我无语了.RabbitMQ在linux下的安装
目前最新版本下载:
/releases/rabbitmq-server/v3.2.4/rabbitmq-server-3.2.4.tar.gz
http://www.erlang.org/download/otp_src_R16B03-1.tar.gz
[root@localhost ~]# tar otp_src_R16B03-1.tar.gz
[root@localhost ~]# cd otp_src_R16B03-1
[root@localhost otp_src_R16B03-1]# yum install -y ncurses ncurses-devel
[root@localhost otp_src_R16B03-1]# ./configure
[root@localhost otp_src_R16B03-1]# make
[root@localhost otp_src_R16B03-1]# make install
[root@localhost otp_src_R16B03-1]# erl
Erlang R16B03-1 (erts-5.10.4) [/source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V5.10.4
(abort with ^G)
1& halt().
[root@localhost otp_src_R16B03-1]#
erlang完成。
[root@localhost ~]# tar zxvf rabbitmq-server-3.2.4.tar.gz
[root@localhost ~]# cd rabbitmq-server-3.2.4
[root@localhost rabbitmq-server-3.2.4]# make
[root@localhost rabbitmq-server-3.2.4]# make install
在make install的时候得到一个报错:
echo “Put your EZs here and use rabbitmq-plugins to enable them.” & plugins/README
rm -f plugins/rabbit_common*.ez
Please set TARGET_DIR.
Please set SBIN_DIR.
Please set MAN_DIR.
Please set DOC_INSTALL_DIR.
make: *** [install_dirs] 错误 1
说让添加环境变量,解决方法:
[root@localhost rabbitmq-server-3.2.4]# export TARGET_DIR=/usr/local/rabbitmq
[root@localhost rabbitmq-server-3.2.4]# export SBIN_DIR=/usr/local/rabbitmq/sbin
[root@localhost rabbitmq-server-3.2.4]# export MAN_DIR=/usr/local/rabbitmq/man
[root@localhost rabbitmq-server-3.2.4]# export DOC_INSTALL_DIR=/usr/local/rabbitmq/doc
重新make install又得到一个错误:
/bin/sh: xmlto: command not found
/bin/sh: line 2: xmlto: command not found
make: *** [docs/rabbitmqctl.1.gz] 错误 127
安装xmlto命令,yum install -y xmlto
重新make install完成。
配置rabbitMQ:
设置日志与消息持久化目录:
[root@localhost ~]# mkdir /var/log/rabbitmq
[root@localhost ~]# mkdir /var/lib/rabbitmq
[root@localhost ~]# ln -s /usr/local/rabbitmq/sbin/rabbitmq-server /usr/bin/rabbitmq-server
[root@localhost ~]# ln -s /usr/local/rabbitmq/sbin/rabbitmq-env /usr/bin/rabbitmq-env
[root@localhost ~]# rabbitmq-server &
RabbitMQ 3.2.4. Copyright (C)
GoPivotal, Inc.
## ## Licensed under the MPL. See /
########## Logs: /var/log/rabbitmq/rabbit@localhost.log
###### ## /var/log/rabbitmq/rabbit@localhost-sasl.log
##########
Starting broker… completed with 0 plugins.
查看服务状态:
[root@localhost ~]# lsof -i:5672
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
beam 25276 root 13u IPv6
TCP *:amqp (LISTEN)
关闭rabbitmq服务:
[root@localhost ~]# cd /usr/local/rabbitmq/sbin/
[root@localhost sbin]# ./rabbitmqctl stop
Stopping and halting node rabbit@localhost …
…done.
[root@localhost sbin]# lsof -i:5672
[1]+ Done ./rabbitmq-server
[root@localhost sbin]# lsof -i:5672
[root@localhost sbin]#
启动web管理工具:
[root@localhost sbin]# ./rabbitmq-plugins enable rabbitmq_management
Error: {cannot_write_enabled_plugins_file,”/etc/rabbitmq/enabled_plugins”,
[root@localhost sbin]# mkdir /etc/rabbitmq
[root@localhost sbin]# ./rabbitmq-plugins enable rabbitmq_management
The following plugins have been enabled:
webmachine
rabbitmq_web_dispatch
amqp_client
rabbitmq_management_agent
rabbitmq_management
Plugin configuration has changed. Restart RabbitMQ for changes to take effect.
[root@localhost sbin]# lsof -i:15672
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
beam 25589 root 16u IPv4
TCP *:15672 (LISTEN)
关闭管理工具用:
[root@localhost sbin]# ./rabbitmq-plugins disable rabbitmq_management
通过访问http://192.168.0.5:15672/ 用户名密码guest访问即可。
原创文章,转载请注明。本文链接地址:
关于 Venus
专注于 服务器运维与web架构
E-mail:venus@rootop.org
You must be
to post a comment.
891011121314
15161718192021
222324252628
2017年05月 &(2)
2017年04月 &(13)
2017年03月 &(7)
2017年02月 &(4)
2016年12月 &(1)
2016年11月 &(1)
2016年10月 &(1)
2016年08月 &(2)
2016年07月 &(2)
2016年06月 &(2)
2016年05月 &(4)
2016年04月 &(2)
2016年03月 &(3)
2016年02月 &(6)
2016年01月 &(4)
2015年12月 &(6)
2015年11月 &(1)
2015年10月 &(2)
2015年09月 &(3)
2015年08月 &(3)
2015年05月 &(5)
2015年04月 &(12)
2015年03月 &(15)
2015年02月 &(3)
2015年01月 &(7)
2014年12月 &(7)
2014年11月 &(6)
2014年10月 &(6)
2014年09月 &(12)
2014年08月 &(6)
2014年07月 &(7)
2014年06月 &(14)
2014年05月 &(29)
2014年04月 &(28)
2014年03月 &(23)
2014年02月 &(17)
2014年01月 &(12)
2013年12月 &(8)
2013年11月 &(6)
2013年10月 &(8)
2013年09月 &(11)
2013年08月 &(8)
2013年07月 &(4)
2013年06月 &(2)
2013年05月 &(7)
2013年04月 &(6)
2013年03月 &(9)
2013年02月 &(9)
2013年01月 &(13)
2012年12月 &(10)
2012年11月 &(7)
2012年10月 &(1)
2012年09月 &(6)
2012年08月 &(10)
2012年07月 &(2)
2012年06月 &(5)
2012年05月 &(14)
2012年04月 &(14)
2012年03月 &(4)
2012年02月 &(15)
2012年01月 &(8)
2011年12月 &(13)
2011年11月 &(23)
2011年10月 &(16)
2011年09月 &(22)
2011年08月 &(15)
2011年07月 &(18)
2011年06月 &(15)
2011年05月 &(28)
2011年04月 &(10)
2011年03月 &(24)
2011年02月 &(4)
2011年01月 &(14)
2010年12月 &(46)
Rootop.org
------------------------------------------------------
合抱之木,生于毫末;九层之台,起于垒土;千里之行,始于足下。
-------------------《老子·道德经》------------------linux安装RabbitMQ详细教程
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了linux安装RabbitMQ详细教程,需要的朋友可以参考下
一、RabbitMQ概念
RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发。RabbitMQ据说具有良好的性能和时效性,同时还能够非常好的支持集群和负载部署,非常适合在较大规模的分布式系统中使用。
Rabbit模式大概分为以下三种:单一模式、普通模式、镜像模式
单一模式:最简单的情况,非集群模式,即单实例服务。
普通模式:默认的集群模式。
queue创建之后,如果没有其它policy,则queue就会按照普通模式集群。对于Queue来说,消息实体只存在于其中一个节点,A、B两个节点仅有相同的元数据,即队列结构,但队列的元数据仅保存有一份,即创建该队列的rabbitmq节点(A节点),当A节点宕机,你可以去其B节点查看,./rabbitmqctl list_queues 发现该队列已经丢失,但声明的exchange还存在。
当消息进入A节点的Queue中后,consumer从B节点拉取时,RabbitMQ会临时在A、B间进行消息传输,把A中的消息实体取出并经过B发送给consumer。
所以consumer应尽量连接每一个节点,从中取消息。即对于同一个逻辑队列,要在多个节点建立物理Queue。否则无论consumer连A或B,出口总在A,会产生瓶颈。
该模式存在一个问题就是当A节点故障后,B节点无法取到A节点中还未消费的消息实体。
如果做了消息持久化,那么得等A节点恢复,然后才可被消费;如果没有持久化的话,队列数据就丢失了。
镜像模式:把需要的队列做成镜像队列,存在于多个节点,属于RabbitMQ的HA方案。
该模式解决了上述问题,其实质和普通模式不同之处在于,消息实体会主动在镜像节点间同步,而不是在consumer取数据时临时拉取。
该模式带来的副作用也很明显,除了降低系统性能外,如果镜像队列数量过多,加之大量的消息进入,集群内部的网络带宽将会被这种同步通讯大大消耗掉。
所以在对可靠性要求较高的场合中适用,一个队列想做成镜像队列,需要先设置policy,然后客户端创建队列的时候,rabbitmq集群根据“队列名称”自动设置是普通集群模式或镜像队列。具体如下:
队列通过策略来使能镜像。策略能在任何时刻改变,rabbitmq队列也近可能的将队列随着策略变化而变化;非镜像队列和镜像队列之间是有区别的,前者缺乏额外的镜像基础设施,没有任何slave,因此会运行得更快。
为了使队列称为镜像队列,你将会创建一个策略来匹配队列,设置策略有两个键“ha-mode和 ha-params(可选)”。
了解集群中的基本概念:
RabbitMQ的集群节点包括内存节点、磁盘节点。顾名思义内存节点就是将所有数据放在内存,磁盘节点将数据放在磁盘。不过,如前文所述,如果在投递消息时,打开了消息的持久化,那么即使是内存节点,数据还是安全的放在磁盘。
一个rabbitmq集群中可以共享user,vhost,queue,exchange等,所有的数据和状态都是必须在所有节点上复制的,一个例外是,那些当前只属于创建它的节点的消息队列,尽管它们可见且可被所有节点读取。rabbitmq节点可以动态的加入到集群中,一个节点它可以加入到集群中,也可以从集群环集群会进行一个基本的负载均衡。
集群中有两种节点:
1 内存节点:只保存状态到内存(一个例外的情况是:持久的queue的持久内容将被保存到disk)
2 磁盘节点:保存状态到内存和磁盘。
内存节点虽然不写入磁盘,但是它执行比磁盘节点要好。集群中,只需要一个磁盘节点来保存状态就足够了如果集群中只有内存节点,那么不能停止它们,否则所有的状态,消息等都会丢失。
二、RabbitMQ的安装
1.ubuntu16.04中安装RabbitMQ
1).首先必须要有Erlang环境支持
安装之前要装一些必要的库:
# sudo apt-get install build-essential
# sudo apt-get install libncurses5-dev
# sudo apt-get install libssl-dev
# sudo apt-get install m4
# sudo apt-get install unixodbc unixodbc-dev
# sudo apt-get install freeglut3-dev libwxgtk2.8-dev
# sudo apt-get install xsltproc
# sudo apt-get install fop
# sudo apt-get install tk8.5
安装好之后运行:
# sudo apt-get install erlang
完成后在控制台输入命令:
可以查看erlang安装版本情况
2).安装RabbitMQ(可以用两种方式)
# sudo apt-get install rabbitmq-server
如果没有问题,那就直接安装了,不用设置什么东西
查看运行状态
# service rabbitmq-server status
1).首先创建一个文件夹用来下载RabbitMQ
# mkdir rabbitmqsoft
# cd rabbitmqsoft
2).获取安装包(这里选择2.7.0 unix版本)
# wget /releases/rabbitmq-server/v2.7.0/rabbitmq-server-generic-unix-2.7.0.tar.gz
# tar -zxvf rabbitmq-server-generic-unix-2.7.0.tar.gz
# cd rabbitmq_server-2.7.0/
# sbin/rabbitmq-server
4).查看运行状态(打开另外一个终端)
# cd ~/rabbitmqsoft/rabbitmq_server-2.7.0/
# sbin/rabbitmqctl status
到底为止,Ubuntu系统下安装RabbitMQ就完成了
1.centos7中安装RabbitMQ
1).首先需要安装erlang
#yum install erlang
安装过程中会有提示,一路输入“y”即可。
2).完成后安装RabbitMQ:
先下载rpm:
下载完成后安装:
#yum install rabbitmq-server-3.6.6-1.el7.noarch.rpm
完成后启动服务:
#service rabbitmq-server start
可以查看服务状态:
#service rabbitmq-server status
三、RabbitMQ的配置
1.修改配置文件
通过查看服务状态:
#service rabbitmq-server status
这里可以看到log文件的位置,转到文件位置,打开文件:
这里显示的是没有找到配置文件,我们可以自己创建这个文件
#cd /etc/rabbitmq/
#vim rabbitmq.config
编辑内容如下:
[{rabbit, [{loopback_users, []}]}].
这里的意思是开放使用,rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问,localhost或者127.0.0.1,从外部访问需要添加上面的配置。
保存配置后重启服务:
#service rabbitmq-server stop
#service rabbitmq-server start
2.安装插件
#/sbin/rabbitmq-plugins enable rabbitmq_management
重启rabbitmq服务
#service rabbitmq-server restart
到此,就可以通过 使用guest,guest 进行登陆web页面了
四、RabbitMQ用户角色及权限控制
1.RabbitMQ的用户角色分类:
none、management、policymaker、monitoring、administrator
2.RabbitMQ各类角色描述:
不能访问 management plugin
management
用户可以通过AMQP做的任何事外加:
列出自己可以通过AMQP登入的virtual hosts&
查看自己的virtual hosts中的queues, exchanges 和 bindings
查看和关闭自己的channels 和 connections
查看有关自己的virtual hosts的“全局”的统计信息,包含其他用户在这些virtual hosts中的活动。
policymaker
management可以做的任何事外加:
查看、创建和删除自己的virtual hosts所属的policies和parameters
monitoring&
management可以做的任何事外加:
列出所有virtual hosts,包括他们不能登录的virtual hosts
查看其他用户的connections和channels
查看节点级别的数据如clustering和memory使用情况
查看真正的关于所有virtual hosts的全局的统计信息
administrator&&
policymaker和monitoring可以做的任何事外加:
创建和删除virtual hosts
查看、创建和删除users
查看创建和删除permissions
关闭其他用户的connections
3.创建用户并设置角色:
可以创建管理员用户,负责整个MQ的运维,例如:
$sudo rabbitmqctl add_user user_admin passwd_admin
赋予其administrator角色:
$sudo rabbitmqctl set_user_tags user_admin administrator
可以创建RabbitMQ监控用户,负责整个MQ的监控,例如:
$sudo rabbitmqctl add_user user_monitoring passwd_monitor
赋予其monitoring角色:
$sudo rabbitmqctl set_user_tags user_monitoring monitoring
可以创建某个项目的专用用户,只能访问项目自己的virtual hosts
$sudo rabbitmqctl add_user user_proj passwd_proj
赋予其monitoring角色:
$sudo rabbitmqctl set_user_tags user_proj management
创建和赋角色完成后查看并确认:
$sudo rabbitmqctl list_users
4.RabbitMQ权限控制
默认virtual host:"/"
默认用户:guest
guest具有"/"上的全部权限,仅能有localhost访问RabbitMQ包括Plugin,建议删除或更改密码。可通过将配置文件中loopback_users置孔来取消其本地访问的限制:
[{rabbit, [{loopback_users, []}]}]
用户仅能对其所能访问的virtual hosts中的资源进行操作。这里的资源指的是virtual hosts中的exchanges、queues等,操作包括对资源进行配置、写、读。配置权限可创建、删除、资源并修改资源的行为,写权限可向资源发送消息,读权限从资源获取消息。比如:
exchange和queue的declare与delete分别需要exchange和queue上的配置权限
exchange的bind与unbind需要exchange的读写权限
queue的bind与unbind需要queue写权限exchange的读权限
发消息(publish)需exchange的写权限
获取或清除(get、consume、purge)消息需queue的读权限
对何种资源具有配置、写、读的权限通过正则表达式来匹配,具体命令如下:
set_permissions [-p &vhostpath&] &user& &conf& &write& &read&
其中,&conf& &write& &read&的位置分别用正则表达式来匹配特定的资源,如'^(amq\.gen.*|amq\.default)$'可以匹配server生成的和默认的exchange,'^$'不匹配任何资源
需要注意的是RabbitMQ会缓存每个connection或channel的权限验证结果、因此权限发生变化后需要重连才能生效。
为用户赋权:
$sudo rabbitmqctl set_permissions -p /vhost1 user_admin '.*' '.*' '.*'
该命令使用户user_admin具有/vhost1这个virtual host中所有资源的配置、写、读权限以便管理其中的资源
$sudo rabbitmqctl list_user_permissions user_admin
Listing permissions for user "user_admin" ...
/vhost1&span style="white-space:pre"& &/span&.*&span style="white-space:pre"& &/span&.*&span style="white-space:pre"& &/span&.*
$sudo rabbitmqctl list_permissions -p /vhost1
Listing permissions in vhost "/vhost1" ...
user_admin&span style="white-space:pre"& &/span&.*&span style="white-space:pre"& &/span&.*&span style="white-space:pre"& &/span&.*
以上所述是小编给大家介绍的linux安装RabbitMQ详细教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具

我要回帖

更多关于 拼音打字教程 的文章

 

随机推荐