CentOS linux 下rabbitmq基于单机的集群配置

rabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统,以下介绍rabbitmq的搭建及集群配置信息:

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

source /etc/profile 使变量生效

其它的依赖包直接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 的相关配置即可





你可能感兴趣的:(系统搭建)