Это действительно зависит от системы HA, которую вы используете.
Например, если ваша система использует общий IP-адрес, а трафик управляется некоторым аппаратным блоком, тогда может быть трудно определить, является ли определенный блок ведущим или ведомым. Это будет зависеть от конкретного решения ... Пока вы можете добавить собственный скрипт в супервизор, у вас все будет в порядке - например, контроллер может пинговать демон на главном сервере каждую секунду. В сценарии оповещения просто проверьте, является ли время последнего пинга <2 сек ... </p>
Если в вашей системе нет узла супервизора / контроллера, но каждый узел пытается определить состояние самостоятельно, у вас могут возникнуть дополнительные проблемы. Если происходит разделение мозга, вы можете в конечном итоге использовать оба ведомых или обоих мастеров, поэтому ваше программное обеспечение для оповещения будет неверным в обоих случаях. Гаджеты, которые могут обеспечить только один действующий узел (STONITH и другие), могут помочь.
С другой стороны, во втором сценарии, если программное обеспечение HA работает на обоих хостах должным образом, вы сможете получать информацию о главном / подчиненном устройстве прямо с него. Он должен знать свое собственное состояние в любое время, потому что это одна из его основных функций. В большинстве решений высокой доступности вы можете либо получить текущее состояние, либо добавить некоторый код для запуска при изменении состояния. Heartbeat предлагает оба.
Я бы не стал беспокоиться о крайних случаях, таких как расщепление мозга. Практически любая ситуация, когда вы теряете связь между кластерными узлами, будет важнее того, что происходит на отдельных узлах:)
Если вы действительно беспокоитесь только о регистрации / предупреждении, то в идеале у вас может быть отдельное окно регистрации, которое получает всю информацию о текущем состоянии сети / кластера. Внешняя коробка, вероятно, будет лучше понимать, как справиться с ситуацией. Если ваш кластер отключен / отключен от сети / отключен, вы не получите никакого предупреждения. От этого может избавить лишняя пара независимых мониторов.
Я не уверен, почему вы упомянули DNS - из-за его времени обновления он не должен быть источником какой-либо информации о кластере «в реальном времени».