Кластер виртуализации — это несколько серверов-узлов под общим управлением, которые держат виртуальные машины так, что при отказе одного узла ВМ автоматически перезапускаются на оставшихся. Отказоустойчивость обеспечивают механизмы HA (высокая доступность), live migration (перенос ВМ без остановки), кворум для защиты от раскола и резерв ресурсов под отказ узла — схема N+1. Чтобы запас был реальным, нужно заранее посчитать число хостов — это удобно сделать калькулятором ниже.
Калькулятор: сколько хостов нужно для N+1
Оценка для кластера на общем хранилище. Учтён резерв под отказ узла и запас по загрузке. Точную раскладку под ваши ВМ подберёт инженер ВИСТЛАН.
HA: высокая доступность
HA (High Availability) следит за состоянием узлов кластера. Если узел вышел из строя, ВМ, которые на нём работали, автоматически запускаются на оставшихся узлах. Простой ограничивается временем перезапуска — обычно минуты, а не часы.
- Автоматический перезапуск ВМ с отказавшего узла.
- Общее хранилище, доступное всем узлам, — обязательное условие.
- Приоритеты: критичные ВМ поднимаются первыми.
Live migration: перенос без остановки
Live migration переносит работающую ВМ с одного узла на другой без её выключения. Это нужно для обслуживания «железа» без простоя сервисов: перед обновлением или ремонтом узла ВМ «уезжают» на соседние, затем узел выводят в работы.
Кворум: защита от раскола
Если узлы кластера потеряют связь друг с другом, может возникнуть «split-brain» — каждая часть решит, что выжила именно она, и попытается запустить одни и те же ВМ. Кворум не допускает этого: работает только та часть кластера, у которой большинство голосов.
- Нечётное число голосующих узлов или отдельный арбитр (witness).
- Меньшинство при расколе останавливает свои ВМ, чтобы не повредить данные.
Резерв под отказ узла: N+1 и N+2
Главный принцип проектирования — закладывать запас под отказ. В схеме N+1 один узел всегда «лишний»: его ресурсы держатся свободными, чтобы принять ВМ с упавшего узла. Для особо критичных систем берут N+2.
| Схема | Переживает | Когда применять |
|---|---|---|
| Без резерва (N) | Не переживает отказ узла | Только тест/некритичное |
| N+1 | Отказ одного узла | Большинство задач бизнеса |
| N+2 | Отказ двух узлов | Критичные системы, обслуживание + отказ |
Кластер строится поверх виртуализации серверов, а для географического резерва его дополняют облачной DR-площадкой. Сколько ВМ влезет на один узел — см. расчёт ВМ на сервер.
Спроектируем отказоустойчивый кластер виртуализации с резервом N+1 и нужным SLA.
Частые вопросы
Что такое кластер виртуализации?
Это несколько серверов-узлов под общим управлением, которые держат виртуальные машины так, что при отказе одного узла ВМ автоматически перезапускаются на оставшихся. Отказоустойчивость обеспечивают HA, live migration, кворум и заложенный резерв ресурсов по схеме N+1.
Что значит резерв N+1?
N+1 означает, что в кластере есть один «лишний» узел, ресурсы которого держатся свободными, чтобы принять виртуальные машины с отказавшего узла. Без такого резерва при сбое на оставшихся узлах может не хватить ресурсов, и часть ВМ не запустится. Для критичных систем берут N+2.
Чем HA отличается от live migration?
HA срабатывает при внезапном отказе узла и автоматически перезапускает его ВМ на других узлах. Live migration переносит работающую ВМ между узлами без остановки и нужна для планового обслуживания «железа» без простоя. Вместе они закрывают и аварийные, и плановые сценарии.
Зачем кластеру кворум?
Кворум защищает от ситуации split-brain, когда узлы теряют связь и каждая часть кластера считает себя единственной выжившей. Работает только часть с большинством голосов, а меньшинство останавливает свои ВМ, чтобы не повредить данные на общем хранилище. Поэтому используют нечётное число голосов или арбитра.
Сколько хостов нужно для отказоустойчивого кластера?
Минимум столько, сколько требует ваша нагрузка с целевой загрузкой узлов, плюс резерв под отказ (один узел для N+1, два — для N+2). Точное число зависит от профиля ВМ и допустимой плотности; прикинуть его удобно калькулятором в статье, а итоговую конфигурацию подбирает инженер.
