1、erlang
先执行如下命令安装依赖
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-develyum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget
然后去http://www.erlang.org/downloads下载源码包到服务器上
tar -zxvf otp_src_20.2.tar.gz -C /usr/local/
解压后执行
./otp_build autoconf./configuremake && make install
全部执行完成后输入erl命令验证安装
注意:每台机器都要执行如上步骤
2、安装rabbitmq
首先确认主机是否设置hostname,不能是localhost,否则无法建立集群
到https://github.com/rabbitmq/rabbitmq-server/releases下载rabbitmq包
解压文件
tar xvf rabbitmq-server-generic-unix-3.7.4.tar mv rabbitmq_server-3.7.4/ rabbitmq
然后修改环境变量,增加
export PATH=$PATH:/opt/rabbitmq/sbin
更新环境变量
source /etc/profile
启动rabbitmq
rabbitmq-server -detached
增加用户使后台能够访问
mkdir /etc/rabbitmqrabbitmq-plugins enable rabbitmq_managementrabbitmqctl add_user root rootrabbitmqctl set_permissions -p / root "." "." ".*"rabbitmqctl set_user_tags root administrator
注意:每台机器都要执行如上步骤
3、集群配置
停止其中1台机器
rabbitmqctl stop
复制存货的那一台机器运行rabbit用户的根目录下的.erlang.cookie文件,如/root/.erlang.cookie,把这个文件复制替换到停止的那台机器对应用户的同名文件,同时赋权
chmod 400 .erlang.cookie
启动停止的节点,查看日志,观察cookie是否生效
rabbitmq-server -detached
查看节点状态,此时应该只有1台
rabbitmqctl cluster_status
然后在刚刚停止的节点上执行
rabbitmqctl stop_apprabbitmqctl join_cluster rabbit@dev01rabbitmqctl start_app
此时再查看集群状态应该是
[root@dev02 ~]# rabbitmqctl cluster_statusCluster status of node rabbit@dev02 ...[{nodes,[{disc,[rabbit@dev01,rabbit@dev02]}]}, {running_nodes,[rabbit@dev01,rabbit@dev02]}, {cluster_name,<<"rabbit@dev01">>}, {partitions,[]}, {alarms,[{rabbit@dev01,[]},{rabbit@dev02,[]}]}]
在管理系统上应该也是如下图