rabbitMQ是由erlang写消息队列 多用于金融系统消息队列
安装前 需先安装erlang 下载路径为http://erlang.org/download/选择otc_src版本为linux版本
下载后解压 压缩包
tar -xvf
在编译前安装相关依赖包
# yum install build-essential m4 # yum install openssl # yum install openssl-devel # yum install unixODBC # yum install unixODBC-devel # yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
配置configure(配置安装路径编译代码),并安装,设置环境变量
./configure --prefix=/usr/local/erlang
make && make install
vim /etc/profile ERL_HOME=/usr/local/erlang PATH=$ERL_HOME/bin:$PATH export ERL_HOME PATH
测试
输入erl 进入erl编程环境 Erlang R15B01 (erts-5.9.1) [source] [64-bit] [smp:4:4] [async-threads:0] [hipe] [kernel-poll:false] Eshell V5.9.1 (abort with ^G) 1>
erling安装成功后就可以安装正主radditmq了
下载网站为http://www.rabbitmq.com/install-generic-unix.html (本来准备下载linux .rpm版本的 不知道为什么安装过程中会提示erling版本不够19.3但是本机已经安装了20.3版本 所以最后随网上的大部分安装教程的选择了unix的绿色版本)
下载后解压到当前目录就可以,并且配置环境变量/etc/profile(注意这里是sbin,博主开始没注意配置到bin目录下了,结果当然是喜闻乐见)
export PATH=$PATH:/你的路径/sbin然后就可以运行
rabbitmq-server如果没报错 运行
rabbitmqctl status
查看运行状态
[root@zhuzhonghua2-fqawb rabbitmq]# rabbitmqctl status Status of node 'rabbit@zhuzhonghua2-fqawb' ... [{pid,25020}, {running_applications, [{rabbitmq_management,"RabbitMQ Management Console","3.5.7"}, {rabbitmq_management_agent,"RabbitMQ Management Agent","3.5.7"}, {rabbit,"RabbitMQ","3.5.7"}, {mnesia,"MNESIA CXC 138 12","4.14.1"}, {rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.5.7"}, {webmachine,"webmachine","1.10.3-rmq3.5.7-gite9359c7"}, {mochiweb,"MochiMedia Web Server","2.7.0-rmq3.5.7-git680dba8"}, {os_mon,"CPO CXC 138 46","2.4.1"}, {amqp_client,"RabbitMQ AMQP Client","3.5.7"}, {inets,"INETS CXC 138 49","6.3.3"}, {xmerl,"XML parser","1.3.12"}, {sasl,"SASL CXC 138 11","3.0.1"}, {stdlib,"ERTS CXC 138 10","3.1"}, {kernel,"ERTS CXC 138 10","5.1"}]}, {os,{unix,linux}}, {erlang_version, "Erlang/OTP 19 [erts-8.1] [source] [64-bit] [smp:4:4] [async-threads:64] [hipe] [kernel-poll:true]\n"}, {memory, [{total,60110136}, {connection_readers,0}, {connection_writers,0}, {connection_channels,0}, {connection_other,5664}, {queue_procs,1028160}, {queue_slave_procs,1576056}, {plugins,8008840}, {other_proc,6115560}, {mnesia,197760}, {mgmt_db,14219256}, {msg_index,58288}, {other_ets,1181200}, {binary,633896}, {code,17650127}, {atom,711593}, {other_system,8723736}]}, {alarms,[]}, {listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]}, {vm_memory_high_watermark,0.4}, {vm_memory_limit,3301929779}, {disk_free_limit,50000000}, {disk_free,35754786816}, {file_descriptors, [{total_limit,924},{total_used,6},{sockets_limit,829},{sockets_used,1}]}, {processes,[{limit,1048576},{used,195}]}, {run_queue,0}, {uptime,139660}]
这种情况下就可以算是正常启动了
因为rabbit有网页版控制插件(运行下面两个命令开启网页的插件,这里其实我是没看明白作用)
mkdir /etc/rabbitmq
./rabbitmq-plugins enable rabbitmq_management如果开启防火墙了的话需要配置端口(博主这里是默认关闭防火墙 贴出来往上的命令以供参考)
vim /etc/sysconfig/iptables 添加如下 -A INPUT -m state --state NEW -m tcp -p tcp --dport 15672 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 5672 -j ACCEPT该网页控制插件为http://ip:15672;
默认账号密码为guest不过默认是禁止远程登陆,创建一个新的用户就好了
添加用户:rabbitmqctl add_user hxb hxb
添加权限:rabbitmqctl set_permissions -p "/" hxb ".*" ".*" ".*"
修改用户角色rabbitmqctl set_user_tags hxb administrator
然后就可以远程访问了,然后可直接配置用户权限等信息。
到此rabbitmq的初始安装就结束了,下一章会讲解rabbitmq在java环境下的使用