У меня сейчас работает похожее развертывание.Сервер RabbitMq - это отдельный экземпляр в том же виртуальном частном процессоре, что и кластер.Группа безопасности настроена на пропуск всего трафика из этой сети.«Слабой» частью моего развертывания является то, что я не делаю никакого обнаружения службы.Поскольку машина не перезапускается, локальный IP-адрес (10.0 ....) никогда не меняется, поэтому в определении задачи я определил дополнительный узел, указывающий на этот IP-адрес.
Когда служба хочет прочитать / опубликовать сообщение, y использует определенный хост.Если по какой-либо причине я перезагружу экземпляр rabbitmq и IP-адрес, мне придется заново развернуть все контейнеры с обновленным IP-адресом.
Это можно исправить с помощью метаданных экземпляра
[ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/local-ipv4
в соответствии с официальными документами метаданные Ec2 Instance его регистрация где-нибудь (redis, zookeeper, etcd ...), и затем ваши службы могут проверить его, поэтому повторное развертывание не требуется, если экземпляр rabbitMq перезагружается.