arm架构装置RabbitMQ
#查看Linux内核版本
uname -r
4.18.0-80.7.2.el7.aarch64
#或者应用 uname -a
#查看erlang版本,输出erl
erl
#显示如下:Erlang/OTP 24版本,我这里是降级后的版本了,原本版本比拟低
Erlang/OTP 24 [erts-12.0] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1]
Eshell V12.0 (abort with ^G)
1>
#yum间接装置RabbitMQ,如果erlang版本比拟低,装置的RabbitMQ的版本也会比拟低
yum install -y rabbitmq-server
#如果装置高版本的RabbitMQ报错
Error: Package: rabbitmq-server-3.8.16-1.el7.noarch (rabbitmq_rabbitmq-server)
Requires: erlang >= 23.2
Available: erlang-R16B-03.18.el7.aarch64 (epel)
erlang = R16B-03.18.el7
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
#提醒erlang的版本太低,必须大于erlang >= 23.2
卸载erlang并降级erlang
Erlang官网装置地址: https://www.erlang-solutions….
rpm包装置
#卸载erlang
yum -y remove erlang-*
#官网下载rpm包
#抉择对应的零碎,如: Centos
#抉择零碎对应的版本,如:CentOS7 (arm64位) 下载: esl-erlang_24.0.1-1_centos_7_arm64.rpm
#Rpm包装置
sudo rpm -ivh esl-erlang_24.0.1-1_centos_7_arm64.rpm
yum装置erlang
#卸载erlang
yum -y remove erlang-*
#按官网的提醒操作
#应用存储库装置
wget https://packages.erlang-solutions.com/erlang-solutions-2.0-1.noarch.rpm
rpm -Uvh erlang-solutions-2.0-1.noarch.rpm
#旧的存储库
wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
#手动增加存储库条目
rpm --import https://packages.erlang-solutions.com/rpm/erlang_solutions.asc
#增加到“/etc/yum.repos.d/”目录文件中
vim erlang_solutions.repo
[erlang-solutions]
name=CentOS $releasever - $basearch - Erlang Solutions
baseurl=https://packages.erlang-solutions.com/rpm/centos/$releasever/$basearch
gpgcheck=1
gpgkey=https://packages.erlang-solutions.com/rpm/erlang_solutions.asc
enabled=1
#查看erlang可装置版本
yum list |grep erlang
yum list erlang --showduplicates | sort -r
#装置erlang,也可装置指定版本
yum install -y erlang
#装置erlang指定版本
yum install erlang-24.0-1.el7.aarch64
RabbitMQ官网装置
应用PackageCloud装置RabbitMQ是最简略的装置形式,依照官网文档来就能够了。
官网地址:
https://www.rabbitmq.com/inst…
#运行Package Cloud提供的RabbitMQ Server疾速装置脚本
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
#运行Package Cloud提供Erlang环境疾速装置脚本
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
#应用yum装置Erlang环境
yum -y install erlang
#装置socat, logrotate依赖
yum install socat logrotate -y
#应用yum装置RabbitMQ Server
yum install -y rabbitmq-server
配置RabbitMQ开机自启动服务
# 启动rabbitmq服务
sudo systemctl start rabbitmq-server.service
# 查看rabbitmq启动状态
sudo systemctl status rabbitmq-server.service
# 进行rabbitmq服务
sudo systemctl stop rabbitmq-server.service
# 重启rabbitmq服务
sudo systemctl restart rabbitmq-server.service
# 开机自启动服务
sudo systemctl enable rabbitmq-server.service
# 查看rabbitmq开机启动状态 enabled:开启, disabled:敞开
sudo systemctl is-enabled rabbitmq-server.service
# 禁止开启启动
sudo systemctl disable rabbitmq-server.service
创立用户操作
#查看以后用户命令:
rabbitmqctl list_users
#创立用户admin 明码: abcd_2021
rabbitmqctl add_user admin abcd_2021
#将用户给于管理员权限
rabbitmqctl set_user_tags admin administrator
#查看用户权限
rabbitmqctl list_user_permissions admin
#设置用户权限(承受来自所有Host的所有操作)
rabbitmqctl set_permissions -p "/" admin '.*' '.*' '.*'
开启MQTT,web治理界面等插件
#查看插件
rabbitmq-plugins list
#启用WEB治理界面插件,治理控制台的默认端口是:15672
#浏览器拜访:http://127.0.0.1:15672/ 输出用户名和明码
rabbitmq-plugins enable rabbitmq_management
#启用MQTT插件,默认端口mqtt是:1883 mqtt://127.0.0.1:1883
#能够应用EMQ的MQTTX客户端工具连贯,或者MQTTLens工具
rabbitmq-plugins enable rabbitmq_mqtt
#启用MQTT的websocket插件,默认端口websocket是:15675 ws://127.0.0.1:15675/ws
#留神: path是 /ws
rabbitmq-plugins enable rabbitmq_web_mqtt
#查看启动的端口
netstat -tpnl
RabbitMQ过期策略
#TTL政策将删除指定的工夫到期后未应用的队列30分钟. beam.smp high cpu load
rabbitmqctl set_policy expiry ".*" '{"expires":1800000}' --apply-to queues
#从队列维度设置音讯超时工夫 60秒:
rabbitmqctl set_policy TTL ".*" '{"message-ttl":60000}' --apply-to queues
发表回复