麒麟系统ARM安装rabbitmq

简单记录下,信创服务器:麒麟系统,安装rabbitmq的踩坑记录。

本文章参考了很多大佬文章,我整理后提供。

一、安装基础依赖

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

二、下载安装包

注意:如果你系统没有网络的话,需要离线下载好安装包,然后拷贝进去安装即可。

|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| erlang | http://erlang.org/download/otp_src_20.3.tar.gz |
| unixODBC | http://www.unixodbc.org/unixODBC-2.3.7.tar.gz |
| rabbitMq | https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.8/rabbitmq-server-generic-unix-3.7.8.tar.xz |

2.1、 安装unixODBC

tar -xvf unixODBC-2.3.7.tar.gz

cd unixODBC-2.3.7

./configure --prefix=/usr/local/unixODBC-2.3.7 --includedir=/usr/include --libdir=/usr/lib -bindir=/usr/bin --sysconfdir=/etc

//这是编译和安装
make && make install

2.2、这里记得一定要安装openssl ,不然当你启动rabbitmq的时候,会报以下错误:

BOOT FAILED
===========

Error description:
   {error,{missing_dependencies,[crypto,ssl],
                                [cowboy,cowlib,rabbitmq_management,
                                 rabbitmq_management_agent,
                                 rabbitmq_trust_store]}}

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

Stack trace:
   [{rabbit_plugins,ensure_dependencies,1,
                    [{file,"src/rabbit_plugins.erl"},{line,185}]},
    {rabbit_plugins,prepare_plugins,1,
                    [{file,"src/rabbit_plugins.erl"},{line,203}]},
    {rabbit,broker_start,0,[{file,"src/rabbit.erl"},{line,300}]},
    {rabbit,start_it,1,[{file,"src/rabbit.erl"},{line,424}]},
    {init,start_em,1,[]},
    {init,do_boot,3,[]}]

{"init terminating in do_boot",{error,{missing_dependencies,[crypto,ssl],[cowboy,cowlib,rabbitmq_management,rabbitmq_management_agent,rabbitmq_trust_store]}}}
init terminating in do_boot ({error,{missing_dependencies,[crypto,ssl],[cowboy,cowlib,rabbitmq_management,rabbitmq_management_agent,rabbitmq_trust_store]}})

Crash dump is being written to: erl_crash.dump...done

三、安装openssl

cd /usr/local/src

wget http://www.openssl.org/source/openssl-1.0.1s.tar.gz
tar -zvxf openssl-1.0.1s.tar.gz

cd openssl-1.0.1s

./config --prefix=/usr/local/openssl

vi Makefile

使用/搜索CFLAG 添加如下图所示,其实就是添加-fPIC

make && make install

四、 安装erlang20.3.x

tar -xvf otp_src_20.3.tar.gz

cd otp_src_20.3
XML 复制代码
./configure --prefix=/usr/local/erlang --with-ssl=/usr/local/openssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac
make && make install

4.1、 设置环境变量

XML 复制代码
vim /etc/profile

添加如下内容:

XML 复制代码
export PATH=$PATH:/usr/local/erlang/bin

修改完毕后,使该配置文件生效

XML 复制代码
source /etc/profile

4.2、 运行

安装完成后测试erlang是否能正常运行,终端输入erl

XML 复制代码
erl

4.3、验证下erlang是否支持ssl

在erl中执行crypto:start().,如果返回ok,则安装成功!

五、安装rabbitmq

解压下载好的rabbitmq-server-generic-unix-3.7.8.tar.xz

XML 复制代码
tar -xvf rabbitmq-server-generic-unix-3.7.8.tar.xz

修改环境变量

XML 复制代码
vim /etc/profile

在文件末尾添加

XML 复制代码
export PATH=$PATH: /home/rabbitmq_server-3.7.8/sbin //根据软件实际存放路径修改

将该软件的地址添加到环境变量中,source该文件使得配置生效

XML 复制代码
source /etc/profile

5.1、 运行rabbitmq

启动rabbitmq,-detached代表后台守护进程方式启动。

XML 复制代码
rabbitmq-server --detached

但是用这种方式启动,你关闭中断或者ctrl+c 后程序就stop了。

所以运行命令用这个:

XML 复制代码
nohup rabbitmq-server &

5.2、查看rabbitmq状态

以上两种命令都可以。

六、安装Web管理界面插件

依次执行下列指令:

开启rabbitmq: rabbitmqctl start_app

开启管理插件:rabbitmq-plugins enable rabbitmq_management

查看插件集合:rabbitmq-plugins list

如果上面都顺利,重启rabbitmq服务,则可以打开web管理界面:

七、配置web远程登录用户

这里我们以创建个rabbitmq帐号,密码123456为例,创建一个账号并支持远程ip访问。

7.1.创建账号

XML 复制代码
rabbitmqctl add_user rabbitmq 123456

7.2.设置用户角色

XML 复制代码
rabbitmqctl  set_user_tags  rabbitmq administrator

7.3.设置用户权限

XML 复制代码
  rabbitmqctl set_permissions -p "/" rabbitmq ".*" ".*" ".*"

7.4.设置完成后可以查看当前用户和角色(需要开启服务)

XML 复制代码
 rabbitmqctl list_users

八、错误总结

openssl记得下载1.0版本的,不要下载3.0版本。

如果安装完otp_src_20.0,erlang,报一下错误:

XML 复制代码
Makefile:248: /usr/local/otp_src_20.0/make/x86_64-unknown-linux-gnu/otp_ded.mk: No such file or directory error: No curses library functions found

解决办法:

yum install ncurses-devel.x86_64

离线包:自行下载吧。

相关推荐
S-X-S17 小时前
RabbitMQ持久化队列配置修改问题
分布式·rabbitmq
徐某人..1 天前
ARM嵌入式学习--第十天(UART)
arm开发·单片机·学习·arm
太阳伞下的阿呆1 天前
排查定位jar包大文件
java·centos·jar
Marilynhom1 天前
CentOs9新手教程
linux·centos
lljss20201 天前
arm-linux-gnueabihf安装
linux·运维·arm开发
7yewh2 天前
嵌入式知识点总结 Linux驱动 (七)-Linux驱动常用函数 uboot命令 bootcmd bootargs get_part env_get
linux·arm开发·驱动开发·mcu·物联网·硬件工程
勿忘初心912 天前
Android车机DIY开发之软件篇(九) NXP AutomotiveOS编译
android·arm开发·经验分享·嵌入式硬件·mcu
2035去旅行2 天前
FFmpeg(7.1版本)编译:Ubuntu18.04交叉编译到ARM
arm开发·ffmpeg
啊呦.超能力2 天前
ARM内核:嵌入式时代的核心引擎
arm开发
最后一个bug3 天前
linux的/proc 和 /sys目录差异
linux·c语言·arm开发·单片机·嵌入式硬件