Именно эта ситуация натолкнула специалистов на мысль, что гораздо удобнее использовать один сервер для нескольких приложений. Правда, такое решение таит в себе множество проблем, связанных с взаимодействием между собой различных приложений, особенно если они относятся к разным операционным системам, которые не могут сосуществовать в рамках одного физического сервера. Решать такие проблемы как раз и призвана виртуализация. Она помогает гибко распределить ресурсы между приложениями, причем каждому из них доступен только определенный для него ресурс, благодаря чему создается иллюзия ранее используемого подхода – одно приложение – один сервер.
Безусловно, функциональность виртуализации не ограничивается лишь этими возможностями, эта технология используется в системах хранения данных, в решениях уровня ЦОД , а также в тестировании новых приложений. Такой широкий функционал не остается без внимания ведущих производителей ПО, среди которых и корпорация Sun, решениям которой в области виртуализации и посвящена данная статья.
В 2008 году компания Sun Microsystems представила свою концепцию внедрения виртуализации, основанную на комбинировании стандартных технологий и собственных решений, включающую в себя все уровни ИТ-инфраструктуры современного предприятия: от центра обработки данных до рабочих мест клиента.
Виртуализация серверных ресурсов
Рис. 1. Sun SPARC Enterprise M9000
Традиционно начать разговор хотелось бы с виртуализации вычислительных ресурсов. Если говорить о виртуализации серверных ресурсов, то в этой области Sun в начале нынешнего десятилетия реализовала поддержку динамических доменов в своих Unix-серверах среднего класса. В настоящее время идет постоянное совершенствование этой технологии (флагманская модель SPARC Enterprise M9000 поддерживает до 24 динамических доменов, которые можно создавать внутри одной системной платы на уровне отдельных процессоров (см. рис.1 )). Стоит отметить, что в серверах начального уровня с одним-четырьмя процессорами (например, младшие модели SunFire на базе процессоров UltraSPARC T1 и T2 и x86, у которых только одна системная плата) данная технология не может быть применена. Для таких систем наиболее часто используемым решением виртуализации остается применение виртуальных машин (ВМ), которые запускаются на сервере под управлением основной (хостовой) операционной системы, но сами эти ВМ задействуют «гостевые» ОС. При этом виртуальные машины считают, что работают в своей, а не в «гостевой» операционной системе, поскольку специальное программное обеспечение для виртуализации (гипервизор) эмулирует выполнение вызовов ОС к аппаратным ресурсам.
К таким решениям можно отнести ПО ESX Server компании VMware, созданное для серверов на базе процессоров x86 и предназначенное для консолидации приложений Windows и Linux. Нужно сказать, что существует ряд трудностей, связанных с использованием этой технологии. Например, виртуальные машины не обеспечивают максимальную надежность при консолидации, и если произойдет сбой в работе операционной системы хоста, то придется перезагружать все машины и их приложения. Хотя, конечно, ВМ дают больше гибкости в распределении физических ресурсов, чем динамические домены. Но все же виртуализация на базе решений VMware очень удобна для миграции на новые серверы устаревших Windows-приложений, несовместимых с современными версиями ОС от Microsoft, – для их запуска создается ВМ с той версией Windows, под которую они были написаны. И еще одним приятным обстоятельством является тот факт, что в последней версии ESX Server реализована возможность переноса виртуальных машин между физическими серверами в онлайновом режиме, применяемая для миграции приложений на новое серверное оборудование, без прерывания их работы.
Развитием технологии виртуальных машин Sun является паравиртуализация на основе гипервизора Xen, разработанного в рамках движения Open Source. В данном случае используются специальные модификации «гостевых» ОС, не требующие эмулирования обращения к аппаратным ресурсам сервера, что существенно уменьшает нагрузку на него. В планах компании обеспечение полной поддержки Xen для Solaris 10 в серии продуктов под названием xVM. Это решение позволит запускать виртуальные машины с Solaris, Windows и Linux. Предполагается, что семейство Sun xVM будет включать в себя сервер xVM Server, разработанный на базе гипервизора Xen. Сервер будет поддерживаться архитектурой x86, а также консолью управления физическими и виртуальными машинами xVM Ops Center.
Рис. 2. Solaris Resource Manager
К вариантам паравиртуализации также относятся логические домены LDoms, используемые в серверах на базе многоядерных процессоров UltraSPARC T1 (Niagara) и UltraSPARC T2 (Niagara 2) с технологией многопотоковости CoolThreads. Механизм LDoms основан на разбиении одного физического процессора на 32 или 64 (в случае UltraSPARC T2) логических процессора с помощью зашитого в микрокод гипервизора и технологии CoolThreads. Последние используют свою копию операционной системы (помимо Solaris они поддерживают Linux и FreeBSD Unix).
Виртуализация на уровне ОС с помощью механизма изолированных контейнеров – еще один вид технологий виртуализации, который Sun реализовала в 2005 г. в десятой версии Solaris.
При этом каждому приложению выделяется отдельный контейнер, а на сервере работает только одна копия ОС. Такое решение позволяет обходиться без эмуляции оборудования и практически не создает дополнительной нагрузки на ресурсы сервера и упрощает обновление ОС по сравнению с другими вариантами виртуализации. Сбой одного из приложений не приводит к нарушению работы остальных, однако, при аппаратных неполадках сервера будет нарушено функционирование всех контейнеров и их приложений. Для того, чтобы минимизировать риск возникновения подобных ситуаций, компания Sun разработала расширение Solaris Trusted Extension, которое используется для дополнительной изоляции контейнеров и их приложений. Суть этого решения в том, что при возрастании нагрузки на одно из приложений, его контейнер сразу же получает дополнительную процессорную мощность, если это предусмотрено политикой управления ресурсами.
Не так давно компания Sun реализовала возможность запуска в контейнерах ОС Solaris приложений Linux в немодифицированном виде. Это решение позволило на одном сервере Solaris консолидировать приложения разных ОС, а также задействовать стандартные средства Solaris для повышения производительности работы приложений Linux (например, инструменты для мониторинга и отладки DTrace).
К серверной виртуализации относятся и технологии на основе управления физическими ресурсами. Такие решения применяются в тех случаях, когда при объединении нескольких приложений на одном сервере необходимо не допустить возникновения конфликтов между ними, связанных с доступом к процессорной мощности, оперативной памяти и т. п. Это позволяет сделать разработанный компанией Sun пакет Solaris Resource Manager для Unix-серверов Sun. Он не только распределяет ресурсы между приложениями сервера, но и позволяет планировать их перераспределение в зависимости от времени суток. Правда, у этого типа виртуализации есть один недостаток – отсутствие возможностей для изоляции приложений. И в то же время такое решение позволяет обеспечить стабильную производительность консолидированных приложений.
Подводя итог обзору методов виртуализации серверных ресурсов, разработанных компанией Sun, отметим, что наибольшую надежность и безопасность работы приложений в консолидированной среде обеспечивают динамические домены, а гибкость распределения ресурсов между приложениями – Solaris Resource Manager (см. рис. 2 ). Таким образом, выбор того или иного варианта зависит от потребностей конкретного заказчика.
Виртуализация хранения данных
Затронем возможности виртуализации в области систем хранения данных. Такие технологии хранения, как файловые системы и логические тома, известны уже много лет, но в последнее время в связи с быстрым ростом объемов данных, роль виртуализации систем хранения существенно возросла.
Одним из наиболее важных стимулов для развития виртуализации в этой области стала потребность в многоуровневом хранении, при котором данные – с учетом их ценности для бизнеса – можно размещать на скоростных дисках Fibre Channel и Serial SCSI (SAS), более дешевых винчестерах SATA, на виртуальной ленточной библиотеке и, наконец, в архиве на магнитных лентах. Это позволяет оптимизировать расходы на покупку дисков, а также уменьшить энергопотребление за счет переноса редко используемых данных на ленту.
После приобретения компании StorageTek портфель технологий виртуализации хранения данных Sun включает в себя такие разработки для управления жизненным циклом информации, как Virtual Tape Library (VTL) и Virtual Storage Manager (VSM), способствующие ускорению и упрощению процесса переноса данных с основной системы хранения на вторичную и затем на ленту. Они также помогают уменьшить продолжительность «окна» резервного копирования за счет промежуточного хранения резервных копий на вторичной системе. Использование технологий виртуализации позволяет дисковым массивам эмулировать ленточные библиотеки для реализации схемы резервного копирования D2D или D2D2T, которая существенно ускоряет процедуры такого копирования и восстановления данных.
Рис. 3. StorageTek Virtual Storage Manager
Что касается построения единого пула хранения, то в этой области Sun предлагает массивы StorageTek 9985V/9900V и StorageTek Shared Virtual Array (см. рис. 3 ). Основной функцией SVA является синхронное зеркалирование и репликация данных между основной системой хранения и резервной, установленной на удаленной площадке для обеспечения доступности данных в случае крупных аварий или других нештатных ситуаций с основной системой. При этом виртуализация «примиряет» аппаратные различия резервной и основной систем и позволяет копировать данные между ними как между двумя логическими устройствами.
Виртуализация может быть осуществлена и с помощью массива старшего класса StorageTek 9985V/9900V, который помогает построить пул. Такая технология позволяет объединять системы хранения разных производителей, установленные в ЦОД, тем самым уменьшая объем незадействованной емкости, а также ощутимо облегчая работу системного администратора, так как при этом предоставляется возможность управлять ресурсами разных дисковых массивов с помощью всего одной консоли. Еще одним преимуществом подобной системы является тот факт, что при объединении в пул массивов начального класса с накопителями SATA, можно построить многоуровневую систему хранения, в которой для хранения наиболее часто запрашиваемых данных используются Fibre Channel основного массива, а для всего остального – SATA диски подключенных систем. Все это позволяет быстро возвращать старые данные на скоростные диски, если на них возрастет число запросов, миграция же данных по мере их устаревания будет происходить прозрачно для серверных приложений. Для гибкого выделения емкости для приложений при использовании технологии StorageTek компания предлагает ПО Dynamic Provisioning, что позволяет наиболее эффективно использовать дисковое пространство.
Виртуализация клиентских мест
Технологии виртуализации могут применяться и непосредственно на рабочих местах пользователей. Одна из областей применения – использование виртуальных машин для разработки и тестирования программного обеспечения. Данную возможность предоставляет Sun VirtualBox – ПО для виртуализации с открытым исходным кодом, бесплатно доступное для персонального использования. VirtualBox является крайне удобным инструментом для разработчиков, позволяющим создавать множество виртуальных машин, объединять их в сеть и развертывать в средах любых операционных систем.
Рис. 4. Sun Ray 270
Другое крайне перспективное направление решений по виртуализации на рабочих местах – это полная виртуализация «рабочего стола» пользователя (десктопа, программ и данных) и «отвязка» окружения пользователя от конкретного аппаратного устройства, которое установлено на рабочем месте. Например, решения тонких терминалов, которые позволяют, пройдя процедуру авторизации, получить доступ к ресурсам сервера с любого терминала в любом городе мира. Таким образом, пользователь не привязан к конкретному ПК. Данная технология фактически виртуализует рабочее место с помощью программного обеспечения тонкого клиента. Этот подход позволяет сократить расходы на клиентских рабочих местах, поскольку централизует их обслуживание.
К одному из наиболее известных продуктов такого класса относится терминал Sun Ray (см. рис. 4 ), работающий совместно с программным обеспечением Sun Ray Software (см. рис. 5 ). Управляющее ПО работает на серверах Solaris и Linux. При этом с терминалов Sun Ray возможна работа не только
в Unix-среде, но и доступ к рабочему столу Windows, в том числе и виртуализованному. Большим плюсом этого решения является тот факт, что для работы с Sun Ray можно использовать идентификационные смарт-карты, что значительно повышает безопасность доступа. Технологический подход, реализованный компанией «Sun», позволяет пользователю быть более мобильным, поскольку ему предоставлена возможность возобновлять работу на новом терминале с теми приложениями, которыми он был занят в предыдущий сеанс работы. Еще одной особенностью терминалов Sun Ray является отсутствие у них встроенного жесткого диска, операционной системы и пользовательских настроек. Все данные хранятся на стороне сервера, а терминал выполняет только отображение на мониторе пользовательского сеанса и ввод команд пользователя. Это не только обеспечивает мобильность пользователей и повышение безопасности данных, но и существенно снижает энергопотребление по сравнению с обычными ПК.
Рис. 5. Sun Ray Server Software
Для реализации функций тонкого терминала на обычных компьютерах с помощью стандартного Web-браузера и среды Java Runtime Enviroment корпорация Sun предлагает пакет программ Sun Secure Global Desktop, поддерживающий серверы как с процессорами SPARC, так и x86. Свое применение он находит у тех компаний, которые заинтересованы в использовании в качестве тонких терминалов имеющихся у них различных настольных и мобильных клиентских систем (продукт поддерживает ПК с Windows и Linux, рабочие станции Solaris, компьютеры Apple, а со стороны приложений – все основные варианты Windows, Unix, а также мэйнфреймы и даже AS/400).
Совместное использование технологии Sun Ray, Sun Secure Global Desktop и решений по виртуализации ОС позволяет реализовать концепцию VDI – Virtual Dekstop Infrastructure. Фактически в решении Sun VDI пользователь получает доступ к своей виртуализованной копии ОС с любого устройства: с тонкого клиента Sun Ray, с обычного офисного ПК, с ноутбука. При этом пользователь может находиться и во внутрикорпоративной сети, и вне ее – решение Sun VDI позволяет обеспечить безопасный доступ к виртуализованной копии ОС в том числе из внешних сетей.
Black Box – виртуализированный ЦОД
До появления решений мобильных ЦОД, например, при переезде на новое место компании приходилось тратить большое количество времени на подготовку нового помещения для оборудования, что приводило к длительному перерыву в работе бизнес-приложений, а это всегда неприятно сказывается на бизнесе в целом. К тому же оборудование нового помещения всегда очень затратно.
Рис. 6. Blackbox
Sun в своем проекте Blackbox применила подход, который меняет саму концепцию организации центра обработки данных. В основе этого решения заложена идея ЦОДа под ключ, все оборудование которого собрано в одном транспортном контейнере (cм. рис. 6 ). Это дает возможность не зависеть от конкретного помещения и при необходимости перевезти его на новую площадку и даже, если в офисном здании не хватает свободных площадей, установить прямо на улице. Все, что требуется для Blackbox – обеспечение подвода к контейнеру электричества, воды и канала связи с Интернетом. Стоит отметить, что такая технология позволяет быстро построить ЦОД с нуля, а также расширить вычислительные мощности корпоративного ЦОДа. Еще одним положительным моментом является тот факт, что все оборудование, установленное в контейнере, уже полностью сконфигурировано и готово к работе, поэтому заказчику не нужно тратить время и деньги на установку и настройку новых серверов и систем хранения. Blackbox очень мобилен, что дает возможность организовать временный ЦОД, например, для обработки результатов, полученных непосредственно в районе исследований.
Заключение
Разработки Sun в сфере виртуализации представлены на всех уровнях ИТ-инфраструктуры современного предприятия от серверов до рабочих мест клиентов. При этом в основе решений корпорации лежат как собственные разработки (например, динамические домены, LDoms, контейнеры Solaris, VTL и VSM), так и широко распространяемые технологии виртуальных машин VMware и Xen. Использование решений виртуализации помогает снизить расходы на обслуживание оборудования, а главное повысить эффективность его использования.
Хотелось бы отметить, что неэффективное применение виртуализации может привести к увеличению нагрузки на системных администраторов и необходимости приобретения более мощного оборудования, либо экономический эффект от виртуализации не оправдает затрат на ее внедрение. Однако надо помнить, что виртуализация – это всего лишь технология, а не бизнес-процесс, поэтому ее внедрение само по себе не гарантирует автоматического улучшения эффективности использования ресурсов ИТ-инфраструктуры компании и, как следствие, улучшения работы бизнеса.