Se você está enviando dados (estatísticas, logs, etc) para um serviço externo (grafite / collectd / ganglia / etc ou logstash / splunk / syslogd), você pode olhar (ou melhor, consultar) um deles para o host que enviou os dados pela última vez.
A regra geral para o RabbitMQ iniciar o cluster depois de encerrar todos os nós é primeiro iniciar o nó que foi interrompido por último durante o processo de desligamento e, em seguida, iniciar o restante. Vamos dizer que o processo de desligamento é iniciado por algum script externo que não salva o estado, e por causa disso eu não sei explicitamente qual nó foi parado por último quando quero iniciá-lo. O RabbitMQ fornece alguns meios para descobrir qual nó foi desativado por último?
Eu encontrei um arquivo em /var/lib/rabbitmq/mnesia/<node>
chamado nodes_running_at_shutdown
, que parece conter as informações sobre os nós em execução durante o desligamento. Com base nisso, descobri que o último nó teria apenas um nó nesse arquivo (em si) e, na verdade, confirmei isso empiricamente, mas não consegui encontrar nenhuma documentação para esse arquivo, portanto, não tenho certeza se essa solução não Não tenho alguns casos de canto (além da desvantagem óbvia de que ele não está documentado e pode mudar a qualquer momento).
Existe alguma maneira recomendada de descobrir o nó que foi interrompido por último?
EDITAR: Minha pergunta é mais sobre se podemos recuperar o estado do próprio RabbitMQ, sem ferramentas externas que persistiriam o estado entre os processos de parada e início.
Se você está enviando dados (estatísticas, logs, etc) para um serviço externo (grafite / collectd / ganglia / etc ou logstash / splunk / syslogd), você pode olhar (ou melhor, consultar) um deles para o host que enviou os dados pela última vez.
Tags rabbitmq