获取erlang(RabbitMQ依赖erlang)
erlang网站主页:https://www.erlang.org/
下载地址:https://erlang.org/download/otp_src_25.0.tar.gz
获取RabbitMQ
RabbitMQ网站主页: https://www.rabbitmq.com/
下载地址: https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.10.4/rabbitmq-server-generic-unix-3.10.4.tar.xz
安装 erlang 的依赖工具
[root@bogon local]# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC-devel
进入erlang 安装包解压文件对 erlang 进行安装环境的配置
新建一个文件夹
[root@bogon local]# mkdir erlang
对 erlang 进行安装环境的配置
[root@bogon local]# cd otp_src_25.0
[root@bogon otp_src_25.0]# ./configure --prefix=/usr/local/erlang --without-javac
编译安装
[root@bogon otp_src_25.0]# make && make install
验证一下 erlang 是否安装成功了
[root@bogon otp_src_25.0]# ./bin/erl
运行下面的语句输出“hello world”
io:format("hello world~n", []).
大功告成,我们的 erlang 已经安装完成。
配置 erlang 环境变量
echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile
运行下列命令使配置文件profile生效
[root@bogon etc]# source /etc/profile
输入 erl 查看 erlang 环境变量是否配置正确
[root@bogon etc]# erl
安装RabbitMQ
1.解压 RabbitMQ : tar -xvf rabbitmq-server-generic-unix-3.10.4.tar.xz
默认地址 /usr/local/rabbitmq/
2.修改环境变量:
echo 'export PATH=$PATH:/usr/local/rabbitmq/sbin' >> /etc/profile
执行如下命令,使环境变量立即生效
source /etc/profile
3.启动 RabbitMQ
切换至 RabbitMQ 安装目录:cd /usr/local/rabbitmq/sbin
启动 RabbitMQ : ./rabbitmq-server
如果有如下报错 :
./rabbitmq-server: 第 73 行:exec: erl: 未找到
是由于 erlang 的环境变量配置问题,临时配置 erlang 的环境变量,执行命令,路径为 erlang 的安装路径下的bin目录: export PATH=$PATH:/usr/local/erlang/bin,再次启动,启动成功提示如下:
Doc guides: https://rabbitmq.com/documentation.html
Support: https://rabbitmq.com/contact.html
Tutorials: https://rabbitmq.com/getstarted.html
Monitoring: https://rabbitmq.com/monitoring.html
Logs:/usr/local/rabbitmq/var/log/rabbitmq/rabbit@localhost.log
/usr/local/rabbitmq/var/log/rabbitmq/rabbit@localhost_upgrade.log
<stdout>
Config file(s): (none)
Starting broker... completed with 0 plugins.
日志路径:/usr/local/rabbitmq/var/log/rabbitmq/rabbit@localhost.log
4.查看启动的 RabbitMQ : netstat -nap | grep 5672
tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN 1495/beam.smp
tcp6 0 0 :::5672 :::* LISTEN 1495/beam.smp
5.关闭 RabbitMQ : ./rabbitmqctl stop
提示如下:
Stopping and halting node rabbit@localhost ...
可以通过命令 rabbitmq-server 和 erl,来直接启动 RabbitMQ 和 erlang
6.后台启动 RabbitMQ : rabbitmq-server -detached
7.查看后台是否启动成功:ps -ef | grep rabbitmq
root 1737 1 0 7月06 ? 00:00:31 /usr/local/erlang/lib/erlang/erts-13.0/bin/beam.smp -W w -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -sbwt none -sbwtdcpu none -sbwtdio none -B i -- -root /usr/local/erlang/lib/erlang -bindir /usr/local/erlang/lib/erlang/erts-13.0/bin -progname erl -- -home /root -- -pa -noshell -noinput -s rabbit boot -boot start_sasl -syslog logger [] -syslog syslog_error_logger false -kernel prevent_overlapping_partitions false -noshell -noinput
root 2686 1426 0 00:07 pts/0 00:00:00 grep --color=auto rabbit
8.开启插件
rabbitmq-plugins enable rabbitmq_management
9.创建账号
9.1 查看所有用户
rabbitmqctl list_users
9.2 添加用户
rabbitmqctl add_user admin 123456
9.3 配置权限
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
9.4 查看用户权限
rabbitmqctl list_user_permissions admin
9.5 设置tag
rabbitmqctl set_user_tags admin administrator
10.开放端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent
11.重启防火墙
firewall-cmd --reload
##后者关闭防火墙
systemctl stop firewalld
http://ip:15672 //访问RabbitMQ管理界面
开始配置集群
1.配置两台机器的hosts
vim /etc/hosts ##修改后使用:wq!保存并退出
2、停止服务
rabbitmqctl stop
3、设置erlang cookie
这里将 node1 的该文件复制到 node2,由于这个文件权限是 400为方便传输,先修改权限,所以需要先修改 node2中的该文件权限为 777。
集群各节点的cookie必须保持一致,否则无法通信。
erlang是通过主机名来连接服务,必须保证各个主机名之间可以ping通。可以通过编辑/etc/hosts来手工添加主机名和IP对应关系。如果主机名ping不通,rabbitmq服务启动会失败。
A、设置777权限
slave1&slave2:
chmod 777 /root/.erlang.cookie
注意.erlang.cookie的目录,也有可能在/var/lib/rabbitmq/.erlang.cookie
B、拷贝cookie文件
将master节点上的cookie拷贝至slave1&slave2
scp /root/.erlang.cookie slave1:/root/
拷贝过程中会输yes和密码
C、最后将权限和所属用户/组修改回来
slave1&slave2:
chmod 400 /root/.erlang.cookie
chown root /root/.erlang.cookie
chgrp root /root/.erlang.cookie
2.运行各节点
master&slave1&slave2:
rabbitmqctl stop
rabbitmq-server –detached
3.组成集群
将slave1&slave2加入集群
rabbitmqctl stop_app
rabbitmqctl join_cluster rabbit@master
rabbitmqctl start_app
验证集群
文章来源:https://www.toymoban.com/news/detail-612601.html
集群搭建成功!文章来源地址https://www.toymoban.com/news/detail-612601.html
项目中配置集群访问
spring:
rabbitmq:
addresses: 172.31.163.91:5672,172.31.163.90:5672,172.31.163.92:5672
username: admin
password: 123456
virtual-host: /test
到了这里,关于在Linux下安装RabbitMQ的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!