Преимущества виртуализации — такие как снижение затрат на аппаратное обеспечение и электропитание — столь очевидны, что растущий интерес к виртуализации серверов проявляют сейчас предприятия всех размеров, включая малые и средние. Однако у этой идеи имеется и оборотная сторона, которую пользователи не всегда принимают во внимание. Если в традиционном серверном ландшафте случается отказ одной из систем, то этот сбой затрагивает лишь определенное приложение, будь то инструментарий для управления заданиями или учета времени, база данных или почтовый сервер. Все остальные приложения продолжают функционировать. В виртуализированной среде при любом инциденте оказываются затронуты сразу несколько приложений. На небольших предприятиях, где, случается, все приложения устанавливаются на один сервер, такая ситуация может привести к полной остановке рабочего процесса, что недопустимо.

При этом наибольшему риску подвергаются предприятия, где имеется всего несколько виртуализированных серверов. Таким организациям необходимо сделать так, чтобы отказ систем, установленных на физических серверах, был не просто редким явлением, а не случался бы никогда. При этом изначально не пригодны решения, при сбое которых необходимо вмешательстве системного администратора, особенно если предприятие не может себе позволить содержать в штате специалистов по ИТ. Виртуальные системы, как правило, сложны, а их администрирование и обслуживание требуют особых навыков и умений, поэтому малые предприятия часто обращаются за получением необходимых ресурсов к внешним поставщикам услуг, однако в аварийной ситуации и они доступны не сразу. Иными словами, обеспечить высокую готовность ИТ, скорее всего, не получится.

До недавнего времени эта проблема не имела решения для малых и средних предприятий: нестандартные специализированные продукты для обеспечения высокой готовности были столь дорогими и сложными, что затраты на их обслуживание превысили бы всю экономию, достигнутую в результате внедрения виртуализации. Теперь на рынке представлены не только аппаратные, но и программные системы для обеспечения высокой готовности на базе полностью стандартизированных технологий. Оба варианта рассчитаны не на устранение, а на предотвращение сбоев: ошибки просто не возникают, поэтому предпринимать сложные и чреватые ошибками меры для восстановления процессов и транзакций не приходится. В случае неполадок системы автоматически устраняют их.

ВЫСОКАЯ ГОТОВНОСТЬ АППАРАТНЫМИ СРЕДСТВАМИ

Рисунок 1. Непрерывная готовность: в аппаратных системах высокой готовности компоненты можно заменять в процессе эксплуатации оборудования.Отказоустойчивые серверы, к примеру ftServer компании Stratus, обеспечивают непрерывную готовность благодаря полностью избыточной конструкции системы (см. Рисунок 1). По сути, такой сервер состоит из двух самостоятельных систем, связь между которыми осуществляется посредством раздвоенной, но общей шины PCI с использованием аппаратных средств сравнения. Обе системы размещены в одном корпусе, и со стороны создается впечатление, что это один компьютер. При этом каждая из двух избыточных «половин» «видит» все устройства PCI. Основная идея такого подхода базируется на применении стандартных компонентов, к примеру, представленных на рынке системных плат для соответствующего типа процессоров. Нестандартными компонентами здесь являются лишь соединение между обеими частями компьютера и аппаратные средства сравнения. Так, в оборудовании ftServer логика сравнения реализуется посредством разработанных компанией Stratus дополнительных — и тоже избыточных — микросхем ASIC.

Синхронизация процессоров и оперативной памяти между обеими системными платами достигается с помощью так называемой жесткой синхронизации (Lock Stepping), которая отвечает за то, чтобы все компоненты в один и тот же момент времени пребывали в одном и том же состоянии. Обязательным условием для функционирования Lock Stepping является полное совпадение исходного состояния обеих «половин» компьютера, что достигается применением особых мер в процессе загрузки систем. После полного переноса содержимого оперативной памяти процессоры на обеих системных платах приводятся в идентичное начальное состояние, после чего снова инициируется обработка данных. С этого момента обе системные платы работают в дуплексном режиме, то есть синхронно.

Дальнейшая синхронизация контролируется посредством лишь аппаратного обеспечения. Если в какой-то момент времени возникают отклонения, к примеру ошибка памяти на одном из устройств, система сначала пытается с минимальными затратами восстановить работу памяти в синхронном режиме путем кратковременного отключения (Blackout) соответствующей области памяти. Это делается потому, что из-за все более высокой плотности упаковки микросхем растет количество перемежающихся отказов. Если таким образом невозможно вернуть память в синхронное состояние, система выводит соответствующую плату из эксплуатации.

Благодаря этой технологии готовность отказоустойчивых серверов может достигать 99,9999%, что дает среднее время простоя — полминуты за год (см Таблицу 1).

Такой уровень готовности достаточен даже для обеспечения деятельности авиадиспетчерских служб. К тому же, если отказоустойчивые серверы используют стандартизированные технологии, то они полностью совместимы, к примеру с VMware ESX, поэтому программное обеспечение для виртуализации можно устанавливать прямо на аппаратные устройства, что позволяет без дополнительных усилий защитить от отказов все размещенные на них виртуальные машины.

ВЫСОКАЯ ГОТОВНОСТЬ ПРОГРАММНЫМИ СРЕДСТВАМИ

Для малых и средних предприятий в качестве альтернативы можно предложить программные средства для обеспечения высокой готовности, поскольку они недороги, а их внедрение и последующая эксплуатация не являются слишком сложными. Если для аппаратных решений применяются специальные серверы, то программные решения могут базироваться на стандартных серверах х86 и объединять два таких сервера с помощью программного обеспечения в одну структуру высокой готовности. Такое решение (к примеру, Stratus Avance) автоматически устанавливает на обоих серверах общий логический сервер, на котором, в свою очередь, можно разместить необходимое количество виртуальных серверов.

При этом оба компьютера связаны посредством обычного сетевого соединения, а программное решение постоянно контролирует и синхронизирует их работу. При отказе одного из компьютеров его обязанности автоматически берет на себя второй. Тем самым достигается уровень готовности, равный 99,99%, что соответствует часу простоя за год. Такое программное решение можно реализовать с использованием обычных серверных компьютеров, к примеру прозводства Dell или HP.

Для малых и средних предприятий важным является то, что управление подобными решениями может осуществляться с одной-единственной административной консоли, а сами системы обладают интегрированными инструментами прогнозирования, с помощью которых можно быстро идентифицировать большинство аппаратных и программных проблем. С их помощью специалисты по ИТ могут дистанционно контролировать виртуальные машины, физические серверы х86 и их сетевые интерфейсы.

Предприятия смогут эксплуатировать свои виртуальные серверы полностью автоматически, что позволяет применять такое решение в распределенных филиалах, где, как правило, нет специалистов, которые отвечали бы за их обслуживание. Помимо несложного администрирования, к достоинствам таких решений для обеспечения высокой готовности относится простота их внедрения, так как, в отличие от кластерных решений, трудоемкой конфигурации или настройки программ не требуется. Пятнадцати минут должно быть достаточно для установки всего необходимого программного обеспечения.

ЗАКЛЮЧЕНИЕ

Программное решение для обеспечения высокой готовности позволит малым и средним предприятиям эксплуатировать свои виртуальные приложения ИТ в настоящей среде высокой готовности и тем самым исключить риск возникновения сбоев. Усилия и расходы на внедрение такого решения незначительны (см. Таблицу 2), особенно если сравнить их с расходами по устранению последствий возможного отказа серверов.

Тимо Брюггеманн — руководитель отдела развития бизнеса в регионе EMEA компании Stratus.

© ITP Verlag
Таблица 1. Уровни готовности в процентном соотношении и результирующее время простоя за год.

Таблица 2. Сравнение различных стратегий обеспечения высокой готовности.