由于RabbitMQ需要erlang语言的支持,在安装RabbitMQ之前需要安装erlang,执行命令:
sudo apt-get install erlang-nox
安装RabbitMQ命令:
sudo apt-get update sudo apt-get install rabbitmq-server
启动、停止、重启、查看当前状态:
启动:sudo rabbitmq-server start 关闭: sudo rabbitmq-server stop 重启: sudo rabbitmq-server restart 查看状态:sudo rabbitmqctl status
进入安装文件夹查看Rabbit的状态:
发现有错误,需要修改,先停止服务:
invoke-rc.d rabbitmq-server stop
进入RabbitMQ安装目录:
cd /usr/lib/rabbitmq/bin
修改rabbitmqctl文件发现没有权限,先给文件赋权限:
sudo chmod 777 rabbitmqctl
在25行后面添加:HOME=/var/lib/rabbitmq 整个文件如下所示:
1 #!/bin/sh -e 2 ## The contents of this file are subject to the Mozilla Public License 3 ## Version 1.1 (the "License"); you may not use this file except in 4 ## compliance with the License. You may obtain a copy of the License 5 ## at http://www.mozilla.org/MPL/ 6 ## 7 ## Software distributed under the License is distributed on an "AS IS" 8 ## basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See 9 ## the License for the specific language governing rights and 10 ## limitations under the License. 11 ## 12 ## The Original Code is RabbitMQ. 13 ## 14 ## The Initial Developer of the Original Code is GoPivotal, Inc. 15 ## Copyright (c) 2007-2015 Pivotal Software, Inc. All rights reserved. 16 ## 17 18 # Get default settings with user overrides for (RABBITMQ_)<var_name> 19 # Non-empty defaults should be set in rabbitmq-env 20 . `dirname $0`/rabbitmq-env 21 22 # We specify Mnesia dir and sasl error logger since some actions 23 # (e.g. forget_cluster_node --offline) require us to impersonate the 24 # real node. 25 RABBITMQ_USE_LONGNAME=${RABBITMQ_USE_LONGNAME} 26 HOME=/var/lib/rabbitmq 27 exec ${ERL_DIR}erl 28 -pa "${RABBITMQ_HOME}/ebin" 29 -noinput 30 -hidden 31 ${RABBITMQ_CTL_ERL_ARGS} 32 -boot "${CLEAN_BOOT_FILE}" 33 -sasl errlog_type error 34 -mnesia dir ""${RABBITMQ_MNESIA_DIR}"" 35 -s rabbit_control_main 36 -nodename $RABBITMQ_NODENAME 37 -extra "$@" ~ ~
启动RabbitMQ:
sudo rabbitmq-server start
启动web管理平台:
sudo ./rabbitmq-plugins enable rabbitmq_management
查看web管理器:
127.0.0.1:15672
默认账户/密码:guest/guest
4369 – erlang发现口
5672 –client端通信口
15672 – 管理界面ui端口
25672 – server间内部通信口
最后如下所示: