RabbitMQ 的安装配置

环境:Ubuntu16 linux系统,ERlang语言的源码包 :otp_src_22.0.tar.gz,rabbitMQ安装包:rabbitmq-server-generic-unix-3.7.16.tar ,jdk1.8(ERLang的编译需要系统有jdk的支持)

想要安装rabbitMQ服务组件,需要配置ERlang语言环境的依赖。

一:ERLang语言的安装与配置

1.更新系统软件包,想要安装ERlang语言环境,需要先配置支持库

1.apt-get update
2.apt-get -y install libncurses5-dev   //2或者2.1依赖库选择一个即可
2.1 apt-get -y install make g++ gcc libpcre3 libpcrecpp* libpcre3-dev libssl-dev autoconf automake libtool nfs-kernel-server libncurses5-dev libaio.dev ruby-dev rubygems vim    

2.把已经上传的ERlang语言环境包上传服务器解压缩

tar xzvf /srv/ftp/otp_src_22.0.tar.gz -C /usr/local/src/

3.ERLang编译完成后需要设置一个编译后的程序的存储目录

mkdir -p /usr/local/erlang

4.进入ERLang源码目录

cd /usr/local/src/otp_src_22.0/

5.指定编译后的内容保存到指定目录,

./configure --prefix=/usr/local/erlang

6.对源码进行编译

make && make install

7.编译完成后,所有内容会自动保存在之前指定的“usr/local/erlang”目录,为了方便使用,修改profile配置文件,把内容设置到系统环境中

vim /etc/profile      
export ERLANG_HOME=/usr/local/erlang
export PATH=:$ERLANG_HOME/bin:
source /etc/profile     //添加后配置后进行激活

注:如果之后出现 Command 'ls' is available in '/bin/ls' 类似错误, 请参照我的环境变量位置添加,

/usr/bin/vim  /etc/profile 命令可以使用vim对profile文件进行修改,参考:https://www.cnblogs.com/austinspark-jessylu/p/6737877.html

export JAVA_HOME=/usr/local/jdk1.8
export MYSQL_HOME=/usr/local/mysql
export M2_HOME=/usr/local/maven
export ERLANG_HOME=/usr/local/erlang
export PATH=$PATH:$JAVA_HOME/bin:$MYSQL_HOME/bin:$M2_HOME/bin:$ERLANG_HOME/bin:
           

8.检查环境配置是否正常,可以直接输入  “ erl ” ,命令启动erlang的交互式编程环境打印

erl

io:format("Hello World!").

退出编译环境

halt().

9.如果此时成功打印出   “Hello World!”  ,说明我们的ERL环境已经配置好了。

二:RabbitMQ的安装与配置

1.对已经上传好的rabbitmq文件  rabbitmq-server-generic-unix-3.7.16.tar.xz  进行解压缩

xz -d /srv/ftp/rabbitmq-server-generic-unix-3.7.16.tar.xz      //对“ tar.xz ”解压缩

tar xvf /srv/ftp/rabbitmq-server-generic-unix-3.7.16.tar -C /usr/local/     
 //对“ tar ”文件解压缩到指定文件夹

2.为了方便后续的配置,我们对文件目录进行更名处理

mv /usr/local/rabbitmq_server-3.7.16/ /usr/local/rabbitmq

3.启动rabbbitmq服务,如果启动后回执一只代码打印的兔子说明服务启动成功

/usr/local/rabbitmq/sbin/rabbitmq-server start

4.为了方便我们对rabbitmq的使用和后台管理,在启动命令后面追加备份配置参数:

/usr/local/rabbitmq/sbin/rabbitmq-server start > /dev/null 2>&1 &

5.为了安全与方便后台管理,我们可以创建一个用户,信息为 yu/hello

/usr/local/rabbitmq/sbin/rabbitmqctl add_user yu hello

注:我在添加用户时出现下面问题,结果是因为/etc/hosts的映射配置有错,

Error: unable to perform an operation on node 'rabbit@rabbitmq-server'. Please see diagnostics information and suggestions below.

Most common reasons for this are:

 * Target node is unreachable (e.g. due to hostname resolution, TCP connection or firewall issues)
 * CLI tool fails to authenticate with the server (e.g. due to CLI tool's Erlang cookie not matching that of the server)
 * Target node is not running

In addition to the diagnostics info below:

 * See the CLI, clustering and networking guides on https://rabbitmq.com/documentation.html to learn more
 * Consult server logs on node rabbit@rabbitmq-server
 * If target node is configured to use long node names, don't forget to use --longnames with CLI tools

DIAGNOSTICS
===========

attempted to contact: ['rabbit@rabbitmq-server']

rabbit@rabbitmq-server:
  * connected to epmd (port 4369) on rabbitmq-server
  * epmd reports node 'rabbit' uses port 25672 for inter-node and CLI tool traffic 
  * can't establish TCP connection to the target node, reason: timeout (timed out)
  * suggestion: check if host 'rabbitmq-server' resolves, is reachable and ports 25672, 4369 are not blocked by firewall

Current node details:
 * node name: 'rabbitmqcli-6261-rabbit@rabbitmq-server'
 * effective user's home directory: /root
 * Erlang cookie hash: 1fUlYkhJd+nIoW03NSuzOQ==

修改后可以创建用户,hosts修改后:

127.0.0.1 ubuntu                                                                                     
127.0.0.1 localhost                                      
192.168.19.138 rabbitmq-server

6.此时想要使用当前用户可以进行角色分配,可以把他添加到管理组

/usr/local/rabbitmq/sbin/rabbitmqctl set_user_tags yu administrator

7.RabbitMQ服务启动之后我们如想要在WEB界面进行管理,需要启动管理界面

/usr/local/rabbitmq/sbin/rabbitmq-plugins enable rabbitmq_management

8.现在我们可以查看端口使用情况判断服务是否启动成功,

netstat -nptl

浏览器页面访问

http://192.168.19.138:15672

现在,我们可以在web界面进行管理了。

原文地址:https://www.cnblogs.com/fcitx/p/11173724.html