对于安装RabbitMQ,我也是着实废了一番力气,版本下载很多,但是都存在编译问题,编译不通过,报错找不到错误原因,甚至error都是***这样的存在。
其他的依赖, 我没有测试过,因为我环境中存在: Python,simplejson,安装
介于RabbitMQ是依赖erlang语言。
erlang安装比较重要,版本问题,编译问题,不能存在任何问题,否则RabbitMQ是绝对安装不了的,即便是二进制包也不能使用
可以使用yum安装,我找了很久,用下面的方式成功
1、下载源码wget http://www.erlang.org/download/otp_src_R16B02.tar.gz
2、安装erlang编译环境:
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
3、解压otp_src_R16B02.tar.gz
4、mv otp_src_R16B02 erlang_R16B #重命名
5、安装erlang:
cd erlang_R16B/
./configure --prefix=/usr/erlang -with-ssl -enable-rhreads -enable-smp-support -enable-kernel-poll -enable-hipe -without-javac
make && make install
6、配置erlang
vim /etc/profile
末尾加上export PATH=$PATH:/usr/local/erlang/bin
source /etc/profile
7、测试
erl 命令
退出命令行: halt().
安装rabbitmq server
1、下载二进制包:
http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.1/rabbitmq-server-generic-unix-3.5.1.tar.gz
2、 解压:xz -d rabbitmq-server-generic-unix-3.6.1.tar.xz
释放归档:tar -xvf rabbitmq-server-generic-unix-3.6.1.tar
修改名称:mv rabbitmq-server-generic-unix-3.6.1 rabbitmq
3、配置环境变量 vi /etc/profile
配置: export PATH=$PATH:/usr/rabbitmq/sbin
保存并使文件生效: source /erc/profile
4、操作启动rabbitmq
rabbitmq-server start
停掉
rabbitmqctl stop
检查是否在运行
rabbitmqctl status
5. 添加到启动项
chkconfig rabbitmq-server on
————————–分割线————————————
配置系统参数
当rabbitmq运行在生产环境时,为了能够处理可观数量的并发连接数和队列,我们需要根据情况对系统的资源限制进行调整并对内核参数进行调优。其中比较重要的,需要我们调整的设置就是单用户能打开的文件描述符的最大值,通过ulimit -n可以查看到这个参数。在大多数linux系统中这个参数的默认值都比较低,一般为1024.在生产环境中,我们建议该参数值至少为65536.而4096基本能够满足开发环境的要求。
其实总共有两个地方限制了文件描述符的数量:一个就是OS内核允许的最大值(在linux中该参数对应fs.file-max),另一个就是每个用户空间允许的最大值(ulimit -n).第一的参数的值必须大于后一个的参数值。
如果想了解更多如何控制系统资源限制,可以参考http://docs.basho.com/riak/latest/ops/tuning/open-files-limit/
验证限制参数
可以通过rabbitMQ管理UI界面的overview选项来查看文件描述符的数量。也可以通过rabbitmqctl status命令查看。
命令ulimit -a 用来显示当前用户的可以打开的文件描述符的最大值
***********************安装重点:
在安装过程中发生很多问题
otp_src_R16B02.tar.gz版本包,对应rabbitmq-server的版本包为 rabbitmq-server-generic-unix-3.5.1.tar.gz
rabbitmq-server-generic-unix-3.5.1.tar.gz这个包使用比较方便, 解压,并且配置就可以直接使用
后续我又尝试了另外两个包
rabbitmq-server-generic-unix-3.6.1.tar.xz
地址:http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-generic-unix-3.6.1.tar.xz
otp_src_18.3.tar.gz
地址:http://erlang.org/download/otp_src_18.3.tar.gz
这两个包在一起用上述方法安装也是可以的
******
安装好软件后呢,并不能直接对外访问,软件默认赋予的账户是 guest 密码 也是 guest 并且只能在本地进行访问登录
对于外部访问,就要进行下面的配置,当然,配置好以后 guest 还是不能进行外部访问, guest 只针对内部。
5. 远程访问配置
默认网页是不允许访问的,需要增加一个用户修改一下权限,代码如下:
添加用户:rabbitmqctl add_user hxb hxb
添加权限:rabbitmqctl set_permissions -p "/" hxb ".*" ".*" ".*"
修改用户角色rabbitmqctl set_user_tags hxb administrator
然后就可以远程访问了,然后可直接配置用户权限等信息。
6. rabbitmq常用命令
add_user <UserName> <Password>
delete_user <UserName>
change_password <UserName> <NewPassword>
list_users
add_vhost <VHostPath>
delete_vhost <VHostPath>
list_vhostsset_permissions [-p <VHostPath>] <UserName> <Regexp> <Regexp> <Regexp>
clear_permissions [-p <VHostPath>] <UserName>
list_permissions [-p <VHostPath>]
list_user_permissions <UserName>
list_queues [-p <VHostPath>] [<QueueInfoItem> ...]
list_exchanges [-p <VHostPath>] [<ExchangeInfoItem> ...]
list_bindings [-p <VHostPath>]
list_connections [<ConnectionInfoItem> ...]