Очередь Rabbitmq отсутствует после создания дубликата сервера EC2 из образа текущего сервера - PullRequest
0 голосов
/ 07 ноября 2019

У нас есть рабочий сервер в экземпляре AWS EC2. Мы создали образ AMI (без остановки сервера) экземпляра и создали новый экземпляр тестового сервера в том же регионе. Все то же самое, за исключением того, что мы используем меньший экземпляр t2.medium вместо экземпляра m4.2xlarge, используемого на производственном сервере.

Мы используем rabbitmq 3.6.14 и Erlang R16B03. Должно быть 10 очередей, которые должны запускаться автоматически, но одна определенная очередь («Сегмент перед анализом»), предопределенная, не запускается автоматически. Я попытался запустить очередь из пользовательского интерфейса rabbitmq, но API управления ошибками возвратил код состояния 405 -

Очередь определена, как показано в приведенном ниже коде в файле ruby ​​сегмент_readings_worker.rb

def self.send_seg_to_python_filter(segm)
        reading = {imei: segm.imei, segment_number: segm.segment_number} if segm.present?
        message = reading.to_json
        puts message
        rabbitconhash = Rails.application.secrets.rabbit
        conn = Bunny.new(:host=> rabbitconhash['host'], :port=> rabbitconhash['port'], :user => rabbitconhash['user'], :pass => rabbitconhash['pass'])
        conn.start
        ch = conn.create_channel
        q = ch.queue("Segment Before Analyze Queue", :durable => true)
        ch.default_exchange.publish(message, :routing_key => q.name, :persistent => true)
        puts "#{message} Sent"
        conn.close
    end

Я сделал что-то неправильно при создании образа или мне пришлось сделать что-то другое, когда домен изменился? Что мне делать, если мне нужно снова запустить очередь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...