Службы DPA не запускаются автоматически после перезагрузки сервера Linux
Сводка: Службы Dell Data Protection Advisor (DPA) не запускаются автоматически после перезагрузки сервера Linux, если DPA установлен в файловой системе, не являющейся корневой или смонтированной. ...
Симптомы
Службы Data Protection Advisor (DPA) не запускаются автоматически при перезапуске операционной системы. Эта проблема затрагивает системы Linux, использующие процесс инициализации systemd, например RHEL 7 и более поздние версии или SUSE 12 и более поздние версии.
Эта проблема возникает, когда DPA устанавливается в файловой системе, отличной от корневой или смонтированной.
Причина
В настоящее время причина этой проблемы полностью не известна.
Процесс systemd не может преобразовывать записи init.d в служебные файлы. Процесс systemd сначала пытается запустить службы, прежде чем монтировать файловые системы на удаленных точках монтирования. Если DPA установлен в файловой системе, которая является удаленной точкой монтирования, сервисы DPA не запускаются.
Разрешение
Чтобы решить эту проблему, создайте служебные файлы systemd, чтобы операционная система могла запускать службы DPA.
Соберите следующую информацию как с сервера приложения, так и с сервера DS в среде:
systemctl | grep .mount
Найдите файловую систему, в которой установлен DPA. Выходные данные команды должны быть аналогичны следующим:
opt-data.mount - /opt/data Active: active (mounted) since Tue 2017-07-18 18:00:43 MSK; 5min ago Process: 742 ExecMount=/bin/mount -n -t xfs -o defaults /dev/disk/by-uuid/4d04e118-0d0a-49d4-b626-e58d1bb82a29 /opt/data (code=exited, status=0/SUCCESS)
Выполните следующие команды, чтобы определить, где находятся файлы инициализации DPA:
find / -name 'datasvc' -print
find / -name 'agentsvc' -print
find / -name 'applnsvc' -print
Эти команды возвращают путь. В большинстве случаев путь следующий: «/etc/rc.d» или «/etc/init.d».
Создайте следующие три служебных файла systemd. Эти файлы являются обычными текстовыми файлами.
datasvc.serviceapplnsvc.serviceagentsvc.service
datasvc.service
Создайте файл datasvc.service на сервере DS. Задайте для значений SourcePath, ExecStart и ExecStop расположение datasvc в системе. Для «After=network-online.target» добавьте точку монтирования в конце точки монтирования, в которой установлен DPA, полученную с помощью команды «systemctl status |grep .mount».
[Unit] SourcePath=/etc/init.d/datasvc Description=EMC DPA Datastore Service After=network-online.target opt-data.mount [Service] Type=forking Restart=no RemainAfterExit=yes ExecStart=/etc/init.d/datasvc start ExecStop=/etc/init.d/datasvc stop [Install] WantedBy=multi-user.target
applnsvc.service
Создайте этот файл на сервере приложений. Установите для значений SourcePath, ExecStart и ExecStop расположение applnsvc в системе. Для «After=network-online.target» добавьте точку монтирования в конце точки монтирования, в которой установлен DPA, полученную с помощью команды «systemctl status |grep .mount».
[Unit] SourcePath=/etc/init.d/applnsvc Description=EMC DPA Application Service After=network-online.target opt-emc-dpa.mount [Service] Type=forking Restart=no RemainAfterExit=yes ExecStart=/etc/init.d/applnsvc start ExecStop=/etc/init.d/applnsvc stop [Install] WantedBy=multi-user.target
agentsvc.service
Создайте этот файл как на сервере приложения, так и на сервере DS. Установите для значений SourcePath, ExecStart и ExecStop расположение агентов в системе. Для «After=network-online.target» добавьте точку монтирования в конце точки монтирования, в которой установлен DPA, полученную с помощью команды «systemctl status |grep .mount». Необходимо создать файл agent.service как для агента APP, так и для агента DS.
[Unit] SourcePath=/etc/init.d/agentsvc Description=EMC DPA Agent Service After=network-online.target opt-emc-dpa.mount [Service] Type=forking Restart=no RemainAfterExit=yes ExecStart=/etc/init.d/agentsvc start ExecStop=/etc/init.d/agentsvc stop [Install] WantedBy=multi-user.target
После создания этих файлов скопируйте файлы datasvc.service и agentsvc.service на сервер DS в каталог /etc/systemd/system, а файлы applnsvc.services и agentsvc.service в каталог /etc/systemd/system на сервере приложений. После того как все файлы будут скопированы, выполните следующие действия по порядку.
-
Остановите службы DPA на серверах приложений и DS.
-
Выполните следующую команду на затронутом сервере DS:
systemctl enable datasvc.service systemctl enable agentsvc.service systemctl start datasvc.service systemctl start agentsvc.service
-
Выполните следующую команду на затронутом сервере APP:
systemctl enable applnsvc.service systemctl enable agentsvc.service systemctl start applnsvc.service systemctl start agentsvc.service
-
Проверьте состояние сервисов DPA, чтобы убедиться, что службы запущены.
-
Перезагрузите сервер приложений, а затем сервер DS.
-
Выполните следующие команды, чтобы убедиться, что службы запущены с сервера systemd:
DSsystemctl status datasvc.service systemctl status agentsvc.service
Сервер APP
systemctl status applnsvc.service systemctl status agentsvc.service
-
Проверьте состояние служб DPA с помощью следующей команды:
dpa svc status -
Если службы DPA не запустились, просмотрите три файла (datasvc.service, applnsvc.service и agentsvc.service) на наличие ошибок.
-
После исправления ошибок повторите шаги с 1 по 7 для повторной проверки.