安装背景
目标:RabbitMQ 3.9.11
需要:Erlang 23.2及以上,建议Erlang 24,当前(2021-12-10)新版本为Erlang 24.1.7
备注:官方12月初刚更新的3.9.11。经尝试无法使用另一台服务器上的mq 3.9.10+erlang 23.1安装包。
安装成果
安装环境
操作系统:
Alibaba Cloud Linux 3.2104 64位
预先下载
rabbitmq-server-3.9.11-1.el8.noarch.rpm
otp_src_24.1.7.tar.gz
开始安装
安装erlang
将otp_src_24.1.7.tar.gz解压到路径
/usr/local/otp_src_24.1.7
创建目录
mkdir /usr/local/erlang
返回目录
/usr/local/otp_src_24.1.7
执行配置
./configure --prefix=/usr/local/erlang --without-javac
标题执行配置后,出现报错信息,逐一解决,并且再次执行配置
- documentation : fop is missing
yum install fop.noarch
- wx : Can not find C++ compiler
解决方案
yum install g++
- wxWidgets must be installed on your system
解决方案
yum install wxWidgets-devel
- jinterface : Java compiler disabled by user
解决方案
安装jdk(当前使用jdk1.8.0_311),并且配置环境变量
vim /etc/profile
检查是否有下列内容,如果没有,加到最下面。
export JAVA_HOME=/usr/local/java/jdk1.8.0_311
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=${JAVA_HOME}/bin:$PATH
使配置文件生效
source /etc/profile
检查是否安装成功
java --version
终端,输入javac,如有相应的命令运用信息,就对了,如没有,请完全安装;如果输入javac有相应信息,尝试去掉erlang配置命令最后的–without-javac
- odbc: ODBC library - link check failed
解决方案
yum install unixODBC.x86_64 unixODBC-devel.x86_64
- Using fakefop to generate placeholder PDF files
忽略
至此配置执行没有再出现报错信息。
安装erlang
make && make install
设置环境变量
vi /etc/profile
在最下面加入
export ERL_HOME=/usr/local/erlang
export PATH=$ERL_HOME/bin:$PATH
启用变量
source /etc/profile
检查erlang版本
erl -version
设置yum仓库,便于以后更新可以获取最新版
vim /etc/yum.repos.d/rabbitmq_erlang.repo
内容填写,Alibaba Cloud Linux 3.2104 64位系统按照centos8的配置来:
# In /etc/yum.repos.d/rabbitmq_erlang.repo
[rabbitmq-rabbitmq-erlang]
name=rabbitmq-rabbitmq-erlang
baseurl=https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/rpm/el/8/$basearch
repo_gpgcheck=1
enabled=1
gpgkey=https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/gpg.E495BB49CC4BBE5B.key
gpgcheck=1
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
pkg_gpgcheck=1
autorefresh=1
type=rpm-md
[rabbitmq-rabbitmq-erlang-noarch]
name=rabbitmq-rabbitmq-erlang-noarch
baseurl=https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/rpm/el/8/noarch
repo_gpgcheck=1
enabled=1
gpgkey=https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/gpg.E495BB49CC4BBE5B.key
https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
gpgcheck=1
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
pkg_gpgcheck=1
autorefresh=1
type=rpm-md
[rabbitmq-rabbitmq-erlang-source]
name=rabbitmq-rabbitmq-erlang-source
baseurl=https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/rpm/el/8/SRPMS
repo_gpgcheck=1
enabled=1
gpgkey=https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/gpg.E495BB49CC4BBE5B.key
https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
gpgcheck=1
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
pkg_gpgcheck=1
autorefresh=1
type=rpm-md
下次更新可执行
yum update -y
yum install -y erlang
安装RabbitMq
rpm -ivh rabbitmq-server-3.9.11-1.el8.noarch.rpm
安装完毕后启动rabbitmq服务(rpm安装的需要使用systemctl命令)
systemctl start rabbitmq-server
查看rabbitmq的状态
systemctl status rabbitmq-server.service
添加用户
rabbitmqctl add_user 用户名
修改角色
rabbitmqctl set_user_tags 用户名 角色(例:administrator)
修改权限
rabbitmqctl set_permissions -p / 用户名 权限(例:".*" ".*" ".*")
参考资料:
在CentOS 7上安装RabbitMQ服务器
Centos7安装Erlang遇到的那些坑
Erlang安装问题
rabbitmq的安装及配置
RabbitMQ超详细配置过程 ErLang24.1+RabbitMQ3.9.7(Linux CentOS8)
RabbitMQ用户角色及权限控制