Предположим, я сконфигурировал 2 машины, чтобы они были активными / пассивными с тактовым импульсом linux и кардиостимулятором, затем я создаю группу ресурсов в node1, фиксирую ее. Если я прав, конфигурация будет распространена на node2. Группа ресурсов будет отслеживать одну из служб на машине.
У меня вопрос: поскольку на двух узлах запущена идентичная служба, какой из них становится активным в первую очередь? Или сердцебиение Linux решит это (у обоих есть равные возможности)?
С Pacemaker у вас нет «активного узла» и «пассивного узла». Все узлы кластера (их может быть больше 2) могут запускать службы одинаково, а правила в базе данных CIB сообщают CRM (диспетчеру ресурсов Pacemaker), какой узел может запускать какие службы.
Если вы настроили службу для работы как один экземпляр, который может работать на обоих узлах без ограничений, то вы не можете сказать, какой узел будет запускать его. Если у вас есть две такие службы, вы можете закончить тем, что одна будет работать на одном узле, а другая - на другом. Для первого сервиса будет активен node1, а для второго - node2.
Вы определяете фактическое предпочтение, объявляя некоторые константы. Пример: «запустить службу 1 на узле, где работает служба 2» или «всегда предпочитать узел 1 для обеих служб».
Обычно у вас есть служба, которая определяет «логический мастер» - это может быть IP-адрес или том DRBD в основном состоянии - тогда все остальные службы зависят от этого, и вы выбираете «мастер», устанавливая предпочтения для основной службы.
См. Документацию по Pacemaker для получения подробной информации о настройке ограничений.
Само сердцебиение при использовании с Pacemaker не принимает никаких решений о состояниях ведущего / ведомого или о том, какие ресурсы работают.