rabbitmq-3.7.7安装过程
时间:2022-07-22
本文章向大家介绍rabbitmq-3.7.7安装过程,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
rabbtmq 依赖于erlang,rabbitmq 3.7.7 版本对erlang的依赖关系参见:http://www.rabbitmq.com/which-erlang.html erlang版本为21.0.x,因此,需要首先安装21.0.x。考虑到服务器环境可能无法直接与外网环境互通,因此决定采用下载源码自行编译erlang。(基础的yum repo运维是支持的)
1.编译安装erlang
cd /opt/soft
wget http://erlang.org/download/otp_src_21.0.tar.gz
cd /opt
tar - zxvf otp_src_21.0.tar.gz
在下载完源码之后,进行编译,注意,erlang需要依赖的包有 ncurses-devel 、openssl-devel、unixODBC-devel、gcc-c++。
#--prefix 指定编译后安装的目录 --without-javac 采用非java编译
./configure --prefix=/opt/erlang --without-javac
可以看到提示部分:
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
configure: error: No curses library functions found
configure: error: /bin/sh '/opt/otp_src_21.0/erts/configure' failed for erts
*********************************************************************
*********************************************************************
********************** APPLICATIONS INFORMATION *******************
*********************************************************************
wx : wxWidgets not found, wx will NOT be usable
*********************************************************************
*********************************************************************
********************** DOCUMENTATION INFORMATION ******************
*********************************************************************
documentation :
fop is missing.
Using fakefop to generate placeholder PDF files.
*********************************************************************
需要安装ncurses-devel
yum -y install ncurses-devel
./configure --prefix=/opt/erlang --without-javac
提示:
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
crypto : No usable OpenSSL found
jinterface : Java compiler disabled by user
odbc : ODBC library - link check failed
orber : No C++ compiler found
ssh : No usable OpenSSL found
ssl : No usable OpenSSL found
需要安装openssl-devel
yum -y install openssl-devel
./configure --prefix=/opt/erlang --without-javac
提示:
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
jinterface : Java compiler disabled by user
orber : No C++ compiler found
*********************************************************************
需要安装gcc-c++
yum -y install gcc-c++
./configure --prefix=/opt/erlang --without-javac
最终提示:
config.status: creating include/x86_64-unknown-linux-gnu/erl_int_sizes_config.h
*********************************************************************
********************** APPLICATIONS DISABLED **********************
*********************************************************************
jinterface : Java compiler disabled by user
*********************************************************************
*********************************************************************
********************** APPLICATIONS INFORMATION *******************
*********************************************************************
wx : wxWidgets not found, wx will NOT be usable
*********************************************************************
*********************************************************************
********************** DOCUMENTATION INFORMATION ******************
*********************************************************************
documentation :
fop is missing.
Using fakefop to generate placeholder PDF files.
*********************************************************************
注意 APPLICATIONS DISABLED 部分的提示,其他两部分是不影响编译的。 No Java compiler found ,我们可以选择用gcc等其他方式来编译erlang,如果你安装了gcc,这里就用不上java编译了,因此可以在configure时增加 –disable-javac 避免该错误。
make
make install
稍等片刻即可安装成功,此外,为了使用方便,还可使用一个软连接:
ln -s /opt/erlang/bin/erl /usr/local/bin/erl
测试:
erl
Erlang/OTP 21 [erts-10.0] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe]
Eshell V10.0 (abort with ^G)
1>
erl安装成功。
2.安装rabbitmq
下载通用安装包
wget https://akamai.bintray.com/64/640fc5d0b10705f838419191bbf917e66f3ff5eb35f07fc51c2f197fda0aa170?__gda__=exp=1530957710~hmac=6af54ca017b6fae8e04b64c984bc017959e07afdbdc8d3879866b139a33d9292&response-content-disposition=attachment%3Bfilename%3D%22rabbitmq-server-generic-unix-3.7.7.tar.xz%22&response-content-type=application%2Fx-xz&requestInfo=U2FsdGVkX1_eFHEzyK3D7PXVMbDHIPfdzVdK4Q_LLLngjq1JJJl_5tlhcw6ktmi5IW8D6hha51CqLD-KaDhKxUpLEPF3FOJLyMsr2mclgrvQvldL4f6X25oqy17aOWcB8w0eBZxjWLWM4ImCKkBGq71SGPN7mu72F8JT9gDiMXX1z6sBCDXtSdec5CJJP1je&response-X-Checksum-Sha1=a3aa29d46218899cbf597a913493a5c9abc1a6ba&response-X-Checksum-Sha2=640fc5d0b10705f838419191bbf917e66f3ff5eb35f07fc51c2f197fda0aa170
建用户
useradd rabbitmq -d /opt/rabbitmq
修改limit.conf
vim /etc/security/limit.conf
增加如下内容:
rabbitmq soft nproc 16384
rabbitmq hard nproc 16384
rabbitmq soft nofile 65535
rabbitmq hard nofile 65536
切换到rabbitmq
sudo su - rabbitmq
xz -d ./rabbitmq-server-generic-unix-3.7.7.tar.xz
tar -xvf ./rabbitmq-server-generic-unix-3.7.7.tar
ln -s /opt/rabbitmq/rabbitmq_server-3.7.7 /opt/rabbitmq/rabbitmq
启动rabbitmq
cd rabbitmq/sbin
./rabbitmq-server start
开启管理界面
./rabbitmq-plugins list
./rabbitmq-plugins enable rabbitmq_management
./rabbitmqctl add_user rabbitmq rabbitmq
./rabbitmqctl set_user_tags rabbitmq administrator
执行过程:
[rabbitmq@m162p239 sbin]$ ./rabbitmq-plugins list
Configured: E = explicitly enabled; e = implicitly enabled
| Status: * = running on rabbit@m162p239
|/
[ ] rabbitmq_amqp1_0 3.7.7
[ ] rabbitmq_auth_backend_cache 3.7.7
[ ] rabbitmq_auth_backend_http 3.7.7
[ ] rabbitmq_auth_backend_ldap 3.7.7
[ ] rabbitmq_auth_mechanism_ssl 3.7.7
[ ] rabbitmq_consistent_hash_exchange 3.7.7
[ ] rabbitmq_event_exchange 3.7.7
[ ] rabbitmq_federation 3.7.7
[ ] rabbitmq_federation_management 3.7.7
[ ] rabbitmq_jms_topic_exchange 3.7.7
[ ] rabbitmq_management 3.7.7
[ ] rabbitmq_management_agent 3.7.7
[ ] rabbitmq_mqtt 3.7.7
[ ] rabbitmq_peer_discovery_aws 3.7.7
[ ] rabbitmq_peer_discovery_common 3.7.7
[ ] rabbitmq_peer_discovery_consul 3.7.7
[ ] rabbitmq_peer_discovery_etcd 3.7.7
[ ] rabbitmq_peer_discovery_k8s 3.7.7
[ ] rabbitmq_random_exchange 3.7.7
[ ] rabbitmq_recent_history_exchange 3.7.7
[ ] rabbitmq_sharding 3.7.7
[ ] rabbitmq_shovel 3.7.7
[ ] rabbitmq_shovel_management 3.7.7
[ ] rabbitmq_stomp 3.7.7
[ ] rabbitmq_top 3.7.7
[ ] rabbitmq_tracing 3.7.7
[ ] rabbitmq_trust_store 3.7.7
[ ] rabbitmq_web_dispatch 3.7.7
[ ] rabbitmq_web_mqtt 3.7.7
[ ] rabbitmq_web_mqtt_examples 3.7.7
[ ] rabbitmq_web_stomp 3.7.7
[ ] rabbitmq_web_stomp_examples 3.7.7
[rabbitmq@m162p239 sbin]$ ./rabbitmq-plugins enable rabbitmq_management
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@m162p239...
The following plugins have been enabled:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
started 3 plugins.
[rabbitmq@m162p239 sbin]$ ./rabbitmqctl add_user rabbitmq rabbitmq
Adding user "rabbitmq" ...
[rabbitmq@m162p239 sbin]$ ./rabbitmqctl set_user_tags rabbitmq administrator
Setting tags for user "rabbitmq" to [administrator] ...
[rabbitmq@m162p239 sbin]$ ./rabbitmq-plugins list
Configured: E = explicitly enabled; e = implicitly enabled
| Status: * = running on rabbit@m162p239
|/
[ ] rabbitmq_amqp1_0 3.7.7
[ ] rabbitmq_auth_backend_cache 3.7.7
[ ] rabbitmq_auth_backend_http 3.7.7
[ ] rabbitmq_auth_backend_ldap 3.7.7
[ ] rabbitmq_auth_mechanism_ssl 3.7.7
[ ] rabbitmq_consistent_hash_exchange 3.7.7
[ ] rabbitmq_event_exchange 3.7.7
[ ] rabbitmq_federation 3.7.7
[ ] rabbitmq_federation_management 3.7.7
[ ] rabbitmq_jms_topic_exchange 3.7.7
[E*] rabbitmq_management 3.7.7
[e*] rabbitmq_management_agent 3.7.7
[ ] rabbitmq_mqtt 3.7.7
[ ] rabbitmq_peer_discovery_aws 3.7.7
[ ] rabbitmq_peer_discovery_common 3.7.7
[ ] rabbitmq_peer_discovery_consul 3.7.7
[ ] rabbitmq_peer_discovery_etcd 3.7.7
[ ] rabbitmq_peer_discovery_k8s 3.7.7
[ ] rabbitmq_random_exchange 3.7.7
[ ] rabbitmq_recent_history_exchange 3.7.7
[ ] rabbitmq_sharding 3.7.7
[ ] rabbitmq_shovel 3.7.7
[ ] rabbitmq_shovel_management 3.7.7
[ ] rabbitmq_stomp 3.7.7
[ ] rabbitmq_top 3.7.7
[ ] rabbitmq_tracing 3.7.7
[ ] rabbitmq_trust_store 3.7.7
[e*] rabbitmq_web_dispatch 3.7.7
[ ] rabbitmq_web_mqtt 3.7.7
[ ] rabbitmq_web_mqtt_examples 3.7.7
[ ] rabbitmq_web_stomp 3.7.7
[ ] rabbitmq_web_stomp_examples 3.7.7
[rabbitmq@m162p239 sbin]$
然后访问后台 http://192.168.162.239:15672 用 rabbitmq rabbitmq 登陆即可
- 批量转换分区表为普通表(r2笔记92天)
- 使用sklearn做特征工程
- 【专业技术】CSS作用及用法
- 生产环境sql语句调优实战第六篇(r2笔记91天)
- 关于分区表的move操作(r2笔记90天)
- 简单分析oracle的数据存储(r2笔记89天)
- 机器学习线性分类算法:感知器原理
- 通过shell脚本来查看Undo中资源消耗高的sql(r2笔记88天)
- 关于分页查询的优化思路(r3笔记第7天)
- 用机器学习方法对影评与观影者情感判定
- 关于查看文件的几个小命令(r3笔记第6天)
- 关于纠结的recycle pool的设置(r3笔记第5天)
- 融会贯通学习trigger(r2笔记第4天)
- 完整的R语言预测建模实例-从数据清理到建模预测
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法