СОДЕРЖАНИЕ
- Введение
- Подходы к виртуализации вычислительных ресурсов
- Аппаратные разделы
- Полная (нативная) виртуализация
- Паравиртуализация
- Виртуализация уровня ОС
- Функциональные возможности платформы виртуализации
- Почему VMware?
- Быть или не быть виртуализации?
- Инфраструктурные решения и синергетический эффект
- Вычислительная платформа
- SAN и система хранения данных
- Особенности проектирования сетей и систем хранения для среды VMware
- Резервное копирование в среде VMware
- Перспективы и тренды
- Виртуализация рабочих мест
- Доставка приложений
- Выводы
Введение
Немного истории:
В 1937 году был сформулирован «тезис Черча-Тьюринга», ставший теоретическим обоснованием возможности виртуализации.
В 1998 году компания VMware выпустила VMware Virtual Platform для архитектуры Intel IA-32.
В 2007 году платформу виртуализации VMware использовало уже более 20 000 корпоративных заказчиков.
За последние годы виртуализация вычислительных ресурсов стала одним из главных трендов на рынке корпоративных IT-систем. И это неудивительно: по заверениям разработчиков, виртуализация – волшебная таблетка, быстро решающая большинство насущных проблем руководителей ИТ-подразделений.
К таким источникам головной боли, по мнению компании IDC, проведшей в 2008 году опрос почти 200 ИТ-директров крупных компаний, в первую очередь следует отнести (см. рис.1 ) :
Рис. 1. Рейтинг основных проблем ИТ-директоров (число опрошенных 197, источник: IDC survey , 2008).
Ограничение роста парка серверного оборудования и вытекающие из этого сокращение энергопотребления, тепловыделения, занимаемого места в стойках, в сочетании с повышением доступности, гибкости и управляемости инфраструктуры – все это преимущества, предоставляемые современными технологиями виртуализации. В этой статье мы поговорим об аспектах и нюансах применения платформ виртуализации на примере одной из них – VMWare.
Подходы к виртуализации вычислительных ресурсов
Что же такое виртуализация вычислительных ресурсов? По определению из свободной энциклопедии Wikipedia – это «процесс представления набора вычислительных ресурсов или их логического объединения, который дает какие-либо преимущества перед оригинальной конфигурацией. Это новый виртуальный взгляд на ресурсы, не ограниченный реализацией, географическим положением или физической конфигурацией составных частей».
Рис 2. Основные подходы к виртуализации вычислительных ресурсов.
Таким образом, виртуализация позволяет абстрагироваться от аппаратных ресурсов и работать с ними как с ресурсами логическими, разделяя, объединяя и перераспределяя их по своему усмотрению. Существует несколько походов к виртуализации вычислительных ресурсов, наиболее распространены из них следующие четыре (см. рис. 2 ).
Аппаратные разделы
Аппаратные разделы обеспечивают полную изоляцию и надежную защиту раздела от аппаратных и программных сбоев в соседних разделах. Таким образом, аппаратные разделы обеспечивают возможность выполнения нескольких независимых копий разных операционных систем и предоставляют возможность перераспределения ресурсов между разделами (при этом требуется перезагрузка только реконфигурируемых разделов, остальные разделы продолжают работать). Применение данной методики не влечет возникновения накладных расходов на виртуализацию, неизбежных при использовании других методов, и позволяет эффективно использовать вычислительные ресурсы hi-end серверов. Слабой стороной этой технологии является недостаточная гранулярность разделения ресурсов: как правило, минимальной единицей ресурсов для аппаратных разделов является «ячейка» (cell), содержащая один или несколько процессоров, память и платы ввода/вывода.
Примеры технологий аппаратных разделов: nPAR, Dynamic System Domains.
Полная (нативная) виртуализация
В случае применения этого метода часть аппаратного обеспечения, достаточная для изолированного запуска виртуальной машины (ВМ), виртуализуется. Так как виртуализируется не все «железо», такой подход позволяет запускать только операционные системы, разработанные для той же архитектуры, что и у физического сервера (хоста). Этот вид виртуализации позволяет существенно увеличить быстродействие гостевых систем по сравнению с полной эмуляцией (в которой виртуализируются все аппаратные ресурсы) и, пожалуй, наиболее широко используется в настоящее время. В основе данного метода лежит специальная «прослойка» между гостевой операционной системой и оборудованием – так называемый «гипервизор» или «монитор виртуальных машин». Гипервизор обеспечивает возможность обращения гостевой операционной системы к ресурсам аппаратного обеспечения. Данный метод обеспечивает хорошую производительность и низкие накладные расходы на виртуализацию. Недостатком полной виртуализации является зависимость виртуальных машин от архитектуры аппаратной платформы, однако, влияние этого ограничения невелико.
Примеры продуктов для нативной виртуализации: VMware ESX Server, Virtual PC, VirtualBox, Parallels Desktop и другие.
Паравиртуализация
В отличие от полной виртуализации, гипервизор паравиртуализации не скрывает себя от гостевых операционных систем. Но в этом случае они должны быть подготовлены к работе с этой системой. В результате, применение паравиртуализации требует модификации кода гостевой ОС на уровне ядра, что позволяет ей общаться с гипервизором на более высоком уровне, обеспечивая более высокое быстродействие.
Гипервизор предоставляет гостевой ОС специальный программный интерфейс (API), исключающий необходимость прямого обращения к таким ресурсам, как, например, таблицы страниц памяти.
При применении паравиртуализации нет необходимости эмулировать аппаратное обеспечение, более того, гостевая ОС и гипервизор используют общий набор драйверов, что выгодно отличает эту технологию от эмуляции устройств, когда гостевая ОС и гипервизор используют различные драйверы. До недавних пор основным недостатком паравиртуализации являлась необходимость модификации кода ОС, однако, с появлением аппаратной поддержки виртуализации, такой как Intel VT и AMD-V, стало возможным выполнение любых ОС без модификации ядра. Снятие ограничений по типу выполняемых ОС
в сочетании с высокой производительностью и низкими накладными расходами позволяет говорить о хороших перспективах этого метода виртуализации.
Примеры платформ паравиртуализации: XenSource, Virtual Iron, Microsoft Hyper-V, VMware ESX Server*.
Виртуализация уровня операционной системы
Виртуализация ресурсов на уровне ОС обеспечивает разделение одного физического сервера на несколько защищенных виртуализированных частей (контейнеров), каждая из которых представляется для владельца как один сервер. Виртуальная машина представляет собой окружение для приложений, запускаемых изолированно. При этом виртуальные контейнеры, работающие на уровне ядра ОС, крайне мало теряют в быстродействии по сравнению с производительностью «реального» сервера, что позволяет запускать в рамках одного физического хоста десятки и сотни виртуальных контейнеров. Однако существуют определенные ограничения по запуску виртуальных машин с разными версиями ядра ОС. Вышеперечисленные преимущества делают виртуализацию уровня операционной системы наиболее применимой при оказании хостинг-услуг, услуг SaaS и т.д., когда в рамках одного сервера необходимо организовать множество однотипных изолированных друг от друга виртуальных машин.
Примеры виртуализации уровня ОС: Solaris Containers, LPAR, Virtuozzo, OpenVZ.
Функциональные возможности платформы виртуализации
И аппаратные разделы, и виртуализация уровня ОС требуют как минимум по отдельной статье для всестороннего своего освещения. Поэтому пока оставим их в стороне и попробуем разобраться с наиболее известными платформами, использующими методы нативной виртуализации и паравиртуализации. Для того, чтобы сравнить эти платформы и поближе познакомиться с их возможностями, перечислим функциональные возможности, которые ожидает получить в результате внедрения виртуализации заказчик.
Гипервизор
Гипервизор – основа динамической виртуализированной ИТ-инфраструктуры. Гипервизор – служебное программное обеспечение, реализующее уровень виртуализации и разделяющее системные ресурсы (процессоры, память, платы вводавывода) на несколько виртуальных машин. Современный гипервизор должен отвечать следующим требованиям: устанавливаться на «голое железо», обеспечивать минимальный уровень накладных расходов (overhead) на виртуализацию, уметь работать с многоядерными многопроцессорными системами.
Обеспечение высокой доступности (HA)
Одна из важнейших задач виртуализации – обеспечение высокой доступности информационных сервисов, работающих на виртуальных машинах. Данный функционал в случае аппаратного или программного сбоя на сервере обеспечивает перезапуск затронутой сбоем виртуальной машины на любом сервере, располагающем достаточным количеством ресурсов. Применение такого подхода не требует дорогостоящего дублирования ресурсов и не зависит от конфигурации оборудования, версий операционной системы и т.д.
«Живая» миграция ВМ
«Живая» миграция позволяет перемещать работающие виртуальные машины с одного физического сервера на другой, обеспечивая тем самым возможность обслуживания оборудования без прерывания работы информационных сервисов.
«Живая» миграция образов ВМ
Обеспечивает «горячий» перенос образов виртуальных машин как между массивами, так и между логическими разделами в пределах одного хранилища. Такая возможность позволяет выполнять профилактические работы с СХД, выполнять миграцию, обновление и вывод из эксплуатации массивов без прерывания работы виртуальных машин.
Интеллектуальное распределение ресурсов
Интеллектуальные функции переноса виртуальных машин динамически распределяют и балансируют нагрузку среди набора аппаратных средств, объединенных в единый логический пул ресурсов. Данный инструмент отслеживает нагрузку в виртуализированной инфраструктуре и оперативно перераспределяет ресурсы в соответствии с бизнес-приоритетами для максимального эффективного их использования. Дополнительным преимуществом этого функционала можно назвать возможность высвобождения и выключения некоторых серверов в часы минимальной загрузки с целью экономии электроэнергии.
Централизованные инструменты управления
Централизованные инструменты управления обеспечивают централизованное управление виртуализированной средой, автоматизацию процессов и эффективную оптимизацию ресурсов. Эти возможности обеспечивают беспрецедентный уровень простоты эксплуатации, эффективность и надежность работы ИТ-инфраструктуры. Дополнительным плюсом является наличие открытых программных интерфейсов, обеспечивающих интеграцию с продуктами для управления инфраструктурой других производителей (HP OpenView, IBM Tivoli), а также разработку собственных специализированных решений.
Централизованные инструменты обновления
В масштабных виртуализированных средах интегрированные инструменты обновления просто незаменимы. Они обеспечивают централизованное управление процедурами обновления программного обеспечения как на физических серверах, так и на виртуальных машинах, обеспечивая тем самым безопасность и стабильность работы систем.
Интегрированный фреймворк для резервного копирования
Резервное копирование виртуальных машин связано с рядом трудностей, о которых мы поговорим ниже в соответствующем разделе. Как следствие, возникает необходимость в интегрированном в ПО виртуализации фреймворке для резервного копирования, обеспечивающим эффективное резервное копирование содержимого виртуальных машин и сокращение нагрузки на хост-систему.
Табл. 1. Сводная таблица платформ виртуализации.
Примечания к таблице 1:
- Наивысшую производительность XenServer показывает в режиме паравиртуализации для гостевых ОС, портированных под Xen. Для непортированых ОС пользователям потребуется оборудование с поддержкой аппаратной виртуализации на уровне процессора (Intel® VT or AMDV™), при этом уровень производительности будет ниже.
- Ожидается Live Migration в версии HyperV 2.
- Стоимость лицензии не включает ПО управления и других дополнительных пакетов.
Теперь для того, чтобы сравнить различные платформы между собой, сведем их характеристики и функциональные возможности в одну таблицу (см. табл. 1 ).
Почему VMware?
Почему при таком разнообразии средств и подходов к виртуализации вычислительных ресурсов мы выбрали в качестве темы номера именно VMware? Как видно из таблицы 1, «топовый» пакет от VMware – Virtual Infrastructure Enterprise значительно опережает своего ближайшего преследователя – ПО XenServer Platinum по функциональности, при этом лишь незначительно проигрывая в плане стоимости. Virtual Infrastructure Enterprise в полной мере поддерживает весь перечисленный выше функционал. Кроме того, ПО от VMWare поддерживает работу как по методу полной (нативной) виртуализации, так и по методу паравиртуализации, что обеспечивает максимальную гибкость решения.
А что же с производительностью? Насколько велики потери по сравнению с «реальным» железом и продуктами конкурентов?
График на рис. 3 демонстрирует падение производительности процессора во всех тестах. Также очевидно отставание Xen Server по производительности: величина накладных расходов на виртуализацию достигает для Xen 40%, а для VMWare – всего 20%. Справедливости ради стоит отметить, что в качестве гостевой операционной системы в данном тесте выступал Windows 2003 Server, не поддерживающий паравиртуализацию. Следовательно, задачи по виртуализации полностью легли на плечи процессора с аппаратной поддержкой виртуализации (в данном случае это технология Intel VT). В случае использования в качестве гостевой ОС FreeBSD, OpenSolaris или другой ОС, поддерживающей паравиртуализацию, выигрыш в производительности был бы на стороне Xen.
Таким образом, мы видим, что платформа от VMware – отличный выбор при необходимости создания гетерогенной виртуальной инфраструктуры, включающей в себя разные типы ОС и приложений. Это подтверждают и многие эксперты, по мнению которых на сегодняшний день платформа VMware является наиболее зрелой и полнофункциональной среди конкурентов, работающих на рынке виртуализации x86-систем. Более того, решения VMware сейчас переживают пик интереса и популярности среди ИТ-специалистов, а само имя «VMware» стало практически синонимом термина «виртуализация».
Некоторые факты о VMware:
Основанная в 1998 г. компания VMware является одним из пионеров в области технологий виртуализации и является безусловным лидером рынка виртуализации серверов стандартной архитектуры. Компания VMWare располагает обширным продуктовым портфелем, включающим в себя
не только собственно ПО виртуализации (т.н. «hypervizor»), но и целый комплекс программных средств, входящих в пакет VMware Infrastructure 3 и обеспечивающих эффективность, гибкость и надежность функционирования центра обработки данных.
Рис. 3. Сравнение производительности CPU по отношению к «реальному» процессору (источник: Performance Comparison of Hypervisors . VMware, Inc.).
Сегодня VMWare это (по данным VMware Inc.):
- надежные решения, используемые в информационных системах более чем 20 000 корпоративных пользователей;
- безусловный лидер, занимающий более 80% рынка виртуализации x86-систем;
- надежный поставщик решений по виртуализации, которого выбрали 96% компаний из списка Fortune500;
- самый полный продуктовый портфель: виртуализация ресурсов, решения обеспечения высокой доступности и катастрофоустойчивости, решения для балансировки нагрузки и управления виртуальной инфраструктурой и т.д.
Быть или не быть виртуализации?
Несмотря на заверения маркетологов компаний-разработчиков средств виртуализации, а также пропаганду ее адептов, виртуализация – далеко не панацея. Оборотной стороной медали является понижение быстродействия виртуальной операционной системы, вызванное дополнительными затратами на виртуализацию (overhead). Таким образом, при неправильном применении виртуализации вместо повышения эффективности и надежности можно получить серьезную деградацию производительности приложений.
В каких случаях стоит с особой тщательностью проанализировать возможность и целесообразность внедрения виртуализации:
- если приложение требует больше 16Гб оперативной памяти;
- если приложение использует больше 4 процессоров (или процессорных ядер в многоядерных процессорах);
- если приложение загружает процессор, память, дисковую или сетевую подсистемы в среднем на 50-60% и более (с учетом накладных расходов, виртуализовав такое предложение мы получим среднюю загрузку 70-80%);
- если приложение требует специализированного аппаратного обеспечения (аппаратные криптографические устройства, карты с 3-в акселерацией, USB-устройства и т.п.).
Табл. 2. Приложения – кандидаты на перенос в виртуализированную среду.
Рис. 4 . Пример совмещения нагрузок на основе анализа их распределения во времени.
В остальных случаях, приступая к проектированию виртуальной инфраструктуры, необходимо помнить о следующих моментах:
- приложения, интенсивно использующие процессорные ресурсы, ввод/вывод или активно работающие с сетью будут испытывать проблемы с производительностью, т.к. при работе в виртуализированном окружении затраты этих ресурсов увеличиваются в среднем на 30%;
- обслуживание одной виртуальной ОС отнимает около 5% ресурсов от одного логического процессора;
- работа ядра VMware (Vmkernel) и сервисной консоли требует от 300 до 800 Mb RAM.
Таким образом, идеальные кандидаты на виртуализацию – сервера, средний уровень загрузки которых по процессорным ресурсам, памяти и вводу/выводу не превышает 10-20%.
К счастью (с точки зрения продавцов решений по виртуализации), таких систем в обычной ИТ-инфраструктуре достаточно много.
Таблица 2 , демонстрирует целесообразность переноса в виртуальную среду серверов тех или иных приложений.
Грамотное внедрение виртуализации сопряжено с рядом трудностей, выражающихся в значительных накладных расходах ресурсов, неэффективности и даже невозможности применения виртуализации для некоторых видов нагрузок. Таким образом, аудит существующей инфраструктуры и планирование инфраструктуры виртуализированной являются наиболее важными и ответственными этапами внедрения, от которых зависит дальнейшая работа информационных сервисов. Значительно облегчить поставленную задачу позволяет программный продукт VMware Capacity Planner. Данное ПО позволяет производить инвентаризацию и сбор показателей утилизации серверов Windows, Linux, Unix, Solaris без установки специализированных агентов. Утилита доступна партнерам VMware после прохождения тренинга по этому продукту. В зависимости от характера нагрузки, сбор данных может продолжаться от 7 дней до 1-го месяца. При наличии приложений, цикл изменения нагрузки которых более одной недели (например, подготовка месячной или квартальной отчетности), крайне желательно получить показатели утилизации в момент наиболее интенсивной загрузки этих систем.
Стоит отметить, что помимо VMware Capacity Planner существуют подобные программные продукты и от сторонних производителей, таких как IBM, HP, а также ПО Power Recon от Plate Spin, чья триал-версия с ограничением на 100 серверов доступна для скачивания бесплатно.
Анализ нагрузки и ее изменения во времени позволяет не только определить наиболее подходящих кандидатов на перенос в виртуализированную среду, но и подобрать такое сочетание нагрузок виртуальных машин, при котором аппаратные ресурсы хоста будут использоваться максимально эффективно. График на рис. 4 демонстрирует возможность размещения в рамках одного ESX-серевра четырех видов нагрузок, пики которых приходятся на разное время суток (пик нагрузки серверов Exchange и CRM приходится на рабочие часы, пик нагрузки резервного копирования и аналитических систем – на ночь).
Инфраструктурные решения и синергетический эффект
Итак, мы определились с выбором платформы виртуализации, провели аудит, выявили достойных кандидатов на перенос в виртуализированную среду. Теперь нужно позаботиться о комплексе инфраструктурных решений, которые не только обеспечат бесперебойную работу виртуализированной среды, но и будут усиливать эффект от внедрения виртуализации.
Комплекс инфраструктурных решений включает в себя:
- вычислительную платформу (чаще всего на базе серверов-лезвий);
- отказоустойчивую сеть хранения данных (SAN);
- дисковые массивы для хранения данных виртуальных машин и работающих на них приложений.
Вычислительная платформа
В качестве серверной платформы для внедрения решений по виртуализации рекомендуется использовать блейд-серверы на базе процессоров Intel ® Xeon ® и AMD ® Opteron.
Выбор в пользу серверов-лезвий обусловлен тем фактом, что они призваны решать те же задачи, что и виртуализация: повышение эффективности и надежности, снижение энергопотребления, сокращение совокупной стоимости владения.
Преимущества блейд-систем:
- обеспечивая беспрецедентно высокую плотность размещения вычислительных ресурсов, блейды позволяют экономить дорогостоящее пространство в дата-центре;
- блейд-системы используют меньшее число источников питания и вентиляторов, а также обладают интеллектуальными средствами управления энергопотреблением. В результате, благодаря применению блейд-систем возможно сокращение энергопотребления более чем на 30 % по сравнению со стоечными серверами аналогичной конфигурации;
- с целью повышения надежности в традиционных стоечных серверах дублируются компоненты (блоки питания, сетевые интерфейсы и т.д.) каждого сервера. В случае блейд-решения возможно резервирование по схеме N+1, что более экономично
по сравнению с полным дублированием.
Таким образом, построение виртуализированных вычислительных комплексов на базе блейд-серверов позволяет добиться максимальной эффективности решения (см. рис. 5 ) благодаря возникающему синергетическому эффекту. В том случае, если в ИТ-инфраструктуре используются SPARCSolaris системы, особо эффективно применение блейд-решений от Sun Microsystems, позволяющих комбинировать в рамках одного шасси лезвия на платформе x86 и на платформе UltraSPARC. Такой подход позволяет усилить эффект консолидации за счет применения логических доменов и контейнеров Solaris.
Рис. 5. Соотношение занимаемого места в стойке, энергопотребления и тепловыделения для виртуализированных и невиртуализированных решений на базе обычных серверов и серверов лезвий. Оценки специалистов «Инфосистемы Джет».
Отдельного внимания заслуживает вопрос обеспечения отказоустойчивости в среде VMWare. Пакет VMware Infrastructure 3 включает в себя (в редакции Standard и выше) приложение VMware HA, обеспечивающее бесперебойную работу виртуальных машин за счет прозрачной миграции виртуальных машин со сбойного ESX-сервера (хоста) на работоспособный. Однако в данном решении акцент делается на защите от аппаратных сбоев: перенос виртуальных машин инициируется лишь в случае отказа ESX-сервера и не защищает от проблем с конкретными виртуальными машинами иили работающими на них приложениями. Также не всегда могут быть отслежены проблемы с сетевыми интерфейсами, системами передачи и хранения данных и т.д.
Кроме того, узким местом в HA-решении от VMware являются VMware License Server и VMware VirtualCenter Server. Эти служебные серверы (зачастую они разворачиваются на одном физическом сервере) под управлением ОС Windows размещаются вне кластера VMware HA и, следовательно, уязвимы. При этом их значение достаточно велико: без корректно работающего VirtualCenter невозможны какие-либо изменения в конфигурации виртуализированной инфраструктуры, а в случае отсутствия VMware License Server работоспособность кластера возможна лишь в течение ограниченного времени (14 дней). Именно поэтому VMware рекомендует резервировать эти служебные сервера при помощи того или иного кластерного решения.
В качестве решения, удачно дополняющего возможности Virtual Infrastructure, достаточно широко применяется кластерное программное обеспечение Veritas Cluster Server for VMware ESX от компании Veritas (Symantec). Данное ПО предназначено для работы в виртуализированной среде и позволяет объединять виртуальные машины в HA-кластер, устанавливать агенты для исполняемых внутри ВМ приложений и т.д. Возможно объединение в кластер виртуальных машин, размещенных на одном или разных ESX-хостах, в т.ч. размещенных в удаленных друг от друга центрах обработки данных. Таким образом, используя Veritas Cluster Server for VMware ESX, заказчики могут пользоваться всеми преимуществами виртуализации и при этом не идти на компромиссы в плане надежности и доступности решения. Veritas Cluster Server for VMware ESX управляется из консоли Cluster Management Console, что обеспечивает централизованное управление как «виртуальными», так и физическими кластерами. Кроме того, специальный компонент Veritas Virtualization Manager автоматизирует обнаружение ВМ и помещение их в сервисные группы для создания высокодоступных кластеров. Veritas Cluster Server for VMware ESX может лицензироваться как по количеству виртуальных машин, так и по количеству процессоров (сокетов) ESX-сервера. Первый подход эффективен при небольшом количестве ВМ, нуждающихся в обеспечении высокой доступности, а лицензирование по количеству процессоров позволяет существенно сэкономить при большом количестве ВМ.
SAN и система хранения даных
Несмотря на то, что VMware ESX Server работает с множеством различных устройств хранения (встроенные диски, SAN, NAS, iSCSI-устройства), именно SAN является оптимальной средой хранения данных в виртуализированной среде. Это обуславливается тем, что для работы с хранилищами NAS и iSCSI требуются значительные процессорные ресурсы, а применение встроенных дисков не позволяет реализовать механизмы обеспечения высокой доступности. В свою очередь, возможности SAN прекрасно дополняют «портативность» виртуальных машин, достигаемую за счет инкапсуляции ОС и прикладного ПО, благодаря которой возможно быстро переносить работающую ВМ с одного физического сервера на другой, обеспечивая тем самым высокую доступность приложений и сервисов, автоматическое перераспределение нагрузки, повышение эффективности использования ресурсов.
Таким образом, использование SAN в качестве среды хранения данных виртуальных машин позволяет:
- хранить данные на отказоустойчивых дисковых массивах и использовать множественные пути доступа, исключающих наличие единой точки отказа;
- использовать функции VMware VMotion и VMware High Availability, сводящих к минимуму время плановых и внеплановых перерывов предоставления сервисов;
- использовать функции VMware DRS для балансировки нагрузки;
- максимально эффективно использовать дисковые ресурсы массивов, особенно при использовании Thin Provisioning;
- обеспечивать отличную масштабируемость и защиту инвестиций.
Выбирая систему хранения для виртуализированной среды, стоит обратить внимание на поддержку массивом иерархической модели хранения (Hierarchical Storage Management, HSM). Поддержка HSM позволит разносить разные .vmdk файлы по разным уровням хранения в соответствии с требованиями к производительности и надежности, оптимизируя тем самым стоимость хранения данных.
С учетом того, что рост объема образа виртуальной машины зачастую трудно спрогнозировать, особое значение приобретает использование «интеллектуального снабжения» – Thin Provisioning. Эта технология позволяет администратору выделять каждой виртуальной машине значительный объем дискового пространства, легко покрывающий как нынешние, так и будущие ее потребности. При этом благодаря Thin Provisioning реально выделяется лишь небольшое количество ресурсов, четко соответствующее потребностям в настоящий момент времени. Так, например, для создания домашних директорий размером в 100GB для 100 виртуальных машин администратор может использовать лишь 2Tb дискового пространства (а не 10 Tb) с последующим выделением ресурсов по мере надобности в автоматическом или ручном режиме. В общем случае внедрение Thin Provisioning повышает эффективность использования дисковых ресурсов с обычных 30-50% до 80-90%, что отлично сочетается с основной целью виртуализации – достижением максимальной эффективности использования существующих ресурсов.
Также значительного синергетического эффекта можно ожидать от применения технологий дедупликации. Однако если в архивных решениях и системах резервного копирования дедупликация используется достаточно активно (см. «VTL – мифы и реальность» Джет Инфо №22008»), то дедупликация продуктивных данных пока распространена крайне незначительно. Тем не менее, в виртуализированной среде VMware дедупликация была бы очень кстати, т.к. образы виртуальных машин имеют, как правило, большой процент идентичных данных. Компания NetApp заявляет о возможности дедупликации продуктивных данных в своих системах хранения V-Series и обещает сокращение требуемого для хранения данных виртуальных машин дискового пространства на 50% и более (и даже готова гарантировать это, пусть и с некоторыми оговорками). В данном решении процесс дедупликации запускается в фоновом режиме по расписанию или вручную. Дедупликация не требует значительных ресурсов массива (0-15%), но для сильно загруженных систем (с CPU utilization >50%) деградация производительности может оказаться ощутимой. Более того, т.к. процесс дедупликации запускается с низким приоритетом, для сильно нагруженных систем ресурсов для дедупликации может просто не остаться.
Особенности проектирования сетей и систем хранения для среды VMware
Проектируя SAN-сеть для виртуализированной инфраструктуры необходимо придерживаться тех же правил, что и при построении SAN для традиционных решений. Однако следует помнить, что запуск на одном физическом хосте нескольких виртуальных машин, особенно с интенсивным дисковым вводомвыводом, серьезно увеличивает загрузку FC-интерфейса. Следовательно, необходимо обеспечивать достаточное количество HBA на ESX-сервере. График на рис. 6 иллюстрирует увеличение времени отклика при росте количества виртуальных машин, делящих между собой один HBA.
По той же самой причине – сильной загруженности FC-интерфейсов, следует уделять особое внимание и архитектуре SAN. Следует помнить, что многие FC-коммутаторы (особенно от Cisco) не способны обеспечить заявленную пропускную способность портов из-за переподписки (oversubscription). В традиционных решениях это не играет большой роли, т.к. в большинстве случаев сервер не загружает 4-гигабитный интерфейс и на половину. В случае же фермы ESX-серверов, генерирующих значительную нагрузку на дисковую подсистему, FC-коммутатор может стать узким местом.
Рис. 6. График увеличения времени отклика при увеличении количества ВМ, делящих между собой один HBA. Источник Scalable Storage Performance, VMware Inc.
Рис. 7. График увеличения времени отклика при увеличении количества ESX-хостов, делящих между собой один LUN. Источник Scalable Storage Performance, VMware Inc.
Безусловно, для обеспечения отказоустойчивости решения необходимо проектировать SAN-сеть с множественными путями доступа. VMware Infrastructure обладает встроенными средствами мультипасинга, что делает ненужным приобретение дополнительного ПО. VMware предлагает выбор из двух видов мультипасинга – фиксированный «Fixed» и MRU (Most Recently Used). Первый из них отличается тем, что основной путь является приоритетным и, в случае падения основного пути, после его восстановления система автоматически возвращается к использованию приоритетного пути. В случае применения MRU, возврата не происходит и новый путь становится новым «Most Recently Used». В общем случае для массивов, контроллеры которых работают в режиме activeactive, рекомендуется использовать режим «Fixed» и назначать активные пути вручную, распределяя нагрузку между контроллерами. Для массивов же, контроллеры которых работают в режиме activepassive, лучше использовать «Most recently used» режим.
Для нормальной работы виртуализированной инфраструктуры также необходимо обеспечить достаточную производительность дисковой подсистемы. Как известно, любое SCSI-устройство имеет настраиваемый параметр, называемый глубиной очереди (LUN queue depth), который определяет, как много команд вводавывода может быть обращено к LUN в один момент времени. Если ESX-сервер генерирует больше команд, чем составляет глубина очереди LUN, очередь буферизуется в ядре ESX-сервера и тем самым вызывает рост задержек.
Глубина очереди определяется на LUN, а не на инициатора (HBA-адаптер), таким образом, две виртуальные машины, хранящие свои vmdk-файлы на разных LUN, могут генерировать столько команд, сколько готов принять LUN. Если же LUN один, то SCSI-команды суммируются. График на рис. 7 иллюстрирует рост задержек при увеличении числа ESX-хостов, делящих между собой один LUN.
Из всего вышесказанного вытекают следующие рекомендации:
- Минимизировать количество VMFS-разделов на LUN (лучше – один).
- Тяжело нагруженные виртуальные машины имеет смысл помещать на выделенные LUN.
- Не более 16 VMDK файлов (виртуальных дисков) на VMFS-раздел.
- Разрешать доступ к одному VMFS-разделу не более, чем 16 хостам.
Резервное копирование в среде VMware
Внедрение технологий виртуализации наряду со всеми своими преимуществами привносит ряд проблем с резервным копированием, решению которых будет посвящен этот раздел.
Простота развертывания виртуальных машин зачастую приводит к неконтролируемому росту их количества и, как следствие, увеличению потребления ресурсов, сложности администрирования и т.д. Одно из следствий этого процесса – стремительный рост объемов хранимых данных, которые нуждаются в резервном копировании. При организации резервного копирования (РК) в виртуализированной среде основная идея виртуализации, заключающаяся в эффективном использовании традиционно недозагруженных ресурсов, играет негативную роль. Как известно, операции резервного копирования создают значительную нагрузку на процессор и подсистему вводавывода. В традиционных, слабо загруженных системах это не является проблемой (см. рис. 8 ), и лишь для высоконагруженных систем является оправданным применение технологий Off-host Backup, снимающих нагрузку резервного копирования с продуктивных серверов.
Рис. 8. График распределения нагрузки на традиционный сервер в течение суток.
В свою очередь, обеспечив при помощи средств виртуализации загруженность серверного оборудования на уровне 60-70% и выше, мы не оставили ресурсов для РК (см. рис. 9 ). Таким образом, для резервного копирования в среде VMware технологии, аналогичные Off-host Backup, крайне необходимы.
В качестве решения этой проблемы VMware предлагает использовать ПО VMware Consolidated Backup (VCB), входящее в пакет Virtual Infrastructure, начиная с версии Foundation и выше. Применение VCB позволяет разгрузить ESX-сервер и локальную сеть за счет использования централизованного бэкап – прокси-сервера. VCB делает мгновенные копии (снэпшоты) файловой системы виртуальной машины и монтирует их на прокси-сервере. Установленный на прокси-сервере бекап-агент, осуществляет операции резервного копирования в одном из двух режимов – либо как образ ВМ целиком, либо как набор файлов и директорий, что делает возможным инкрементальное резервирование и восстановление файлов. VCB успешно работает со всеми наиболее распространенными инструментами резервного копирования от Computer Associates®, CommVault®, EMC®, HP®, Symantec®, Tivoli®, Vizioncore® и других.
Рис. 9. График распределения нагрузки в течение суток после внедрения виртуализации.
Из всех перечисленных выше средств резервного копирования и восстановления данных наиболее интересно предложение компании Symantec, выпустившей специальный релиз своего программного продукта NetBackup для средыVMware. В отличие от предложений конкурентов, NetBackup for VMware предлагает не два, а три варианта резервного копирования. Помимо взаимоисключающих вариантов полного копирования образа ВМ в виде образа и копирования отдельных файлов и папок, NetBackup for VMware обеспечивает быстрое резервирование виртуальной машины в виде образа с возможностью последующего гранулярного восстановления любых файлов. Таким образом, для обеспечения возможности как полного (например, в случае отказа оборудования), так и гранулярного (например, в случае непреднамеренного удаления данных) восстановления, достаточно всего одного «прохода» резервного копирования. Чтобы обеспечить такую возможность, полученный в результате резервного копирования образ ВМ индексируется медиа-сервером NetBackup для обеспечения возможности пофайлового восстановления.
Вторым важным преимуществом NetBackup является возможность дедупликации данных резервного копирования при помощи PureDisc. Существует два подхода к этому процессу: в первом из них клиент PureDisc устанавливается «внутри» каждой виртуальной машины и работает также, как на «реальном» сервере.
Второй подход использует опцию PureDisk Deduplication Option, интегрированную с VCB и NetBackup (6.5.2 и выше), и позволяет дедуплицировать данные инкрементального резервного копирования на уровне файлов и папок. К сожалению, на сегодняшний день при резервировании виртуальной машины в виде единого образа дедупликация не поддерживается, однако, производитель ведет работы в этом направлении.
Дополнительным преимуществом решения от Symantec является удобство администрирования и легкость восстановления данных. NetBackup for VMware взаимодействует с Virtual Center для автоматического обзора виртуализированной среды и отображения списка виртуальных машин в удобочитаемом виде. Такой поход гораздо удобнее поиска по IP или имени хоста и экономит много времени. Отдельно стоит упомянуть и вопрос лицензирования NetBackup for VMware. Компания Symantec не требует приобретения лицензии для каждой виртуальной машины. Лицензируется весь ESX-сервер, а также при необходимости выдаются лицензии для разных ОС и приложений. Таким образом, лицензия для 2, 5 или 20 ВМ (с одной версией ОС) будет стоить одинаково, что также является немаловажным плюсом решения.
Перспективы и тренды развития
Виртуализация рабочих мест
Виртуализация уверенно и методично укрепляет свои позиции на ИТ-рынке и проникает во все новые функциональные области. Все мы уже привыкли использовать RAID-группы и интеллектуальное распределение ресурсов (Thin Provisioning), что, по сути, тоже виртуализация. Вошла в повседневную практику виртуализация вычислительных ресурсов в тестовых средах, набирает обороты виртуализация продуктивных серверов приложений и баз данных. А как обстоят дела с рабочими местами пользователей? Ведь на их обслуживание и эксплуатацию приходится большая часть ИТ-бюджета!
Достаточно давно на рынке присутствуют терминальные решения MS Terminal Services, Citrix Presentation Server, Sun Ray и другие. Эти технологии в той или иной степени также подходят под определение виртуализации и также позволяют сократить количество оборудования (заменив рабочие станции на простые и надежные тонкие клиенты), упростить администрирование, улучшить безопасность и отказоустойчивость.
Компания VMware предлагает свое решение для виртуализации рабочих станций. Данное решение в конце 2008 года было серьезно переработано, получило новый функционал и стало носить имя VMware View 3. VMware View 3 позволяет эмулировать на ESX-серверах окружение рабочих станций, управлять настольными операционными системами, приложениями и пользователями независимо друг от друга и их местоположения. Как и в случае с виртуализацией серверов, VMware View позволяет ограничить рост парка оборудования, сократить энергопотребление и тепловыделение. Кроме того, VMware View позволяет упорядочить управление рабочими станциями и приложениями, а также повысить уровень защиты данных путем централизации.
VMware View является настоящим центром унифицированного доступа и может тесно интегрироваться с существующими решениями, доступными по RDP (терминальными серверами Windows, решениями Sun Ray, Blade-PC и т.д.), обеспечивая доступ к ним через единый интерфейс. В качестве клиентского устройства может выступать (совместимый) тонкий клиент или обычный PC под управлением Windows, Linux или Mac.
Базируясь на платформе VMware Infrastructure 3, View 3 воплощает в себе все ее преимущества: обеспечение высокой доступности, динамическое перераспределение ресурсов, эффективное резервное копирование и т.д. Кроме того, есть и дополнительные функции, особенно актуальные для виртуализиции рабочих станций.
Прежде всего, это новый компонент под названием View Composer, использующий технологию снэпшотов для создания образов виртуальных машин. Теперь десятки и даже сотни однотипных виртуальных машин (например, рабочих станций Windows XP с заданным набором приложений) могут использовать всего один, так называемый «золотой» образ. При этом для каждой ВМ хранятся лишь пользовательские и измененные данные. Таким образом, View Composer обеспечивает кардинальное (десятки и более раз) сокращение требуемой дисковой емкости для хранения данных виртуальных машин. Справедливости ради стоит отметить, что столь интенсивное использование одного образа неизбежно ведет к существенному росту нагрузки на дисковую подсистему, что требует особого внимания при проектировании виртуальной инфраструктуры (необходимость использования высокопроизводительных дисковых конфигураций может перекрыть выигрыш от сокращения требуемого дискового пространства).
Доставка приложений
Возможность абстрагироваться от аппаратного обеспечения, лежащая в основе идеи виртуализации, дала начало новому подходу к доставке и распространению приложений – виртуальным устройствам (ВУ) или virtual appliance. По сути, virtual appliance – это профессионально собранные и сконфигурированные виртуальные устройства, состоящие из ОС и приложения (или комплекса приложений). Это может быть интеллектуальный маршрутизатор, сервер авторизации иили шифрования, гейткипер IP-телефонии и любое другое приложение, которое может работать в виртуализированной среде.
Виртуальное устройство быстро разворачивается на любом оборудовании поверх гипервизора ESX, требует минимального конфигурирования, обеспечивает максимальную производительность и безопасность, т.к. четко заточено под задачи работающего на ВУ приложения. Такое решение исключает проблемы с ОС и аппаратным обеспечением (единственное требование – корректная работа ESX), а также снимает проблемы обновления ОС и самого приложения – за этим следит разработчик ВУ, обновляя ее по мере необходимости. Virtual Appliance удобны как разработчикам ПО, так и системным интеграторам и конечным заказчикам, т. к. существенно упрощают внедрение и поддержку.
Компания VMWare активно поддерживает новую тенденцию, т. к. видит в ней еще одну нишу для реализации своих продуктов. На сегодняшний день на сайте компании доступно более 1000 виртуальных устройств различного назначения. Пока большинство из них – бесплатные сборки от членов сообщества, однако, появляется все больше решений от именитых производителей. Так, например, FalconStor предлагает в виде virtual appliance свое VTL-решение, а компания TrendMicro сделала преднастроенное виртуальное устройство для InterScan Web Security.
По мнению многих аналитиков virtual appliance – весьма перспективный инструмент для распространения, внедрения и поддержки корпоративных приложений, однако, пока его развитие ограничивают вопросы лицензирования ОС, входящей в состав виртуального устройства.
Выводы
Повышение эффективности ИТ-инфраструктуры давно является одной из наиболее приоритетных задач. Нынешний кризис лишь подлил масла в огонь и ИТ-руководители многих компаний все активнее ищут пути сокращения расходов на ИТ. Виртуализация вычислительных (и не только вычислительных) ресурсов – мощный инструмент, который при грамотном его использовании позволяет достичь отличных результатов. Именно поэтому решения от компании VMware, которым посвящена большая часть данной статьи, все чаще находят применение в ИТ-инфраструктурах компаний из самых разных секторов экономики.
Тем не менее, виртуализация – не панацея и ее внедрение оправдано далеко не всегда. Внедрению виртуализации должен предшествовать этап комплексного анализа ИТ-инфраструктуры и архитектуры приложений, изучение возможностей и оценка эффекта от реализации решения. Как и любой другой сложный технологический проект, развертывание технологий виртуализации можно реализовать правильно и неправильно. В первом случае у компании появляется возможность сократить издержки и сделать работу своей ИТ-инфраструктуры боле эффективной, во втором – результатом может стать увеличение сложности инфраструктуры, деградация производительности приложений и т.д.
Закончить наше повествование хотелось бы словами Энди Мана (Andi Mann), директора по исследованиям Enterprise Management Associates: «Виртуализация – это технология, которая изменит сам способ работы организаций с их ИТ-инфраструктурами. Во всех применениях: от хранилищ до систем, приложений, настольных компьютеров, виртуализация способна сделать бизнес более гибким, эффективным, надежным и продуктивным…».