首先需要提前准备好rabbitMq的tar.gz包和erlang的tar包(具体去官网的github下载这里不做具体描述)
相关Linux命令:
新增去到apps目录下创建erlang文件夹
mkdir erlang
安装依赖库
yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget gtk2-devel binutils-devel
解压erlang.tar包
tar -zxvf erlang包名.tar.gz
重命名刚解压的文件夹
mv 刚得到的文件夹名 erlang
进入刚解压的文件夹中
cd erlang
配置安装路径(需要提前创建好路径下的文件夹)
./configure --prefix=/apps/erlang
执行安装
make install
编辑erlang到环境变量中(这里连同rabbitmq的一起配置了注意路径)
vim /etc/profile
export PATH=$PATH:/apps/erlang/bin
export PATH=$PATH:/apps/rabbitmq/sbin
:wq
刷新环境变量
source /etc/profile
验证erlang版本
erl
如果成功执行以下命令退出
halt().
安装xz软件
yum install -y xz
第一次解压xzrabbitmq的tar包
xz -d rabbitmq-xxxx.tar.xz
第二次解压这里如果报错is exits,请不要加-Z解压
tar -xvf rabbitmq-server-xxxx.tar
重命名
mv 刚解压得到的mq文件夹 rabbitmq
移动目录到指定路径
mv rabbitmq /apps
移动到rabbitmq目录
cd /apps/rabbitmq
环境变量上面一起配了可以忽略此步
export ERLANG_HOME=/apps/rabbitmq/sbin;
后台启动mq服务
rabbitmq-server -detached
查看状态
rabbitmqctl status
关闭mq服务(此步不用操作,卸载时mq需要)
rabbitmqctl stop
rabbitmqctl stop_app
添加用户
rabbitmqctl add_user 用户名 密码
授权用户
rabbitmqctl set_permissions -p "/" 用户名 ".*" ".*" ".*"
查看用户权限
rabbitmqctl list_user_permissions 用户名
添加用户到tag
rabbitmqctl set_user_tags 用户名 administrator
进入etc/init.d 目录
cd /etc/init.d
在etc/init.d 目录下新建文件rabbitmq-server
touch rabbitmq-server
编辑rabbitmq-server,复制脚本
vim /etc/init.d/rabbitmq-server
添加执行权限
chmod u+x /etc/init.d/rabbitmq-server
添加到服务列表
chkconfig rabbitmq-server on
开启插件
rabbitmq-plugins enable rabbitmq_management
集群搭建
编辑hostname(三台机器分别配置)
vim /etc/hosts
10.27.xx.xx0 zhuji1
10.27.xx.xx1 zhuji2
10.27.xx.xx2 zhuji3
:wq
拷贝主机的erlang.cookie值(在其他两台机上拷贝,保证三台机的cookie值一致)
需要注意此路路径一般都保存在两个地方:
①使用官网推荐方式安装(rpm) /var/lib/rabbitmq/.erlang.cookie
②如果是tar方式解压一般保存在根目录下(这里是root安装所在) /root/.erlang.cookie
如果想要查看到文件需要 ls -a (文件是隐藏的)
开启文件修改权限(配置两台子机器)
chmod 600 /root/.erlang.cookie
修改cookie值为主机的cookie,直接复制粘贴保存(其实scp的方式复制是最好的,奈何权限限制出此下策)
vim /root/.erlang.cookie
删掉原有的数据,保存为主机的数据
:wq
重启主机器(这里选10.27.xx.xx0作为主机)
rabbitmqctl stop_app
rabbitmqctl start_app
rabbitmq-plugins enable rabbitmq_management
配置两台子机器
1.在其他两台机器分别执行以下命令(停止机器服务与清空数据)
rabbitmqctl stop_app
rabbitmqctl reset
2.加入主机集群(如果主机服务主机不对,请查看前面的hostname配置与主机查看rabbit启动状态日志中的是否一致)
rabbitmqctl join_cluster rabbit@zhuji1
3.启动mq与管理工具
rabbitmqctl start_app
rabbitmq-plugins enable rabbitmq_management