Итак, я вижу много противоречивых точек зрения на использование STONITH с 2-узловым кластером DRBD / Pacemaker / Corosync для репликации данных MySQL. Пример, который я смог найти на Веб-сайт кардиостимулятора кажется, выключает его, но многие другие места говорят, что вы должны оставить его включенным ..... Моя установка будет состоять из 2 узлов с 2 интерфейсами, один физически подключен к другой машине, а другой подключен к коммутатору. В том случае, если у меня есть резервная связь, нужен ли STONITH? Если сервер теряет оба сетевых соединения, он все равно не будет получать никаких данных MySQL, и когда он вернется, я планирую установить липкость на бесконечность, чтобы он (не должен) не пытался стать мастером. В этом случае STONITH необходим или даже целесообразен?
Лучше всего проверить, что на самом деле происходит при различных режимах отказа, чтобы убедиться, что нет единственного отказа, который мог бы заставить оба сервера MySQL попытаться стать мастерами.
Протестируйте отключение интернет-соединения на одном сервере. Посмотрите, что происходит на обоих серверах, и посмотрите, что произойдет, когда вы снова включите его.
Сделайте то же самое для любых резервных соединений. Затем сделайте то же самое, отключив сразу ВСЕ сетевые подключения.
Одна из причин, по которой не следует выполнять STONITH в кластере с двумя узлами, заключается в том, что довольно легко закончить тем, что оба узла попытаются убить другой и фактически добьются успеха. Вам необходимо протестировать свою настройку, чтобы убедиться, что они одновременно не завершаются или оба продолжают работать как мастера и синхронизировать вашу базу данных.
Еще одна вещь, которую я рекомендую, пока вы тестируете его, прежде чем он пойдет в производство: намеренно сломайте его. Сделайте что-нибудь, что приведет к рассинхронизации mysql и drbd, и узнайте, как это исправить. Запишите, что вам нужно было сделать, чтобы это исправить. Потому что гораздо лучше знать, как это сделать, ДО того, как вам это действительно понадобится.