GVKun编程网logo

arm 架构安装 RabbitMQ 并升级 erlang 解决 Requires: erlang >= 23.2(rabbitmq和erlang版本对应)

16

对于想了解arm架构安装RabbitMQ并升级erlang解决Requires:erlang>=23.2的读者,本文将是一篇不可错过的文章,我们将详细介绍rabbitmq和erlang版本对应,并且为

对于想了解arm 架构安装 RabbitMQ 并升级 erlang 解决 Requires: erlang >= 23.2的读者,本文将是一篇不可错过的文章,我们将详细介绍rabbitmq和erlang版本对应,并且为您提供关于64位 CentOS 6.2 安装erlang及rabbitmq Server、arm架构安装RabbitMQ并升级erlang解决Requires: erlang >= 23.2、Centos 6.4 安装erlang&rabbitmq、Centos 6.4 安装erlang&rabbitmq的方法的有价值信息。

本文目录一览:

arm 架构安装 RabbitMQ 并升级 erlang 解决 Requires: erlang >= 23.2(rabbitmq和erlang版本对应)

arm 架构安装 RabbitMQ 并升级 erlang 解决 Requires: erlang >= 23.2(rabbitmq和erlang版本对应)

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.com/downloads/

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/install-rpm.html#package-cloud


#运行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

64位 CentOS 6.2 安装erlang及rabbitmq Server

64位 CentOS 6.2 安装erlang及rabbitmq Server

原文

http://blog.csdn.net/leekwen/article/details/23333659
主题 RabbitMQ Erlang Centos

CentOS 6.2 64bit 安装erlang及RabbitMQ Server

1、操作系统环境(CentOS 6.2 64bit)

[root@leekwen ~]# cat /etc/issue
CentOS release 6.2 (Final)
Kernel \r on an \m
[root@leekwen ~]# cat /proc/cpuinfo |grep "clflush size"
clflush size    : 64
clflush size    : 64
clflush size    : 64
clflush size    : 64
clflush size    : 64
clflush size    : 64
clflush size    : 64
clflush size    : 64
2、安装erlang依赖的基本环境
[root@leekwen ~]# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
3、导入erlang源,并安装erlang
[root@leekwen ~]# rpm --import http://binaries.erlang-solutions.com/debian/erlang_solutions.asc
[root@leekwen ~]# wget -O /etc/yum.repos.d/erlang_solutions.repo  http://binaries.erlang-solutions.com/rpm/centos/erlang_solutions.repo
--2014-04-09 22:29:49--  http://binaries.erlang-solutions.com/rpm/centos/erlang_solutions.repo
Resolving binaries.erlang-solutions.com... 46.235.224.136
Connecting to binaries.erlang-solutions.com|46.235.224.136|:80... connected.
HTTP request sent,awaiting response... 301 Moved Permanently
Location: http://packages.erlang-solutions.com//rpm/centos/erlang_solutions.repo [following]
--2014-04-09 22:29:56--  http://packages.erlang-solutions.com//rpm/centos/erlang_solutions.repo
Resolving packages.erlang-solutions.com... 31.172.186.53
Connecting to packages.erlang-solutions.com|31.172.186.53|:80... connected.
HTTP request sent,awaiting response... 200 OK
Length: 245
Saving to: /etc/yum.repos.d/erlang_solutions.repo

100%[=================================================================================>] 245         --.-K/s   in 0s

2014-04-09 22:30:09 (34.0 MB/s) - /etc/yum.repos.d/erlang_solutions.repo
[root@leekwen ~]# wget http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
Resolving tree.repoforge.org... 78.46.17.228
Connecting to tree.repoforge.org|78.46.17.228|:80... connected.
HTTP request sent,awaiting response... 301 Moved Permanently
Location: http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm [following]
--2014-04-09 22:30:54--  http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
Resolving apt.sw.be... 193.1.193.67
Connecting to apt.sw.be|193.1.193.67|:80... connected.
HTTP request sent,awaiting response... 200 OK
Length: 12700 (12K) [application/x-redhat-package-manager]
Saving to: rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

100%[=================================================================================>] 12,700      4.80K/s   in 2.6s

2014-04-09 22:31:07 (4.80 KB/s) - rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

[root@leekwen ~]# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
[root@leekwen ~]# rpm -i rpmforge-release-0.5.2-2.el6.rf.*.rpm
[root@leekwen ~]# yum update
[root@leekwen ~]# yum update --skip-broken
[root@leekwen ~]# yum install erlang
4、测试erlang环境
[root@leekwen ~]# erl
Erlang R16B03 (erts-5.10.4) [source] [64-bit] [smp:8:8] [async-threads:10] [kernel-poll:false]

Eshell V5.10.4  (abort with ^G)
1> A=12.
12
2> A.
12
3>
BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded
       (v)ersion (k)ill (D)b-tables (d)istribution
^C[root@leekwen ~]#
5、下载并安装rabbitmq-server
[root@leekwen ~]# wget -c http://www.rabbitmq.com/releases/rabbitmq-server/v3.3.0/rabbitmq-server-3.3.0-1.noarch.rpm
--2014-04-10 16:44:24--  
http://www.rabbitmq.com/releases/rabbitmq-server/v3.3.0/rabbitmq-server-3.3.0-1.noarch.rpm
Resolving www.rabbitmq.com... 192.240.153.117
Connecting to www.rabbitmq.com|192.240.153.117|:80... connected.
HTTP request sent,awaiting response... 200 OK
Length: 3869384 (3.7M) [application/x-redhat-package-manager]
Saving to: “rabbitmq-server-3.3.0-1.noarch.rpm”

100%[======================================>] 3,869,384   11.9K/s   in 5m 37s

2014-04-10 16:50:10 (11.2 KB/s) - “rabbitmq-server-3.3.0-1.noarch.rpm” saved [3869384/3869384]

[root@leekwen ~]#  yum install rabbitmq-server-3.3.0-1.noarch.rpm
Loaded plugins: fastestmirror,security
Loading mirror speeds from cached hostfile
 * base: centos.ustc.edu.cn
 * extras: centos.ustc.edu.cn
 * rpmforge: ftp.riken.jp
 * updates: centos.ustc.edu.cn
Setting up Install Process
Examining rabbitmq-server-3.3.0-1.noarch.rpm: rabbitmq-server-3.3.0-1.noarch
Marking rabbitmq-server-3.3.0-1.noarch.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package rabbitmq-server.noarch 0:3.3.0-1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package           Arch     Version     Repository                         Size
================================================================================
Installing:
 rabbitmq-server   noarch   3.3.0-1     /rabbitmq-server-3.3.0-1.noarch   4.3 M

Transaction Summary
================================================================================
Install       1 Package(s)

Total size: 4.3 M
Installed size: 4.3 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : rabbitmq-server-3.3.0-1.noarch                               1/1

Installed:
  rabbitmq-server.noarch 0:3.3.0-1

Complete!
6、启动rabbitmq-server
[root@leekwen ~]# /etc/init.d/rabbitmq-server start
Starting rabbitmq-server:
Failed - check /var/log/rabbitmq/startup_{log,_err}
rabbitmq-server.
[root@leekwen ~]# cat /var/log/rabbitmq/startup_err
[root@leekwen ~]# cat /var/log/rabbitmq/startup_log
ERROR: epmd error for host leekwen: address (cannot connect to host/port)
[root@leekwen ~]# hostname
leekwen
[root@leekwen ~]# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=leekwen
[root@leekwen ~]# cat /etc/hosts
127.0.0.1       localhost
127.0.0.1       leekwen
::1             localhost
7、以上操作排除了因为主机名不同导致RabbitMQ-Server启动报错的问题,请修改主机名(参见上述步骤),再次启动RabbitMQ-Server
[root@leekwen ~]# /etc/init.d/rabbitmq-server restart
Restarting rabbitmq-server: RabbitMQ is not running
Failed - check /var/log/rabbitmq/startup_{log,_err}
rabbitmq-server.
8、结果同样报错,查看错误的日志:
[root@leekwen ~]# cat /var/log/rabbitmq/startup_log
              RabbitMQ 3.3.0. copyright (C) 2007-2013 GoPivotal,Inc.
  ##  ##      Licensed under the MPL.  See http://www.rabbitmq.com/
  ##  ##
  ##########  Logs: /var/log/rabbitmq/rabbit@leekwen.log
  ######  ##        /var/log/rabbitmq/rabbit@leekwen-sasl.log
  ##########
              Starting broker...

BOOT Failed
===========

Error description:
   {case_clause,{error,{{shutdown,{Failed_to_start_child,tcp_listener,{cannot_listen,{0,0,0},5672,eaddrinuse}}},{child,undefined,'rabbit_tcp_listener_sup_:::5672',{tcp_listener_sup,start_link,[{0,[inet6,binary,{packet,raw},{reuseaddr,true},{backlog,128},{nodelay,{linger,{true,0}},{exit_on_close,false}],{rabbit_networking,tcp_listener_started,[amqp]},tcp_listener_stopped,start_client,[]},"TCP Listener"]},transient,infinity,supervisor,[tcp_listener_sup]}}}}

Log files (may contain more information):
   /var/log/rabbitmq/rabbit@leekwen.log
   /var/log/rabbitmq/rabbit@leekwen-sasl.log

Stack trace:
   [{rabbit_networking,start_listener0,4,'-start_listener/4-lc$^0/1-0-',start_listener,'-boot_tcp/0-lc$^0/1-0-',1,boot_tcp,boot,{rabbit,'-run_boot_step/1-lc$^1/1-1-',run_boot_step,[]}]



BOOT Failed
===========

Error description:
   {Could_not_start,rabbit,{bad_return,{{rabbit,start,[normal,[]]},{'EXIT',failure_during_boot,{case_clause,[tcp_listener_sup]}}}}}}}}}

Log files (may contain more information):
   /var/log/rabbitmq/rabbit@leekwen.log
   /var/log/rabbitmq/rabbit@leekwen-sasl.log

{"init terminating in do_boot",{Could_not_start,rabb                                                                                        use,stener_sup,{reusea                                                                                        networking,or,[tcp_listener_sup]}}}}}}}}}}}
tail: /var/log/rabbitmq/startup_log: file truncated        [Failed]


[root@leekwen ~]# cat /var/log/rabbitmq/startup_err

Crash dump was written to: erl_crash.dump
init terminating in do_boot ()
9、出现如上的错误,可能是因为5672端口已经被占用的原因。
查看5672端口的情况,如果有进程占用此端口,请将它关闭后,重新启动RabbitMQ-Server;
[root@leekwen ~]# netstat -atn |grep 5672
tcp        0      0 0.0.0.0:5672                0.0.0.0:*                   LISTEN
[root@leekwen ~]# lsof -i:5672
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
qpidd   1901 qpidd   10u  IPv4  13941      0t0  TCP *:amqp (LISTEN)
[root@leekwen ~]# chkconfig qpidd off
[root@leekwen ~]# netstat -atn |grep 5672
tcp        0      0 0.0.0.0:5672                0.0.0.0:*                   LISTEN
[root@leekwen ~]# chkconfig qpidd --list
qpidd           0:off   1:off   2:off   3:off   4:off   5:off   6:off
[root@leekwen ~]# /etc/init.d/qpidd stop
Stopping Qpid AMQP daemon:                                 [  OK  ]
[root@leekwen ~]# netstat -atn |grep 5672
tcp        0      0 127.0.0.1:25672             127.0.0.1:60925             TIME_WAIT
[root@leekwen ~]# lsof -i:5672
[root@leekwen ~]# /etc/init.d/rabbitmq-server start
Starting rabbitmq-server: SUCCESS
rabbitmq-server.
10、查看RabbitMQ服务启动的状态,并开启RabbitMQ的相应管理插件:
[root@leekwen ~]# rabbitmqctl status
Status of node rabbit@leekwen ...
[{pid,716},{running_applications,[{rabbit,"RabbitMQ","3.3.0"},{os_mon,"CPO  CXC 138 46","2.2.14"},{mnesia,"MnesIA  CXC 138 12","4.11"},{xmerl,"XML parser","1.3.5"},{sasl,"SASL  CXC 138 11","2.3.4"},{stdlib,"ERTS  CXC 138 10","1.19.4"},{kernel,"2.16.4"}]},{os,{unix,linux}},{erlang_version,"Erlang R16B03 (erts-5.10.4) [source] [64-bit] [smp:8:8] [async-threads:30] [kernel-poll:true]\n"},{memory,[{total,36436456},{connection_procs,2704},{queue_procs,5408},{plugins,{other_proc,13704576},60240},{mgmt_db,{msg_index,24368},{other_ets,789624},{binary,13672},{code,16399491},{atom,594537},{other_system,4841836}]},{alarms,{listeners,[{clustering,25672,"::"},{amqp,"::"}]},{vm_memory_high_watermark,0.4},{vm_memory_limit,6690450636},{disk_free_limit,50000000},{disk_free,47402364928},{file_descriptors,[{total_limit,924},{total_used,3},{sockets_limit,829},{sockets_used,1}]},{processes,[{limit,1048576},{used,131}]},{run_queue,{uptime,83}]
...done.

[root@leekwen ~]# netstat -atn |grep 5672
tcp        0      0 0.0.0.0:25672               0.0.0.0:*                   LISTEN
tcp        0      0 :::5672                     :::*                        LISTEN
[root@leekwen ~]# lsof -i:5672
COMMAND  PID     USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
beam.smp 716 rabbitmq   15u  IPv6 1948888      0t0  TCP *:amqp (LISTEN)
[root@leekwen ~]# rabbitmq-plugins list
[ ] amqp_client                       3.3.0
[ ] cowboy                            0.5.0-rmq3.3.0-git4b93c2d
[ ] eldap                             3.3.0-gite309de4
[ ] mochiweb                          2.7.0-rmq3.3.0-git680dba8
[ ] rabbitmq_amqp1_0                  3.3.0
[ ] rabbitmq_auth_backend_ldap        3.3.0
[ ] rabbitmq_auth_mechanism_ssl       3.3.0
[ ] rabbitmq_consistent_hash_exchange 3.3.0
[ ] rabbitmq_federation               3.3.0
[ ] rabbitmq_federation_management    3.3.0
[ ] rabbitmq_management               3.3.0
[ ] rabbitmq_management_agent         3.3.0
[ ] rabbitmq_management_visualiser    3.3.0
[ ] rabbitmq_mqtt                     3.3.0
[ ] rabbitmq_shovel                   3.3.0
[ ] rabbitmq_shovel_management        3.3.0
[ ] rabbitmq_stomp                    3.3.0
[ ] rabbitmq_tracing                  3.3.0
[ ] rabbitmq_web_dispatch             3.3.0
[ ] rabbitmq_web_stomp                3.3.0
[ ] rabbitmq_web_stomp_examples       3.3.0
[ ] sockjs                            0.3.4-rmq3.3.0-git3132eb9
[ ] webmachine                        1.10.3-rmq3.3.0-gite9359c7
[root@leekwen ~]# rabbitmq-plugins enable rabbitmq_management
The following plugins have been enabled:
  mochiweb
  webmachine
  rabbitmq_web_dispatch
  amqp_client
  rabbitmq_management_agent
  rabbitmq_management
Plugin configuration has changed. Restart RabbitMQ for changes to take effect.
[root@leekwen ~]# rabbitmq-plugins enable mochiweb webmachine rabbitmq_web_dispatch amqp_client rabbitmq_m                                                             anagement_agent rabbitmq_management
Plugin configuration unchanged.
[root@leekwen ~]# rabbitmq-plugins list
[E] amqp_client                       3.3.0
[ ] cowboy                            0.5.0-rmq3.3.0-git4b93c2d
[ ] eldap                             3.3.0-gite309de4
[E] mochiweb                          2.7.0-rmq3.3.0-git680dba8
[ ] rabbitmq_amqp1_0                  3.3.0
[ ] rabbitmq_auth_backend_ldap        3.3.0
[ ] rabbitmq_auth_mechanism_ssl       3.3.0
[ ] rabbitmq_consistent_hash_exchange 3.3.0
[ ] rabbitmq_federation               3.3.0
[ ] rabbitmq_federation_management    3.3.0
[E] rabbitmq_management               3.3.0
[E] rabbitmq_management_agent         3.3.0
[ ] rabbitmq_management_visualiser    3.3.0
[ ] rabbitmq_mqtt                     3.3.0
[ ] rabbitmq_shovel                   3.3.0
[ ] rabbitmq_shovel_management        3.3.0
[ ] rabbitmq_stomp                    3.3.0
[ ] rabbitmq_tracing                  3.3.0
[E] rabbitmq_web_dispatch             3.3.0
[ ] rabbitmq_web_stomp                3.3.0
[ ] rabbitmq_web_stomp_examples       3.3.0
[ ] sockjs                            0.3.4-rmq3.3.0-git3132eb9
[E] webmachine                        1.10.3-rmq3.3.0-gite9359c7
[root@leekwen ~]# rabbitmq-plugins list
[E] amqp_client                       3.3.0
[ ] cowboy                            0.5.0-rmq3.3.0-git4b93c2d
[ ] eldap                             3.3.0-gite309de4
[E] mochiweb                          2.7.0-rmq3.3.0-git680dba8
[ ] rabbitmq_amqp1_0                  3.3.0
[ ] rabbitmq_auth_backend_ldap        3.3.0
[ ] rabbitmq_auth_mechanism_ssl       3.3.0
[ ] rabbitmq_consistent_hash_exchange 3.3.0
[ ] rabbitmq_federation               3.3.0
[ ] rabbitmq_federation_management    3.3.0
[E] rabbitmq_management               3.3.0
[E] rabbitmq_management_agent         3.3.0
[ ] rabbitmq_management_visualiser    3.3.0
[ ] rabbitmq_mqtt                     3.3.0
[ ] rabbitmq_shovel                   3.3.0
[ ] rabbitmq_shovel_management        3.3.0
[ ] rabbitmq_stomp                    3.3.0
[ ] rabbitmq_tracing                  3.3.0
[E] rabbitmq_web_dispatch             3.3.0
[ ] rabbitmq_web_stomp                3.3.0
[ ] rabbitmq_web_stomp_examples       3.3.0
[ ] sockjs                            0.3.4-rmq3.3.0-git3132eb9
[E] webmachine                        1.10.3-rmq3.3.0-gite9359c7
[root@leekwen ~]# netstat -atn |grep 5672
tcp        0      0 0.0.0.0:25672               0.0.0.0:*                   LISTEN
tcp        0      0 :::5672                     :::*                        LISTEN
[root@leekwen ~]# netstat -atn |grep 15672
[root@leekwen ~]# netstat -atn |grep 55672
[root@leekwen ~]# /etc/init.d/rabbitmq-server restart
Restarting rabbitmq-server: SUCCESS
rabbitmq-server.
[root@leekwen ~]# netstat -atn |grep 55672
[root@leekwen ~]# netstat -atn |grep 5672
tcp        0      0 0.0.0.0:15672               0.0.0.0:*                   LISTEN
tcp        0      0 0.0.0.0:25672               0.0.0.0:*                   LISTEN
tcp        0      0 127.0.0.1:54463             127.0.0.1:25672             TIME_WAIT
tcp        0      0 127.0.0.1:60321             127.0.0.1:25672             TIME_WAIT
tcp        0      0 127.0.0.1:25672             127.0.0.1:56750             TIME_WAIT
tcp        0      0 :::5672                     :::*                        LISTEN

就可以用guest,guest登陆http://192.168.1.101:15672端口了。

注意:如果此时你从端口15672或55672登陆不了,请关闭CentOS6.2的防火墙,再次登陆,

如果仍然出现无法登陆的想象,查看日志后,显示:

=ERROR REPORT==== 20-Apr-2014::00:55:15 ===
webmachine error: path="api/whoami"
"Unauthorized"
那么请运行如下的命令,增加用户admin,密码admin即可。
[root@leekwen ~]# rabbitmqctl add_user admin admin
Creating user "admin" ...
...done.
[root@leekwen ~]# rabbitmqctl list_users
Listing users ...
admin   []
guest   [administrator]
...done.
[root@leekwen ~]# rabbitmqctl set_user_tags admin administrator
Setting tags for user "admin" to [administrator] ...
...done.
[root@leekwen ~]# rabbitmqctl list_users
Listing users ...
admin   [administrator]
guest   [administrator]
...done.
到此,配置完成。

arm架构安装RabbitMQ并升级erlang解决Requires: erlang >= 23.2

arm架构安装RabbitMQ并升级erlang解决Requires: erlang >= 23.2

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

Centos 6.4 安装erlang&rabbitmq

Centos 6.4 安装erlang&rabbitmq

1.1 准备工作,先安装依赖库

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel  
yum install ncurses-devel  

1.2 下载erlang源码 

wget http://www.erlang.org/download/otp_src_R16B02.tar.gz
cp otp_src_R16B02.tar.gz /usr/src/otp_src_R16B02.tar.gz
cd /usr/src
tar -xzvf otp_src_R16B02.tar.gz  
mv otp_src_R16B02 erlang_R16B

1.3 编译安装

cd erlang_R16B/ 
./configure --prefix=/usr/local/erlang --with-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac  //不用java编译,故去掉java避免错误  
make && make install //编译后安装  

1.4 配置环境变量

vi /etc/profile  
ERL_HOME=/usr/local/erlang  
export PATH=$PATH:$ERL_HOME/bin  

2 安装rabbitmq

2.1 下载

wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.1.5/rabbitmq-server-3.1.5.tar.gz 
cp rabbitmq-server-3.1.5.tar.gz /usr/src
cd /usr/src
tar -xzvf rabbitmq-server-3.1.5.tar.gz

2.2 安装依赖库

yum -y install xmlto 

否则会编译不通过:

/bin/sh: line 1: xmlto: command not found

2.3 编译

cd rabbitmq-server-3.1.5 
make 
make install TARGET_DIR=/usr/local/rabbitmq SBIN_DIR=/usr/local/rabbitmq/sbin MAN_DIR=/usr/local/rabbitmq/man //将rabbitmq编译到/opt/mq/rabbitmq目录 

2.4 安装web插件管理界面

cd /usr/local/rabbitmq/sbin 
mkdir /etc/rabbitmq/ 
./rabbitmq-plugins enable rabbitmq_management 

查看插件列表

./rabbitmq-plugins list

2.5 常用命令

启动rabbitmq

./rabbitmq-server -detached

在浏览器上输入http://127.0.0.1:15672/登录管理界面了

使用登录的名户名和密码默认都算guest

关闭rabbitmq

./rabbitmqctl stop

Centos 6.4 安装erlang&rabbitmq的方法

Centos 6.4 安装erlang&rabbitmq的方法

1. 安装 erlang

1.1 准备工作,先安装依赖库

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel

yum install ncurses-devel

1.2 下载erlang源码

wget http://www.erlang.org/download/otp_src_R16B02.tar.gz

cp otp_src_R16B02.tar.gz /usr/src/otp_src_R16B02.tar.gz

cd /usr/src

tar -xzvf otp_src_R16B02.tar.gz

mv otp_src_R16B02 erlang_R16B

1.3 编译安装

cd erlang_R16B/

./configure --prefix=/usr/local/erlang --with-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac //不用java编译,故去掉java避免错误

make && make install //编译后安装

1.4 配置环境变量

vi /etc/profile

ERL_HOME=/usr/local/erlang

export PATH=$PATH:$ERL_HOME/bin

2 安装rabbitmq

2.1 下载wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.1.5/rabbitmq-server-3.1.5.tar.gzcp rabbitmq-server-3.1.5.tar.gz /usr/srccd /usr/srctar -xzvf rabbitmq-server-3.1.5.tar.gz2.2 安装依赖库yum -y install xmlto否则会编译不通过:/bin/sh: line 1: xmlto: command not found2.3 编译cd rabbitmq-server-3.1.5makemake install TARGET_DIR=/usr/local/rabbitmq SBIN_DIR=/usr/local/rabbitmq/sbin MAN_DIR=/usr/local/rabbitmq/man //将rabbitmq编译到/opt/mq/rabbitmq目录2.4 安装web插件管理界面cd /usr/local/rabbitmq/sbinmkdir /etc/rabbitmq/./rabbitmq-plugins enable rabbitmq_management查看插件列表./rabbitmq-plugins list2.5 常用命令启动rabbitmq./rabbitmq-server -detached在浏览器上输入http://127.0.0.1:15672/登录管理界面了使用登录的名户名和密码默认都算guest关闭rabbitmq./rabbitmqctl stop

今天关于arm 架构安装 RabbitMQ 并升级 erlang 解决 Requires: erlang >= 23.2rabbitmq和erlang版本对应的分享就到这里,希望大家有所收获,若想了解更多关于64位 CentOS 6.2 安装erlang及rabbitmq Server、arm架构安装RabbitMQ并升级erlang解决Requires: erlang >= 23.2、Centos 6.4 安装erlang&rabbitmq、Centos 6.4 安装erlang&rabbitmq的方法等相关知识,可以在本站进行查询。

本文标签: