Я проверяю устойчивость одной из наших тестовых систем. У нас есть 2 базы данных (SQL 2008 R2 на Server 2008 R2, работающие на виртуальных машинах ESXi), организованные в отказоустойчивый кластер.
Завершение работы службы Active SQL Server мало что дает - служба не перезапускается и переключение при отказе не происходит; Я понимаю, что это сделано намеренно - система предполагает, что у администратора была веская причина отключить службу, и поэтому он будет сидеть спокойно.
Тем не менее, мы можем смоделировать сбой несколькими способами - я обнаружил, что самым простым было просто убить службу SQL в диспетчере задач. Наш кластер настроен на один сбой за 6 часов, поэтому после этого первого сбоя он пытается перезапустить службу, что успешно. Завершите службу во второй раз (в течение 6 часов), и менеджер кластера решит переключить БД на пассивный сервер. Все идет нормально...
Если убьет службу на втором сервере, она снова перезапустится. Но когда мы убиваем сервис во второй раз, он не вернуться к первому серверу.
Я предполагаю, что это тоже намеренно; это имеет смысл, потому что зачем переключаться на сервер, который сам был недостаточно стабилен всего несколько минут назад? Звучит логично, но так ли это? И если да, соблюдается ли тот же период тайм-аута (т.е. 6 часов), и можно ли его сбросить?
По сути, прежде чем я скажу своим коллегам, что функции аварийного переключения работают, я просто хочу подтвердить / уточнить свое понимание и предположения.
Некоторые другие вещи, которые вы можете протестировать:
Попробуйте выключить коробки (даже выключите питание, чтобы лучше моделировать). Также отключите сетевые кабели и отключите соединение между серверами.
(хотя по общему признанию, обычно именно программное обеспечение, кажется, вызывает аварийное переключение)
чтобы установить политики перезапуска:
Откройте администратор кластера.
В дереве консоли щелкните папку Ресурсы.
В области сведений щелкните нужный ресурс.
В меню "Файл" выберите "Свойства".
На вкладке «Дополнительно» внесите необходимые изменения.
Похоже, вы хотите посмотреть на следующие параметры: время ожидания, порог отработки отказа и период отработки отказа для ресурсов. Тайм-аут определяет, как долго служба кластеров ожидает завершения работы ресурса. Порог отработки отказа и период определяют, сколько раз служба кластера пытается отработать отказ ресурса за определенный период времени.