笔者所在业务环境 springcloud 1.5.8 jdk1.8
软件安装包百度网盘链接: https://pan.baidu.com/s/1Augp_VYZTfRMSQkchkbx-w 提取码: neqh
也是目前产品中线上用的版本
一、安装编译工具,安装Erlang之前需要进行编译工具安装,通过执行以下命令就可以完成安装。
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
二、安装和配置Erlang
#进入上传安装工具存放目录
cd /root
#解压erlang
tar xvf otp_src_20.3.tar.gz
#进入解压erlang目录
cd otp_src_20.3
#配置 '--prefix'指定的安装目录,必须记住这个目录下面需要修改此目录
./configure --prefix=/usr/local/erlang --with-ssl -enable-threads -enable-smmp-support -enable-kernel-poll --enable-hipe --without-javac
#安装
make && make install
#配置环境变量
vi /etc/profile
在你配置jdk等环境变量的地方加入
#使环境变量生效
source /etc/profile
#输入命令检验是否安装成功,如下输出表示安装成功
erl
三、安装和配置rabbitmq
tar xvf rabbitmq-server-generic-unix-3.6.15.tar
cd rabbitmq_server-3.6.15/
pwd (pwd命令可以查看当前所在目录 配置环境变量直接复制pwd结果)
#配置环境变量
/etc/profile
source /etc/profile
四、安装管理插件和延迟消息队列所需插件
由于笔者业务需要延迟消息队列 这个需要安装额外插件实现
rabbitmq-plugins enable rabbitmq_management
先将.ez结尾的延迟消息插件放在 rabbitmq文件夹里面的plugins文件夹下
rabbitmq-plugins enable rabbitmq_delayed_message_exchange
五、启动和停止
由于启动和停止的命令方式有很多种 书上也列举了很多 这里简单说下我用的
#进入RabbitMQ sbin目录
cd xxxxxxxx
#启动命令,该命令ctrl+c后会关闭服务
./rabbitmq-server
#在后台启动Rabbit
./rabbitmq-server -detached
#关闭服务
./rabbitmqctl stop
#关闭服务(kill) 找到rabbitmq服务的pid [不推荐]
ps -ef|grep rabbitmq
kill -9 ****
六、添加管理员账号
此账号也是项目中配置文件需要用的用户名和密码
#进入RabbitMQ sbin目录
cd xxxxxxxx
#添加用户
#rabbitmqctl add_user Username Password
./rabbitmqctl add_user admin 123456
#分配用户标签
#rabbitmqctl set_user_tags User Tag
#[administrator]:管理员标签
./rabbitmqctl set_user_tags admin administrator
#设置读写权限
rabbitmqctl set_permissions -p / admin '.*' '.*' '.*'
七、测试
浏览器输入地址:http://服务器IP地址:15672/
页面如何无法打开时,需要先查看防火墙是否关闭或者端口号是否在防火墙中打开。
RabbitMQ常用端口
4369 (epmd),
25672 (Erlang distribution)
5672, 5671 (AMQP 0-9-1 without and with TLS)
15672 (if management plugin is enabled)
61613, 61614 (if STOMP is enabled)
1883, 8883 (if MQTT is enabled)
笔者在自己买的云服务器上安装的mq 将以上端口入站规则加入后,又在iptables里面加入了以上端口。重启了云服务器又重启了mq。最终成功业务代码连上mq
参考网址 https://my.oschina.net/sdlvzg/blog/2209385