安装和配置
RabbitMQ是默认的broker,仅需要配置你实际使用的broker实例的URL地址。
broker_url= 'amqp://user:password@localhost:5672/myvhost'
想要看完整的Broker配置选项,请参考完整配置文档,下面的部分是关于username、password和myvhost的配置。
安装RabbitMQ
在官网查看或查看下面的macOS的安装教程。
[!NOTE]
如果你在安装和使用rabbitmqctl后遇到nodedown错误,那么这篇博客文章可以帮助你确定问题的根源:
http://www.somic.org/2009/02/19/on-rabbitmqctl-and-badrpcnodedown/
设置RabbitMQ
我们需要创建一个RabbitMQ user,一个vhost,并对user进行该vhost的授权。
sudo rabbitmqctl add_user myuser mypassword
sudo rabbitmqctl add_vhost myvhost
sudo rabbitmqctl set_user_tags myuser mytag
sudo rabbitmqctl set_permissions -p myvhost myuser ".*" ".*" ".*"
将上面的参数替换成世纪使用的值。
在MacOS上安装
在macOS上安装RabbitMQ的最好方式是使用最新的软件包管理系统Homebrew。
首先,使用Homebrew官方提供的一行命令安装Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
然后,通过brew命令安装rabbitMQ。
brew install rabbitmq
安装完以后,你需要将安装路径添加到PATH中以能够正常使用。
export PATH=$PATH:/usr/local/sbin
配置系统主机名称
如果您使用的是给您随机主机名的DHCP服务器,则需要永久配置该主机名。因为RabbitMQ使用主机名与节点通信。
使用scutil命令永久设置主机名
sudo scutil --set HostName myhost.local
然后将该主机名添加到/etc/hosts中,以便可以将其解析为IP地址:
127.0.0.1 localhost myhost myhost.local
如果你启动了rabbitmq-server,你的rabbit节点现在应该是rabbit@myhost,通过rabbitmqctl验证:
sudo rabbitmqctl status
Status of node rabbit@myhost ...
[{running_applications,[{rabbit,"RabbitMQ","1.7.1"},
{mnesia,"MNESIA CXC 138 12","4.4.12"},
{os_mon,"CPO CXC 138 46","2.2.4"},
{sasl,"SASL CXC 138 11","2.1.8"},
{stdlib,"ERTS CXC 138 10","1.16.4"},
{kernel,"ERTS CXC 138 10","2.13.4"}]},
{nodes,[rabbit@myhost]},
{running_nodes,[rabbit@myhost]}]
...done.
值得注意的是,如果您的DHCP服务器给您一个以IP地址开头的主机名(例如,23.10.112.31.comcast.net),RabbitMQ将尝试使用rabbit@23:一个非法的主机名,所以请别忘了配置/etc/hosts。
启动和停止RabbitMQ
启动
sudo rabbitmq-server
你可以通过添加-detache选项来实现后台运行。
sudo rabbitmq-server -detached
不要使用可kill命令来终止RabbitMQ,推荐使用rabbitmqctl
sudo rabbitmqctl stop
当启动完RabbitMQ,你可以继续进行的设置RabbitMQ的步骤。