NetWorker. Сбой процесса Server RabbitMQ при запуске
Summary: После установки или обновления серверного программного обеспечения NetWorker на хосте Linux инициализация RabbitMQ немедленно завершается сбоем.
Symptoms
Сервер NetWorker /nsr/logs/daemon.raw Сообщает о следующей ошибке:
127106 1777471849 1 5 0 2845669184 13680 0 NW_SERVERNAME nsrctld NSR notice 44 Startup in progress; starting all daemons... 0
144355 1777471849 1 5 0 2845669184 13680 0 NW_SERVERNAME nsrctld NSR notice 21 Daemon %s is running. 1 0 8 rmq-epmd
144355 1777471851 1 5 0 2845669184 13680 0 NW_SERVERNAME nsrctld NSR notice 21 Daemon %s is running. 1 0 3 rmq
0 1777471852 1 5 0 2777708288 13680 0 NW_SERVERNAME nsrctld NSR notice 6 %s: %s 2 0 3 rmq 0 103 {"init terminating in do_boot",{undef,[{rabbit,boot,[],[]},{init,start_em,1,[]},{init,do_boot,3,[]}]}}
0 1777471852 1 5 0 2777708288 13680 0 NW_SERVERNAME nsrctld NSR notice 6 %s: %s 2 0 3 rmq 0 101 init terminating in do_boot ({undef,[{rabbit,boot,[],[]},{init,start_em,1,[]},{init,do_boot,3,[]}]})
0 1777471852 1 5 0 2777708288 13680 0 NW_SERVERNAME nsrctld NSR notice 6 %s: %s 2 0 3 rmq 0 1
0 1777471852 1 5 0 2777708288 13680 0 NW_SERVERNAME nsrctld NSR notice 6 %s: %s 2 0 3 rmq 0 73 Crash dump is being written to: /nsr/tmp/rabbitmq/cores/erl_crash.dump...
0 1777471852 1 5 0 2777708288 13680 0 NW_SERVERNAME nsrctld NSR notice 6 %s: %s 2 0 3 rmq 0 5 done
144354 1777471852 1 5 0 2845669184 13680 0 NW_SERVERNAME nsrctld NSR notice 21 Daemon %s terminated. 1 0 3 rmq
144359 1777471852 3 5 0 2845669184 13680 0 NW_SERVERNAME nsrctld NSR error 45 Scheduling restart of daemon %s in %u seconds 2 20 50 /opt/nsr/rabbitmq-server-4.1.1/bin/rabbitmq-server 5 1 5
137911 1777471852 5 5 0 2845669184 13680 0 NW_SERVERNAME nsrctld NSR critical 29 Aborting startup sequence: %s 1 49 148 137909 66 Process %s exited in less than %d seconds at startup: exit code %d 3 20 50 /opt/nsr/rabbitmq-server-4.1.1/bin/rabbitmq-server 1 2 10 1 1 1
127108 1777471852 5 5 0 2845669184 13680 0 NW_SERVERNAME nsrctld NSR critical 45 Failed to start all daemons; shutting down... 0
0 1777471853 1 5 0 2777708288 13680 0 NW_SERVERNAME nsrctld NSR notice 6 %s: %s 2 0 8 rmq-epmd 0 65 epmd: Wed Apr 29 08:10:53 2026: got KILL_REQ - terminates normal
Для рендеринга daemon.rawВидеть: NetWorker. Как использовать nsr_render_log для рендеринга файлов .raw журналов
Переменная /nsr/tmp/rabbitmq/cores/erl_crash.dump Отчеты:
Current Process Internal State: ACT_PRIO_NORMAL | USR_PRIO_NORMAL | PRQ_PRIO_NORMAL | ACTIVE | RUNNING | ACTIVE_SYS
Current Process Program counter: 0x00007faebd5b1ed0 (init:boot_loop/2 + 56)
Current Process CP: 0x00005651bc4d68b8 (<terminate process normally>)
Переменная /opt/nsr/rabbitmq-server-#.#.#/var Каталог не создается.
rabbitmq-server Версия папки изменяется в зависимости от установленной версии NetWorker.
Завершение работы служб NetWorker.
Cause
На хосте установлен сторонний пакет Erlang, в результате чего erl Двоичный файл в /usr/bin.
[root@nsr ~]# which erl /usr/bin/erl
В рабочем сценарии это не должно ничего возвращать:
[root@nsr ~]# which erl /usr/bin/which: no erl in (/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)
Реализация RabbitMQ на сервере NetWorker предоставляет собственные erl в двоичном файле rabbitmq-server путь к папке, его нет в /usr/bin. ОС erl отличается от версии, требуемой NetWorker:
[root@nsr ~]# /opt/nsr/rabbitmq-server-4.1.1/erts-14.2.5.11/bin/erl -version Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 14.2.5.11 [root@nsr ~]# /usr/bin/erl -version Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 10.4.4
В этом случае RabbitMQ 4.1.1 пытается инициализировать Erlang с помощью erl 10.4.4, что невозможно. Это приводит к наблюдаемому rmq Сообщается о крушении. Версии, приведенные в этой статье, предназначены, например, для определенных целей.
Пакеты Erlang находятся в ОС:
rpm -qa | grep erlang
Erlang не является стандартным пакетом ОС, и его установка ожидается только в образе системы окружения или администратором ОС. Переменная erl Реализация, используемая NetWorker, не возвращается вышеуказанной командой. Любой показанный пакет Erlang был установлен отдельно от NetWorker. Установленные ОС пакеты Erlang конфликтуют с NetWorker.
Из erl_crash.dump, наличие init:boot_loop/2 указывает на то, что произошел сбой во время инициализации среды выполнения Erlang. RabbitMQ никогда не достигает инициализации приложения, что объясняет, почему каталог RabbitMQ var не создается.
Отчеты о запуске NetWorker init terminating in do_boot with {undef,[{rabbit,boot,[],[]}]}. В Эрланге undef указывает на то, что функция или модуль не могут быть разрешены во время выполнения. В данном контексте это означает, что виртуальная машина Erlang не смогла загрузить модуль приложения RabbitMQ. Несовместимое или неправильное использование среды выполнения Erlang приведет к сбоям запуска RabbitMQ.
Resolution
Если они не требуются другим приложением, удалите их из системы. Это можно проверить с помощью следующей команды:
rpm -q --whatrequires erlang
При возврате пакетов необходимо проконсультироваться с администратором ОС относительно найденных пакетов Erlang и их возможности удаления.
Для удаления Erlang используйте:
dnf remove erlang\*
После удаления Erlang выполните следующие действия из командной строки root на сервере NetWorker:
- Получите список установленного в настоящее время программного обеспечения NetWorker:
rpm -qa | grep lgto
- Удалите все пакеты NetWorker, возвращенные командой, описанной выше:
rpm -e package1 package2 package3 package4 so_forth
- Переименуйте папки RabbitMQ. Необходимо указать имя версии папки для установки NetWorker.
mv /opt/nsr/rabbitmq-server-#.#.# /opt/nsr/rabbitmq-server-#.#.#_$(date -I) mv /nsr/rabbitmq /nsr/rabbitmq_$(date -I)
- Переустановите NetWorker.
yum localinstall --nogpgcheck -y package1 package2 package3 package4 so_forth
- Запустите сценарий конфигурации AUTHC после установки:
/opt/nsr/authc-server/scripts/authc_configure.sh
- Запустите службы NetWorker.
systemctl start networker
- Наблюдение за сервером
/nsr/logs/daemon.raw, чтобы подтвердить запуск сервера.
NetWorker. Как использовать nsr_render_log для рендеринга файлов .raw журналов
Если сервер NetWorker также является сервером консоли управления NetWorker Management Console (NMC) или сервером веб-интерфейса пользователя NetWorker (NWUI), запустите их сценарии конфигурации.
/opt/lgtonmc/bin/nmc_config /opt/nwui/scripts/nwui_configure.sh
Additional Information
RabbitMQ может не запуститься по причинам, отличным от причин, описанных в этой статье. В этом конкретном сценарии RabbitMQ /var Каталог не создан. Если /var и журналы доступны, просмотрите дополнительные журналы RabbitMQ для получения дополнительной информации. Также может потребоваться отладка RabbitMQ: NetWorker. Как включить отладку RabbitMQ