欢迎您, 来到 宁时修博客.^_^

消息队列--RabbitMQ(三) 二进制安装

2019/08/23 言则行 MQ 801
编译Erlang,二进制安装RabbitMQ-Server

一、安装依赖

    这只是我在安装过程中出现的需要的一些依赖包。

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


二、源码安装Erlang

    RabbitMQ底层采用Erlang语言进行编写,所以RabbitMQ依赖于Erlang环境。

    Erlang/OTP和RabbitMQ版本对照:https://www.rabbitmq.com/which-erlang.html

    Erlang/OTP下载:https://www.erlang.org/downloads


    注意:需要事先安装 Java环境,因为编译Erlang时,会用到一些 java 编译器。也可以添加参数 --without-javac 忽略使用 java 编译器。


    步骤:

$ cd /usr/local/src/
$ wget http://erlang.org/download/otp_src_21.3.tar.gz
$ tar xf otp_src_21.3.tar.gz 
$ cd otp_src_21.3
$ ./configure --prefix=/usr/local/erlang --without-javac
$ make && make install

    

    在编译过程中,可能会遇到如下问题:

    1、编译 Erlang 报错:configure: error: No curses library functions found

        这是需要 ncurses-devel,yum install ncurses-devel -y 安装即可。

    

    2、编译 Erlang 报:configure: WARNING: Could not find any usable java compiler, will skip: jinterface

       需要 Java 环境,或者使用参数 --without-javac 不使用 java 编译器。


    3、编译Erlang报:

    checking for OpenSSL >= 0.9.8c in standard locations... no

    configure: WARNING: No (usable) OpenSSL found, skipping ssl, ssh and crypto applications

    OpenSSL版本过低,需升级,yum install openssl-devel -y 安装即可。



    设置环境变量:编辑  /etc/profile 文件,将以下内容追加至文末

export ERLANG_HOME=/usr/local/erlang
export PATH=$ERLANG_HOME/bin:$PATH

    使变量生效:source /etc/profile


    检测Erlang是否安装成功:

$ erl
Erlang/OTP 21 [erts-10.3] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe]

Eshell V10.3  (abort with ^G)
1> 
1> halt().


三、RabbitMQ二进制包

    RabbitMQ在Github上:https://github.com/rabbitmq/rabbitmq-server/releases/


    步骤:

$ cd /usr/local/src/
$ wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.17/rabbitmq-server-generic-unix-3.7.17.tar.xz
$ tar xf rabbitmq-server-generic-unix-3.7.17.tar.xz -C /webroot/
$ cd /webroot
$ ln -s rabbitmq_server-3.7.17 rabbitmq-server

    软连接时, ln -s rabbitmq_server-3.7.17 rabbitmq-server,rabbitmq_server-3.7.17后不要带上 "/",不然使用RabbitMQ命令时会报如下:

$ rabbitmqctl status
escript: exception error: undefined function rabbitmqctl_escript:main/1
  in function  escript:run/2 (escript.erl, line 758)
  in call from escript:start/1 (escript.erl, line 277)
  in call from init:start_em/1
  in call from init:do_boot/3

    

    设置环境变量:编辑  /etc/profile 文件,将以下内容追加至文末

export RABBITMQ_HOME=/webroot/rabbitmq-server
export PATH=$RABBITMQ_HOME/sbin:$PATH

    使变量生效:source /etc/profile



    启动RabbitMQ:rabbitmq-server -detached  (后台运行)


四、配置RabbitMQ

    RabbitMQ配置文件:$RABBITMQ_HOME/etc/rabbitmq/rabbitmq.conf。

    还可以使用环境变量来控制某些设置,建议使用$RABBITMQ_HOME/etc/rabbitmq/rabbitmq-env.conf。

    RabbitMQ安装后这些文件都不存在,因此必须先创建它们,然后增添参数。不然,RabbitMQ使用默认参数。


    官方配置说明:https://www.rabbitmq.com/configure.html

    示例配置文件(全部注释的):https://github.com/rabbitmq/rabbitmq-server/blob/master/docs/rabbitmq.conf.example

点赞
说说你的看法

所有评论: (0)

# 加入组织

1、用手机QQ扫左侧二维码

2、搜Q群:1058582137

3、点击 宁时修博客交流群