4.3. Fencing

Cook предлагает решение на аппаратном watchdog в качестве I/O-fencing. Когда узел стартует в качестве master, он запускает аппаратный таймер, который обнуляется не реже чем 2 раза за время жизни блокировки в Consul (loop_wait таким образом должен быть не больше половины TTL). При потере блокировки, узел перестает обновлять таймер. Если за время TTL/2 узел не сможет корректно выключиться, а затем выключить аппаратный таймер, то его принудительно выключит или перезагрузит watchdog.

Пример конфигурации для Linux Hardware Watchdog (https://www.kernel.org/doc/Documentation/watchdog/watchdog-api.txt):

fencing:
    use: linux_watchdog
    linux_watchdog:
        device: /dev/watchdog

Пример кроссплатформенной конфигурации на ipmiutil (http://ipmiutil.sourceforge.net/):

fencing:
    use: ipmi_watchdog
    ipmi_watchdog:
        ipmiutil_bin: c:/ipmiutil/ipmiutil.exe

Для тестирования конфигурации можно использовать опцию --test-fencing.