rabbit是基于erlang编写的,所以需要先安装erlang环境:
erlang需要相关环境的支持,如ODBC,JDK等,其中有一些是可以直接yum安装的,这里介绍一下JDK的安装
wget http://download.oracle.com/otn-pub/java/jdk/7u25-b15/jdk-7u25-linux-x64.tar.gz
tar zxvf jdk-7u25-linux-x64.tar.gz -C /usr/local/
mv /usr/local/jdk1.7.0_25/ /usr/local/java
vim /etc/profile 添加JAVA环境变量
JAVA_HOME=/usr/java
JRE_HOME=/usr/java/jre
JAVA_BIN=/usr/java/bin
PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
其它的依赖包直接yum即可
yum install -y git openssl openssl-devel unixODBC unixODBC-devel unixODBC-libs ncurses ncurses-devel
二:下载erlang包:
wget http://www.erlang.org/download/otp_src_R13B04.tar.gz
tar zxf otp_src_R13B04.tar.gz && make && make install 即可
三:phthon , 及phtyon-simplejson 的安装
yum install python python-simplejson -y
四:下载,安装rabbitmq :
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.1.2/rabbitmq-server-3.1.2.tar.gz
make
make install TARGET_DIR=/usr/local/rabbitmq SBIN_DIR=/usr/local/sbin MAN_DIR=/usr/local/man
如果没有错误的话,至此rabbitmq安装完成,下面介绍rabbitmq集群的配置:
RABBITMQ_NODE_PORT=9991 RABBITMQ_NODENAME=rab /usr/local/rabbitmq/sbin/rabbitmq-server -detached
RABBITMQ_NODE_PORT=9992 RABBITMQ_NODENAME=rab2 /usr/local/rabbitmq/sbin/rabbitmq-server -detached
我这里启用了rab 和 rab2两个实例,端口号分别为9991和9992
1. 首先停止rab2
rabbitmqctl -n rab2 stop_app
2. 将rab2加入rab的集群中
rabbitmqctl -n rab2 join_cluster rab@rab
3. 启动rab2
RABBITMQ_NODE_PORT=9992 RABBITMQ_NODENAME=rab2 rabbitmq-server -detached
4. 查看集群状态
rabbitmqctl cluster_status -n rab
显示如下信息,表示集群配置正确
Cluster status of node rab@rab ...
[{nodes,[{disc,[rab2@rab,rab@rab]}]},
{running_nodes,[rab@rab]},
{partitions,[]}]
...done.
######### 配置过程中可能碰到的问题 ##################
启动 rabbitmq 服务时报错:“{{case_clause,{error,{timeout_waiting_for_tables,[rabbit_user,rabbit_user_permission,rabbit_vhost,rabbit_config”
在保证配置没问题的前提下,删除 /var/lib/rabbitmq/mnesia/ rab 的相关配置即可