Владимир Ливинский
Руководитель отдела бизнес­серверов
компании «АйТи»
С ним можно связаться по email: VLivinskiy@it.ru

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

Эволюция ИT­рынка дарит нам всё новые продукты для эффективного управления ресурсами центров обработки данных. Одна из востребованных технологий в этом смысле — виртуализация вычислительных ресурсов.

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

  • динамически изменять параметры контейнера виртуальных ресурсов, что позволяет значительно сократить накладные расходы на реконфигурирование серверов;
  • тиражировать образы виртуальных серверов (гостевых операционных систем);
  • повысить доступность прикладных сервисов за счет сокращения запланированных простоев для планового обслуживания серверов.

Таким образом, применение средств виртуализации позволяет (по данным компании EMC/VMWare):

  • на 50—70% повысить эффективность использования аппаратных ресурсов ;
  • на 40% сократить расходы на покупку серверов и ПО;
  • на 50—70% снизить операционные расходы.

Как видим, преимущества серьезные, поэтому аналитики из IDC прогнозируют бурное развитие рынка решений для виртуализации серверов. В 2005 году его объем по данным той же IDC составил 560 млн. долл., в 2006­м — 810, а на 2009­й прогнозируется на уровне 1,8 млрд. долл.

Проблемы виртуализации

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

  Средства виртуализации на Intel­системах
 

Наиболее востребованными на рынке являются продукты EMC/VMWare (см. диаграмму). Ведущие производители средств виртуализации x86­платформ — это EMC/VMWare и SWSoft. При этом EMC/VMWare предлагает два решения — VMWare ESX Server для центров обработки данных и VMWare Server для бюджетных систем. К преимуществам ESX Server можно отнести полную изоляцию виртуальных серверов друг от друга и возможность формировать гетерогенные среды путем запуска в изолированных разделах различных операционных систем. ESX Server устанавливается на «голый» сервер и выделяет частные виртуальные серверы для последующей инсталляции в них гостевых ОС. В результате минимизируются накладные расходы на виртуализацию и повышается эффективность использования ресурсов вычислительной платформы. Бюджетный продукт VMWare Server инсталлируется на первичную операционную систему и работает параллельно с её приложениями. Он идеально подходит для решения тестовых, отладочных задач.

Компания SWSoft предлагает Virtuozzo для установки на первичную ОС с целью её последующего тиражирования на уровне виртуальных серверов. Подобный подход позволяет экономить на лицензиях программного обеспечения.


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

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

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

Вопросы надежности

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