В качестве простого примера возьмем ситуацию, когда нам требуется
сконфигурировать почтовый сервер и сервер БД. Возможны следующие
подходы к решению данной задачи:
- Традиционный "-- для каждой
задачи выделяется и конфигурируется отдельный физический сервер. В
случае сбоя одного из серверов мы лишемся как минимум тех сервисов,
которые этот сервер предоставляет. В худшем случае, учитывая, что
сервисы могут зависеть друг от друга (а конфигурации, в которых
почтовый сервер интенсивно использует сервер БД, не так уж редки),
мы можем лишиться гораздо большего.
- Кластеризация "--
физические сервера (точнее, сервисы, работающие на этих серверах)
дублируются средствами Linux HA. В этом случае надежность
значительно увеличивается, но возрастает также количество серверов и
затраты на их обслуживание.
- Виртуализация "-- для
каждого сервера выделяется отдельная виртуальная среда на общем
физическом сервере. В этом случае увеличивается гибкость, теперь мы
не ограничены в количестве серверов и можем, например, выделить
отдельную виртуальную среду для организации
маршрутизатора/брандмауэра, ограничивающего доступ к почтовому
серверу и серверу БД. Количество физических серверов и затраты на их
обслуживание уменьшаются, но вместе с ними уменьшается и надежность,
которая может оказаться даже ниже, чем в случае (1),
если работоспособность серверов зависит друг от друга.
- Кластеризация + виртуализация "-- общий физический
сервер (точнее, один единственный сервис "-- система виртуализации)
дублируется средствами Linux HA, тем самым мы совмещаем преимущества
подходов (2) и
(3) ценой увеличения нагрузки на сервера
по сравнению с подходом (1).
Если не углубляться в детали, схема выбранного нами последнего способа
построения системы изображена на
рисунке 1.
.:
Кластеризация + виртуализация
|
Eugene
2012-05-28