RabbitMQ设置在重启时消失.为什么?

Lee*_*idt 18 amazon-ec2 rabbitmq

这是在EC2上.我有一个init脚本,它执行一些基本设置,如安装rabbitmq,创建虚拟主机,用户,设置权限等.所以基本上它是:

sudo yum --enablerepo=epel install rabbitmq-server
/etc/init.d/rabbitmq-server start
rabbitmqctl add_user username password
rabbitmqctl add_vhost vhost
rabbitmqctl set_permissions -p vhost username ".*" ".*" ".*"
rabbitmqctl stop
Run Code Online (Sandbox Code Playgroud)

然后我退出shell,并从实例创建一个EBS图像.亚马逊会自动重新启动服务器以创建映像.

现在奇怪的部分......重新启动后,除了权限之外,一切都仍然设置.

然后当我从图像中启动一个新实例时,rabbitmq中没有用户名或主机.

有没有什么需要在rabbitmq中完成以保存更改?

cwd*_*cwd 19

如果在"停止"和"重启"实例时设置消失,则反对重启它的实例,这是因为ip地址正在改变,RabbitMQ设置被绑定到ip.

请参阅Amazon EC2实例上的RabbitMQ

  • 这是我的问题!谢谢. (2认同)

str*_*jzw 1

我想可能是这个,来自http://www.rabbitmq.com/ec2.html

EBS设备上的持久数据

RabbitMQ 将数据写入 Ubuntu 上的以下目录:

/var/lib/rabbitmq/ 存储持久数据,如消息或队列

/var/log/rabbitmq/ 存储日志

如果您想使用EBS块设备来存储RabbitMQ数据,只需将这些目录链接到您的EBS设备即可。在对数据目录进行任何更改之前停止 RabbitMQ:

$ /etc/init.d/rabbitmq-server 停止

  • 我正在使用 EBS 支持的实例(根卷是 EBS 卷),因此这些目录已经位于 EBS 卷上。 (2认同)