У меня проблемы с настройкой службы systemd для запуска и остановки SAP (или любого другого приложения).
Я новичок в настройке служб systemd, и, пожалуйста, будьте милосердны, задавая «глупые» вопросы.
Что я хочу/планирую:
Приложение SAP в этом случае устанавливается на локальные диски, смонтированные в /local/hana/H01 и /local/hana/H01/DB; это файловые системы, которые монтируются с помощью fstab.
Существует скрипт, который запускает SAP, который находится в /local/hana/H01/bin/hana. Если вы вызовете этот сценарий с параметром «старт», он запустит SAP или с «стоп» завершит работу SAP. Этот сценарий завершится после запуска SAP, но процессы SAP останутся в сети.
Для этого экземпляра SAP настроен дополнительный сетевой адаптер eth0:1; SAP должен запуститься после того, как эта сетевая карта станет доступна.
Администраторы SAP считают удобным входить через ssh на хост для проверки проблем, поэтому, если SAP не закрывается, они хотят подключиться через ssh для проверки; sshd не должен завершаться до тех пор, пока SAP/приложение не будет отключено.
/local/hana/H01/bin/hana (или любой другой сценарий приложения) будет запускать команды со сценарием тайм-аута для предотвращения блокировки.
Раньше я использовал структуру init.d и использовал уровень запуска 4, чтобы запускать свои приложения в конце процесса загрузки.
Я создал конфигурацию службы, которую я повторно использовал из существующей службы, поэтому я еще не понимаю всех параметров и зависимостей. Нужны ли мне эти зависимости уровня запуска?.target? Это было в файле примера.
[Ед. изм]
Описание=Системные ресурсы для SAP HANA H01
Требуется = local-fs.target
После=local-fs.target
До=runlevel2.target
До=runlevel3.target
До=runlevel4.target
До=runlevel5.target
До=shutdown.target
Требуется=сеть.цель
After=network-online.target
После=network.service
После=sshd.service
После=local-fs.target
Conflicts=shutdown.target reboot.target
[Оказание услуг]
Тип = разветвление
Перезапустить=нет
Стандартный вывод = системный журнал
StandardError=syslog+консоль
Тайм-аутсек=0
ИгнорироватьSIGPIPE=нет
KillMode=процесс
RemainAfterExit=да
ExecStart=/local/hana/H01/bin/hana start
ExecStop=/local/hana/H01/bin/hana стоп
[Установить]
WantedBy=многопользовательская.цель
Я что-то пропустил? слишком? Любые предложения о том, что я должен добавить или удалить?
Спасибо
Фрэн