一、安装Erlang环境

1、下载erlang源代码

  1. wget http://erlang.org/download/otp_src_19.1.tar.gz

2、安装依赖相关库文件

  1. yum install ncurses ncurses-base ncurses-devel ncurses-libs ncurses-static ncurses-term ocaml-curses ocaml-curses-devel openssl-devel zlib-devel -y

3、编译安装Erlang

  1. tar zxf otp_src_19..tar.gz
  2. cd otp_src_19.
  3. ./configure --prefix=/opt/erlang/19.1 --with-ssl -enable-threads -enable-smmp-support -enable-kernel-poll --enable-hipe --without-javac
  4. make && make install

4、配置环境变量(/etc/profile.d/erlang.sh)

  1. ERLANG_HOME=/opt/erlang/19.1
  2. PATH=$ERLANG_HOME/bin:$PATH
  3. export ERLANG_HOME
  4. export PATH

source /etc/profile.d/erlang.sh

5、验证Erlang环境正确与否

执行命令:erl

二、安装RabbitMQ3.6.6

1、下载RabbitMQ源代码

  1. wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-generic-unix-3.6.6.tar.xz
    xz -d rabbitmq-server-generic-unix-3.6.6.tar.xz
    tar xf rabbitmq-server-generic-unix-3.6.6.tar

2、启动、关闭rabbitmq-server

  1. ./rabbitmq-server -detached
    ./rabbitmq-plugins enable rabbitmq_management #开启插件管理页面 打开端口15672
    ./rabbitmqctl stop #关闭服务

3、创建用户

  1. ./rabbitmqctl add_user admin password
  2. ./rabbitmqctl set_user_tags mquser administrator
  3. ./rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
  4. rabbitmqctl list_user_permissions admin

4、WEB登陆

http://*.*.*.*:15672

三、集群搭建

1、服务器选择

  1. hostname     IP
     node1   192.168.1.100
  2.  node2   192.168.1.101
  3.  node3   192.168.1.102

2、在三台服务器上分别修改配置

(1) 修改/etc/hosts

  1. 192.168.1.100 node1
  2. 192.168.1.101 node2
  3. 192.168.1.102 node3

(2) 修改/etc/sysconfig/network

  1. HOSTNAME=node1 #node1服务器
  2. HOSTNAME=node2 #node2服务器
  3. HOSTNAME=node3 #node3服务器

(3) 设置hostname

  1. hostname node1 #node1服务器
  2. hostname node2 #node2服务器
  3. hostname node3 #node3服务器

3、修改erlang.cookie,使三台服务器保持一致

通过远程复制文件(scp)或者直接复制内容均是可以的

4、设置好erlang.cookie之后,使用detached后台启动rabbitmq-server

  1. 启动     : ./rabbitmq-server -detached
    查看各节点状态:./rabbitmqctl cluster_status

5、把node2、node3分别加入到集群node1中

  rabbitmqctl stop_app ---仅关闭应用,节点不被关闭

(1) node2

  1. ./rabbitmqctl stop_app
  2. ./rabbitmqctl join_cluster --ram rabbit@node1
  3. ./rabbitmqctl start_app

(2) node3

  1. ./rabbitmqctl stop_app
  2. ./rabbitmqctl join_cluster --ram rabbit@node1
  3. ./rabbitmqctl start_app

6、查看集群情况

  1. ./rabbitmqctl cluster_status
  1. [{nodes,[{disc,[rabbit@node1]},{ram,[rabbit@node3,rabbit@node2]}]},
  2. {running_nodes,[rabbit@node3,rabbit@node2,rabbit@node1]},
  3. {cluster_name,<<"rabbit@node1">>},
  4. {partitions,[]},
  5. {alarms,[{rabbit@node3,[]},{rabbit@node2,[]},{rabbit@node1,[]}]}]

CentOS6.5中配置Rabbitmq3.6.6集群方案的更多相关文章

  1. 大数据项目之_15_帮助文档_NTP 配置时间服务器+Linux 集群服务群起脚本+CentOS6.8 升级到 python 到 2.7

    一.NTP 配置时间服务器1.1.检查当前系统时区1.2.同步时间1.3.检查软件包1.4.修改 ntp 配置文件1.5.重启 ntp 服务1.6.设置定时同步任务二.Linux 集群服务群起脚本2. ...

  2. RabbitMQ3 单机及集群安装配置及优化

    一.操作系统需求及配置 # 1.1.操作系统推荐配置 4C*8G*40G磁盘 # 1.2.内核参数优化 # 系统参数需要留有swap空间,rabbitmq 启动进程用户打开文件数至少需要5万,yum安 ...

  3. RabbitMQ3.6.3集群搭建+HAProxy1.6做负载均衡

    目录 [TOC] 1.基本概念 1.1.RabbitMQ集群概述   通过 Erlang 的分布式特性(通过 magic cookie 认证节点)进行 RabbitMQ 集群,各 RabbitMQ 服 ...

  4. 配置drbd高可用集群

    前期准备: 同步时间 (两个节点) 节点一(172.16.21.6) [root@stu21 heartbeat2]# ntpdate 172.16.0.1 31 Dec 20:59:25 ntpda ...

  5. centos6.5环境下zookeeper-3.4.6集群环境部署及单机部署详解

    centos6.5环境下Zookeeper-3.4.6集群环境部署 [系统]Centos 6.5 集群部署 [软件]准备好jdk环境,此次我们的环境是open_jdk1.8.0_101 zookeep ...

  6.  RabbitMQ3.6.3集群搭建+HAProxy1.6做负载均衡

    目录 目录 1.基本概念 1.1.RabbitMQ集群概述 1.2.软件负载均衡器HAProxy 2.RabbitMQ的配置步骤 2.1.安装 Erlang.RabbitMQ 2.2.修改 /etc/ ...

  7. activemq+Zookeper高可用集群方案配置

    在高并发.对稳定性要求极高的系统中,高可用的是必不可少的,当然ActiveMQ也有自己的集群方案.从ActiveMQ 5.9开始,ActiveMQ的集群实现方式取消了传统的Master-Slave方式 ...

  8. centos7使用kubeadm配置高可用k8s集群

    CountingStars_ 关注 2018.08.12 09:06* 字数 464 阅读 88评论 0喜欢 0 简介 使用kubeadm配置多master节点,实现高可用. 安装 实验环境说明 实验 ...

  9. CentOS中搭建Redis伪分布式集群【转】

    解压redis 先到官网https://redis.io/下载redis安装包,然后在CentOS操作系统中解压该安装包: tar -zxvf redis-3.2.9.tar.gz 编译redis c ...

随机推荐

  1. Spring自定义缓存管理及配置Ehcache缓存

    spring自带缓存.自建缓存管理器等都可解决项目部分性能问题.结合Ehcache后性能更优,使用也比较简单. 在进行Ehcache学习之前,最好对Spring自带的缓存管理有一个总体的认识. 这篇文 ...

  2. 【转载】Delphi7从子线程中发送消息到主线程触发事件执行

    在对数据库的操作时,有时要用一个子线程来进行后台的数据操作.比如说数据备份,转档什么的.在主窗口还能同是进行其它操作.而有时后台每处理一个数据文件,要向主窗口发送消息,让主窗口实时显示处理进度在窗口上 ...

  3. 转《UNIX编程艺术》读书心得

    花了一段时间看完了<UNIX编程艺术>,但不是看得特别仔细,尤其是后面作者通过对工具的讲解来阐述其设计思想,因为很多工具能未曾接触过,难免就会产生一些乏味的感觉.其实就像译者姜宏在译序里说 ...

  4. Emergency(山东省第一届ACM省赛)

    Emergency Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 Kudo’s real name is not Kudo. H ...

  5. HBase自动分区

    HBase扩展和负载均衡的基本单位是Region.Region从本质上说是行的集合.当Region的大小达到一定的阈值,该Region会自动分裂(split),当然也可能是合并(merge),合并可以 ...

  6. Java Docs

    1 Java Docs on Oracle:   1.1 Online(EN): JavaSE6  http://docs.oracle.com/javase/6/docs/api/index.htm ...

  7. URL特殊字符的转义

    + 转义符为 %2B 空格 转义符为 + 或 %20 / 转义符为 %2F ? 转义符为 %3F % 转义符为 %25 # 转义符为 %23 & 转义符为 %26 = 转义符为 %3D

  8. iOS中的round ceil floorf表示的含义

    round:如果参数是小数,则求本身的四舍五入. ceil:如果参数是小数,则求最小的整数但不小于本身. floor:如果参数是小数,则求最大的整数但不大于本身.  

  9. 使用Fluent配置表关系

    转载MS官方文档:https://msdn.microsoft.com/zh-cn/data/jj591620 Configuring Relationships with the Fluent AP ...

  10. .NET获取根目录方法

    1.取得控制台应用程序的根目录方法 方法1.Environment.CurrentDirectory 取得或设置当前工作目录的完整限定路径 方法2.AppDomain.CurrentDomain.Ba ...