LINUX.ORG.RU
ФорумTalks

пуск/логирование/мониторинг всяческого софта (лучше не init)

 


0

1

Есть одна задача, которую было бы желательно решить с наименьшим количеством возни.

Есть софтина A (если точно - то поделие на django). Без дополнительных зависимостей.

Есть софтина B (поделие получает запросы с внешнего сервиса и обрабатывает их). В чистом виде от A не зависит. Для неё, положим, есть конфиги B1 и B2 (путь к конфигу софтина получает как один из аргументов. Других отличий нет, потому пилить кучи init скриптов желание ниже среднего). При этом в случае B1 - добавляется зависимость от A.

Во всех случаях A и B логируют всякое в stdout/stderr. Падают в случае какой-либо непредусмотренной НЁХ, конечно - неплохо бы получать уведомления о фейле.

Как автоматизировать руление этой гадостью? Включая запуск (кстати, нужен также и запуск по старту сервера)/остановку/перезапуск/доступ к логам. Желателен ещё какой-либо вебгуй, но это таки опционально.

Желательно - что-то удобнее вагонов и телег init-скриптов, да.

Линукс тут при том, что запускаться эта хренота будет на нём, конечно же.

з.ы. указание в сторону неуказанных мной подробностей приветствуется, конечно.

з.ы. блин, это же не general :-)

Ответ на: комментарий от Aber

Вроде вариант, да (да и некоторые плюшки докера будут нелишни). С внешним сервером БД и rabbitmq - всё же оно не stateless же.

Подожду ещё вариантов.

alex4321 ()
Последнее исправление: alex4321 (всего исправлений: 3)

Я конечно извиняюсь, но может systemd, journald? И нет тебе инитскриптов, обойдешься юнитами и зависимостями, вот только про вебгуй не скажу (но ведь есть ssh, а логи журналд-ик можно стягивать удаленно).

mandala ★★★★ ()

Олдскульные init-скрипты «пишутся» путём немудрящей правки шаблонного скрита. Логгирование делается б-анальным пернаправлением stdout и stderr в файл (плюс не менее шаблонным конфигом для logrotate). Велосипедить нужно будет разве-что уведомления.
Ну а про systemd тебе уже и так сказали

MrClon ★★★★★ ()
Ответ на: комментарий от mandala

Есть кокпит, правда, я его не пробовал совсем. alpha, наверное, сможет рассказать. Но с каких пор ты стал советовать systemd?

intelfx ★★★★★ ()
Ответ на: комментарий от intelfx

Но с каких пор ты стал советовать systemd?

Инструмент по задаче, тут вроде не плохо должен справиться, а ТС видимо и не знает его. Я сам пользуюсь сустемд там где это оправдано, например, где после меня могут работать люди.

Мне больше не нравится релизная модель (поддержка с сильным перекосом на откуп конечным мейнтейнерам), привязка стороннего ПО (тут уж разработчики стороннего ПО на волне хайпа идут по пути наименьшего сопротивления), ну и оголтелый фанатизм порой вылезает у некоторых (все закопать, останется только один!). Можно модульность вспомнить, которая модульна только в одну сторону, а хотелось бы большего. Ну и не стоит забывать что мы на ЛОРе, а тут эксцентричностью сам воздух заряжен.

mandala ★★★★ ()
Ответ на: комментарий от alex4321

С внешним сервером БД и rabbitmq - всё же оно не stateless же

монтировать в докере персистент сторадж, логи писать куданить в graylog. Оркестрация по вкусу...

WindowsXP ★★ ()
Последнее исправление: WindowsXP (всего исправлений: 1)

Вагонов init-скриптов конечно не нужно, systemd-unit пишутся на раз.

для B1 и B2 можно на instantiated unit посмотреть

https://fedoramagazine.org/systemd-template-unit-files/

И cockpit дает web-интерфейс с общим обзором процессов на сервере.

Но это управление установленными приложениями. И как-то это задача давно не встречается в природе именно в таком варианте.

А вот устанавливать, обновлять ты его как будешь? Это в задачу входит? Если да, то тебе нужно не управление/перезапуск сервиса (ну то есть оно тоже нужно, но его недостаточно), а деплой и оркестрацию.

И тогда смотреть надо в сторону вещей типа ansible.

alpha ★★★★★ ()
Ответ на: комментарий от Aber

да вы упоролись. докер вместо инит скриптов. омг

mrdeath ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.