Я пытаюсь построить кластер системного журнала HA.
Системный журнал UDP не имеет состояния, для балансировщика нет способа обеспечить жизнеспособность узлов, поэтому я экспериментирую с PCS/Corosync на CentoOS7.
В идеале я хотел бы, чтобы программное обеспечение кластера обнаруживало ошибку rsyslog на узле. После обнаружения кластер перенесет ресурс IP на один из оставшихся узлов.
То, что я смог сделать, это совсем другое. Я добавил ресурс 'systemd' для rsyslog, а затем 'клонировал' его, чтобы он мог работать на обоих узлах. Когда я помещаю узел в режим ожидания для выполнения обслуживания или тестирования, служба rsyslog на этом узле отключается.
rsyslog - системная служба, я не хочу, чтобы кластер управлял ею, но я не могу найти способ сделать иначе.
Есть ли способ добавить «виртуальную» зависимость в кластер, чтобы общий ресурс (например, IP-адрес) мог запускаться на узле, только если запущена конкретная служба (или порт прослушивает, или что-то еще), без позволить кластеру взять на себя ответственность за жизненный цикл службы?
Я думаю, что могу написать простой сценарий оболочки, чтобы определить, работает ли моя «внешняя» зависимость или нет, но где я должен поместить ее в кластер Corosync?
заранее спасибо
Angelo.