RabbitMQ 安装

RabbitMQ 安装

安装 Erlang

因为RabbitMQ是由Erlang语言编写的,所以,需要安装Erlang,Erlang安装方式有很多种,此处仅介绍使用源码包安装的方式。

首先前往Erlang官网http://www.erlang.org/downloads/,选择OTP 21.0 Source File进行下载。

将安装文件拷贝至linux系统中,当然你也可以在linux系统中直接使用wget命令下载软件包,接着执行以下命令即可:

[root@localhost home]# wget http://erlang.org/download/otp_src_21.0.tar.gz
[root@localhost home]# tar -zxvf otp_src_21.0.tar.gz
[root@localhost home]# cd otp_src_21.0
[root@localhost otp_src_21.0]# ./configure --prefix=/opt/erlang

因为erlang要依赖ncurses,所以此时可能会报如下错误:

No curses library functions found

这是安装一下ncurses即可:

[root@localhost otp_src_21.0]# yum install ncurses-devel
[root@localhost otp_src_21.0]# make
[root@localhost otp_src_21.0]# make install

当然安装过程中,可能还会出现其他包找不到的情况,此时只要根据提示安装相应的包即可。

注:
如果你是Windows,请选择对于的软件包进行下载,然后执行exe文件即可。

安装RabbitMQ

RabbitMQ安装方式较为简单,本文主要介绍源码安装方式

首先访问官网下载源码包:http://www.rabbitmq.com/releases/rabbitmq-server/

[root@localhost home]# wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-generic-unix-3.6.15.tar.xz
[root@localhost home]# xz -d rabbitmq-server-generic-unix-3.6.15.tar.xz
[root@localhost home]# tar -xvf rabbitmq-server-generic-unix-3.6.15.tar

配置环境变量

[root@localhost home]# vim /etc/profile

export RABBITMQ_HOME=/usr/local/rabbitmq_server-3.6.15
export PATH=$PATH:$RABBITMQ_HOME/sbin

[root@localhost home]# source /etc/profile

启动RabbitMQ:

rabbitmq-server -detached

-detached 的主要作用是为了能够让RabbitMQ服务以守护进程的方式在后台运行。

使用rabbitmqctl status,如果看见一下内容,则说明启动成功:

[root@rabbitmq ~]# rabbitmqctl status
Status of node rabbit@rabbitmq
[{pid,3556},
 {running_applications,
     [{rabbitmq_management,"RabbitMQ Management Console","3.6.15"},
      {rabbitmq_management_agent,"RabbitMQ Management Agent","3.6.15"},
      {rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.6.15"},
      {rabbit,"RabbitMQ","3.6.15"},
      {os_mon,"CPO  CXC 138 46","2.4.1"},
      {cowboy,"Small, fast, modular HTTP server.","1.0.4"},
      {ranch,"Socket acceptor pool for TCP protocols.","1.3.2"},
      {ssl,"Erlang/OTP SSL application","8.0.1"},
      {public_key,"Public key infrastructure","1.2"},
      {inets,"INETS  CXC 138 49","6.3.2"},
      {amqp_client,"RabbitMQ AMQP Client","3.6.15"},
      {rabbit_common,
          "Modules shared by rabbitmq-server and rabbitmq-erlang-client",
          "3.6.15"},
      {compiler,"ERTS  CXC 138 10","7.0.1"},
      {syntax_tools,"Syntax tools","2.0"},
      {mnesia,"MNESIA  CXC 138 12","4.14"},
      {recon,"Diagnostic tools for production use","2.3.2"},
      {cowlib,"Support library for manipulating Web protocols.","1.0.2"},
      {crypto,"CRYPTO","3.7"},
      {xmerl,"XML parser","1.3.11"},
      {asn1,"The Erlang ASN1 compiler version 4.0.3","4.0.3"},
      {sasl,"SASL  CXC 138 11","3.0"},
      {stdlib,"ERTS  CXC 138 10","3.0.1"},
      {kernel,"ERTS  CXC 138 10","5.0.1"}]},
 {os,{unix,linux}},
 {erlang_version,
     "Erlang/OTP 19 [erts-8.0.3] [source] [64-bit] [async-threads:64] [hipe] [kernel-poll:true]\n"},
 {memory,
     [{connection_readers,0},
      {connection_writers,0},
      {connection_channels,0},
      {connection_other,2688},
      {queue_procs,43368},
      {queue_slave_procs,0},
      {plugins,456416},
      {other_proc,20298280},
      {metrics,56472},
      {mgmt_db,141368},
      {mnesia,64080},
      {other_ets,2311528},
      {binary,129888},
      {msg_index,41608},
      {code,24741115},
      {atom,1033401},
      {other_system,7545300},
      {allocated_unused,9071896},
      {reserved_unallocated,6750208},
      {total,72687616}]},
 {alarms,[]},
 {listeners,[{clustering,25672,"::"},{amqp,5672,"::"},{http,15672,"::"}]},
 {vm_memory_calculation_strategy,rss},
 {vm_memory_high_watermark,0.4},
 {vm_memory_limit,410894336},
 {disk_free_limit,50000000},
 {disk_free,17550581760},
 {file_descriptors,
     [{total_limit,924},{total_used,3},{sockets_limit,829},{sockets_used,0}]},
 {processes,[{limit,1048576},{used,324}]},
 {run_queue,0},
 {uptime,12},
 {kernel,{net_ticktime,60}}]

RabbitMQ 启动问题

第一次安装RabbitMQ后,不论是用rabbitmqctl status命令,还是使用rabbitmqctl add 命令都会出现如下错误:

rabbitmq Error: unable to connect to node XXX@XXX: nodedown

针对这个问题。网上有很多解决办法。但是基本都说是Erlang的cookie,但是这是windows下的问题。其解决办法为:

检查C:\Windows.erlang.cookie 及 C:\用户\你的用户名.erlang.cookie。检查两个文件内容是否一致,不一致用其中一个替换另一个即可。

最后在网上找到一篇关于linux的解决办法。其源地址为:[https://blog.youkuaiyun.com/luckytanggu/article/details/78542700(https://blog.youkuaiyun.com/luckytanggu/article/details/78542700)

内容如下:

#先把rabbitmq进程杀掉
[root@localhost home] ps -ef | grep rabbitmq | grep -v grep | awk '{print $2}' | xargs kill -9

#设置hostname(假设主机ip为:192.168.1.1,主机名设为:mq)
[root@localhost home] echo 192.168.1.1 mq > /etc/hosts
[root@localhost home] echo rabbitmq > /etc/hostname
[root@localhost home] export HOSTNAME=mq

重启电脑后,RabbitMQ访问正常

添加管理员

默认情况下,访问RabbitMQ服务的用户名和密码都是guest,但是这个账户只能通过本地网络(localhost)进行访问,远程访问受限,所以需要添加为其添加一个用户。

首先启动RabbitMQ,然后添加用户

[root@localhost home]# rabbitmqctl add user root root
Creating user "root"...
#为root 用户设置所有权限:
[root@localhost home]# rabbitmqctl set_permissions -p / root ".*" ".*" ".*"
Setting permissions for user "root" in vhost "/"...
#设置rott为管理员
[root@localhost home] rabbitmqctl set user_tags root administrator
Setting tags for user "root" to [administrator] ...

开放网页控制台

执行rabbitmq-plugins enable rabbitmq_management开启web管理界面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值