2015-06-16 1 条评论

安装rabbitmq

确认redhat版本

rpm -Uvh http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

rpm -Uvh http://mirrors.opencas.cn/epel/6/x86_64/epel-release-6-8.noarch.rpm

rpm -Uvh http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

缓存上述rpm链接

yum makecache

yum install erlang -y

安装rabbitMq

wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.0/rabbitmq-server-3.5.0-1.noarch.rpm

yum localinstall rabbitmq-server-3.5.0-1.noarch.rpm

添加开机启动

chkconfig rabbitmq-server on

service rabbitmq-server start

开启web管理界面

rabbitmq-plugins enable rabbitmq_management

修改配置文件

cp /usr/share/doc/rabbitmq-server-3.5.0/rabbitmq.config.example /etc/rabbitmq/rabbitmq.config

修改用户配置 让其可以通过远程访问 不限于localhost

{loopback_users, []} 删除前面的注释%%,同时注意后面的逗号,只有一个配置项的时候,请删除后面的逗号

因为默认用户为guest,要添加其他的管理账户

rabbitmqctl add_user username password

rabbitmqctl set_user_tags username  administrator

rabbitmqctl set_permissions -p / username “.*” “.*” “.*”

上述代码添加了用户 并添加权限为administraror和允许远程访问

集群配置

.erlang.cookie文件的pwd /var/lib/rabbitmq

集群要求 .erlang.cookie文件在所有的机器上要一致 所以要复制对应文件到其他机器上

因为文件是只读的 所以在操作之前需要执行

chmod 777 .erlang.cookie

复制主机上的字符串到本机上 保存文件后把文件权限修改过来

chmod 400 .erlang.cookie

主机上的操作:
# rabbitmqctl stop
# rabbitmq-server -detached
其他机器上的操作:
# rabbitmqctl stop
# rabbitmq-server -detached
# rabbitmqctl stop_app
# rabbitmqctl join_cluster rabbit@主机
# rabbitmqctl start_app

设置ha模式

其中ha-mode有三种模式:

  • all: 同步至所有的.
  • exactly: 同步最多N个机器. 当现有集群机器数小于N时,同步所有,大于等于N时则不进行同步. N需要额外通过ha-params来指定.
  • nodes: 只同步至符合指定名称的nodes. N需要额外通过ha-params来指定.
# 这里设置的是同步全部的queue, 可以按需自己选择指定的queue
添加策略
rabbitmqctl set_policy ha-all “^” ‘{“ha-mode”:”all”}’

默认加入是一disc模式加入,可以执行rabbitmqctl change_cluster_node_type <ram|disc>进行模式的修改

——————————————————–

rabbitMQ离线安装

需要的文件:

1、rabbitmq安装依赖erlang,安装包otp_src_***.tar.gz
2、下载rabbitMQ 可以下载源码也可以直接安装rpm包

一、erlang的安装:

1、将elang安装包otp_src_R15B01.tar.gz上传到某个目录下.
2、tar -zxvf otp_src_R15B01.tar.gz
3、cd otp_src_R15B01 进入解压后的目录
4、执行./configure –prefix=/opt/erlang  就会开始编译安装  会编译到 /opt/erlang 下
5、执行make && make install
6、vi /etc/profile增加
     export PATH=$PATH:/opt/erlang/bin
7、执行source /etc/profile使得环境变量生效

二、rabbitMQ的安装:

1、将rabbitmq-server-generic-unix-2.8.2.tar.gz以root用户身份上传到某目录下.
2、执行 tar -zxvf rabbitmq-server-generic-unix-2.8.2.tar.gz -C /opt 解压到opt目录下。

3、cd /opt,建立软链接ln -s rabbitmq_server-2.8.2/ rabbitmq

4、修改/etc/profile,添加环境变量

export PATH=$PATH:/opt/rabbitmq/sbin

5、执行source /etc/profile使得环境变量生效
6、[启动] cd rabbitmq/sbin
     执行./rabbitmq-server -detached可以实现后台启动,如果非后台启动直接./rabbitmq-server start
7、[关闭]  cd /opt/rabbitmq/sbin       ./rabbitmqctl stop关闭rabbitmq
8、./rabbitmq-plugins list可以查看目前安装并是否生效的插件,[E]代表生效
9、启用网页方式管理MQ插件,cd /opt/rabbitmq/sbin/
执行./rabbitmq-plugins enable rabbitmq_management
然后访问http://ip:55672或http://ip:15672,如果不能访问,则考虑防火墙限制。
     开放防火墙23端口权限 vi /etc/sysconfig/iptables
      -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 55672 -j ACCEPT
      -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 15672 -j ACCEPT
      -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 5672 -j ACCEPT
      然后重启防火墙:service iptables restart
      如果要关闭插件则./rabbitmq-plugins disable 插件名称(可通过list查看)
10、如果新加的用户没有权限登录网页版管理台,则
       ./rabbitmqctl set_user_tags newuser administratorment 即可

 

发表评论

  1. 我没有反对满族,而你却针对整个汉族,个人说你们那是个人的事,而你们针对整个民族?