За последние несколько лет концепция облачных вычислений и виртуализации набрала силу и стала популярной в сфере информационных технологий. Многие организации приступили к реализации этих новых технологий, стремясь снизить расходы за счет улучшенной виртуализации машин, меньшего времени на администрирование и снижения затрат на инфраструктуру. Облачные вычисления представляют собой среду, позволяющую пользователям использовать приложения в сети Интернет, например, для хранения и защиты данных при предоставлении ИТ-сервисов.
VCL – это концепция вычислительного облака, разработанная в Университете Северной Каролины (NCSU) в результате сотрудничества College of Engineering и IBM Virtual Computing Initiative с целью удовлетворения растущего набора требований к вычислениям и пользовательских требований. Данная система может предоставлять необходимые пользователю решения для разнообразных сервисных сред в любое время и в любом месте по требованию или предварительному заказу.
Архитектурные уровни вычислительного облака
Платформа вычислительного облака динамически предоставляет, конфигурирует и переконфигурирует серверы по требованию. Серверами в облаке могут быть физические или виртуальные машины. Более продвинутые "облака" обычно содержат и другие вычислительные ресурсы, например, сети хранения данных (SAN), сетевое оборудование, брандмауэры и другие устройства защиты. Как правило, сервисы, предлагаемые провайдерами облачных сервисов, можно подразделить на три основные категории:
- Инфраструктура как сервис.
- Платформа как сервис.
- Программное обеспечение как сервис.
На рисунке 1 эти категории сгруппированы и объяснены на примере VCL. Ссылки на более подробную информацию об облачных вычислениях приведены в разделе "Ресурсы".
Рисунок 1. Облачные сервисы VCL
1. Инфраструктура как сервис (IaaS)
IaaS – это предоставление инфраструктуры как сервиса. Услуга «инфраструктура как сервис» предлагает вычислительные возможности и базовую систему хранения данных в виде стандартизированных сервисов, предоставляемых по сети. Серверы, системы хранения данных, коммутаторы, маршрутизаторы и другие системы резервируются и предоставляются для обработки рабочих нагрузок. IaaS-облака – это очень экономичный способ предоставления таких ресурсов, как серверы, сетевые подключения, системы хранения данных, и связанных с ними инструментальных средств, необходимых для создания прикладной среды с нуля по требованию.
К преимуществам IaaS относятся: быстрое предоставление сервисов, возможность масштабирования и оплаты только тех ресурсов, которые используются. Новой или маленькой фирме трудно найти средства для капитальных вложений. Путем переноса инфраструктуры в облако можно получить масштабируемое решение, аналогичное тому, которое дает собственное оборудование и информационный центр (чего не могут предложить обычные провайдеры хостинга), при минимальных вложенных средствах.
VCL предоставляет различную инфраструктуру в едином центре. Она предоставляет университетам среду виртуализации платформ (без внутренней физической инфраструктуры). При ее использовании студентам не требуется создавать какую-то специфическую физическую инфраструктуру для назначенных им проектов. VCL предоставляет следующие инфраструктурные сервисы:
- Вычислительные ресурсы:
- физические машины;
- виртуальные машины;
- виртуализация на уровне операционной системы.
- Сеть.
- Система хранения данных.
VCL-менеджер обеспечивает соответствующую виртуализацию (агрегирование, дезагрегирование) доступных аппаратных ресурсов перед отображением запрошенного образа на это аппаратное обеспечение. VCL-сервисы концентрируются на управлении ресурсами на уровне платформы.
2. Платформа как сервис (PaaS)
Платформа как сервис – это виртуальная платформа, содержащая один или несколько серверов (виртуализированных поверх набора физических серверов), операционные системы и специализированные приложения (например, Apache и MySQL для Web-приложений). В некоторых случаях может предоставляться образ виртуальной машины, содержащий все необходимые пользователю приложения. Платформа как сервис содержит уровень программного обеспечения и предоставляет его как сервис, который можно использовать для создания высокоуровневых сервисов. Есть как минимум две точки зрения на PaaS, в зависимости от того, кто берется во внимание – поставщик или потребитель сервиса:
- Сторона, предоставляющая PaaS (в данном случае – VCL), может создать платформу, интегрируя операционную систему, программное обеспечение промежуточного и прикладного уровня и даже среду разработки, которую затем может предоставлять потребителю в виде сервиса.
- Сторона, использующая PaaS (пользователи в университетах), увидит инкапсулированный сервис, предоставляемый ему через интерфейс. Потребитель взаимодействует только с платформой через интерфейс, а платформа выполняет все необходимое для управления и масштабирования с целью предоставить заданный уровень сервиса. Виртуальные устройства (Virtual appliances) могут рассматриваться как экземпляры PaaS.
При использовании VCL студентам не нужно физически устанавливать какие-либо специфические сервисы, стеки решений или базы данных на своих машинах. Студентам предоставляются образы, которые они могут просто выбрать и использовать на машине, находящейся в облаке:
- Сервисы.
- Стеки решений:
- Java;
- PHP;
- .NET.
- Системы хранения данных:
- базы данных;
- хранилище файлов.
3. Программное обеспечение как сервис (SaaS)
SaaS – это возможность использовать программное обеспечение по сети Интернет в виде сервиса. Услуга "Программное обеспечение как сервис" содержит полнофункциональное приложение, предлагаемое как сервис по требованию. В облаке выполняется единственный экземпляр приложения, обслуживающий нескольких конечных пользователей или организаций-клиентов. Лучший пример удаленного прикладного сервиса - Google Apps, предлагающий несколько корпоративных приложений через стандартный Web-браузер.
VCL позволяет реализовать любые доступные на сегодняшний день SAAS-решения, решения по виртуализации и решения с терминальными сервисами. Типичными примерами являются VMWare, XEN, MS Virtual Server, Virtuoso и Citrix. VCL также позволяет использовать любые подходящие варианты предоставления доступа/сервиса – от RDP- или VNC-доступа до X-Windows, Web-сервисов и т.п.
Модели инфраструктуры облачных вычислений
При переходе от стандартной модели развертывания корпоративных приложений к модели, основанной на облачных вычислениях, разработчикам систем облачных вычислений необходимо принимать во внимание ряд соображений относительно моделей инфраструктуры. Существуют три основные модели сервисов, которые следует рассматривать при реализации облачных вычислений в университетах, – общедоступные (Public), частные (Private) и гибридные (Hybrid) облака.
Общедоступные облака открыты для каждого, кто желает подписаться и использовать их. Общедоступные облака запускаются поставщиками, а приложения различных пользователей чаще всего смешиваются на серверах, в системах хранения данных и сетях облака. Одно из преимуществ общедоступных облаков состоит в том, что они могут быть значительно больше, чем частное облако компании, а также могут предложить возможность масштабирования (в сторону увеличения или уменьшения) по требованию, перенося инфраструктурные риски с корпорации на поставщика облака.
IBM предоставляет облачный вычислительный центр (data center) для своих клиентов. Несколько клиентов совместно используют одну и ту же инфраструктуру, но облако каждого из них защищено и отделено, находясь как будто за своим собственным брандмауэром.
Частные облака разрабатываются в основном для организаций, нуждающихся в большей степени контроля над своими данными, чем они могут получить при использовании сервиса, размещаемого поставщиком решения. Частные облака создаются для исключительного использования одной организацией, обеспечивая максимальный контроль над данными, защищенность и качество сервиса. Частные облака чаще всего находятся за брандмауэром организации (предприятия или университета), и разрешение на доступ к облаку и его ресурсам имеют обычно только сотрудники этой организации.
Гибридные облака объединяют обе модели облаков – общедоступную и частную. Эта модель усложняется из-за необходимости определения способа распределения приложений по общедоступному и частному облакам. Гибридное облако может быть намного более удачным решением в ситуации, когда данных немного или приложение не сохраняет свое состояние (stateless), в отличие от ситуации, когда большой объем данных необходимо передавать в общедоступное облако для незначительной обработки.
VCL может работать с моделью гибридного облака. Она может предоставлять сервисы и инфраструктуру студентам и преподавателям одного университета, выступая как частное облако. Также она может распространять эти сервисы на облако, доступное для других университетов. Это требует реализации более защищенной сети.
Основной целью создания гетерогенного облака в университетах является значительное уменьшение масштабов конфигурирования кластерной системы благодаря консолидации гетерогенных рабочих нагрузок, и в то же время увеличение количества запросов для параллельных рабочих нагрузок благодаря предоставлению достаточных ресурсов (например, на основе Globus, Hadoop или Condor). В крупной организации различные инструментальные средства часто поддерживают распределенные кластерные системы для различных рабочих нагрузок. Таким образом, основной задачей является консолидация гетерогенных рабочих нагрузок организации в платформе облачных вычислений через VCL.
VCL может преобразовывать и поддерживать среду любого типа (как гетерогенную), если есть образ с соответствующим менеджером среды.
Высокоуровневая архитектура VCL
Архитектура VCL предназначена главным образом для проектирования и конфигурирования облачной вычислительной системы, экономно и рационально обслуживающей учебный и исследовательский процессы в университете. VCL предоставляет широкий спектр функциональных возможностей и сервисов, полностью удовлетворяя требования к облачным вычислениям и оправдывая возлагаемые на них надежды. Архитектура VCL имеет несколько основных компонентов, показанных на рисунке 2. Ссылки на дополнительную информацию о VCL и ее рабочей модели приведены в разделе "Ресурсы".
- Интерфейс (web) доступа конечного пользователя.
- Менеджер ресурсов (или VCL-менеджер), включающий планировщик, систему защиты, мониторинг производительности, управление виртуальной сетью и т.д.
- Репозиторий образов (или образ).
- Аппаратное обеспечение для вычислений, систем хранения данных и сети.
- Система защиты.
Рисунок 2. Физическая архитектура VCL
Сначала пользователь обращается к VCL через web-интерфейс, чтобы выбрать желаемую комбинацию приложений из меню (см. рисунок 3). Если выбранная специфическая комбинация еще не доступна в виде образа, авторизованный пользователь может сформировать свой собственный образ из компонентов библиотеки VCL. Затем программное обеспечение, управляющее VCL, отображает пользовательский запрос на доступные прикладные образы и аппаратные ресурсы (возможно, гетерогенные) и выделяет их для немедленного использования (по требованию) или для последующей работы.
Рисунок 3. Новое распределение ресурсов с желаемым образом
Режим доступа к ресурсам будет зависеть от предлагаемых сервисов (см. рисунок 4). Он может варьироваться от RDP- или VNC-доступа к удаленному рабочему месту до доступа к сервису Linux на основе протокола ssh или X-Windows, Web-доступа и доступа к вычислительному кластеру через прокси.
Рисунок 4. Текущее распределение и ssh-соединение
Обычно VCL-менеджер занимается проверкой среды, управлением компьютерами и образами. Программное обеспечение VCL-менеджера состоит из следующих продуктов:
Extreme Cluster Administration Toolkit (xCAT) – это набор инструментальных средств (основанных главным образом на сценариях) для создания, настройки, администрирования и обслуживания Linux-кластеров. В VCL xCAT был использован для загрузки запрошенного "голого" образа на blade-сервер.
В то время как исходная версия VCL была ориентирована на работу с "голыми" образами, современные ее версии загружают либо VMware-образ, либо "голый" образ. VCL-система обрабатывает запрос. Если она не находит доступный реальный или виртуальный сервер с уже загруженным требуемым образом, выбирается любой доступный сервер, удовлетворяющий спецификациям для этого образа, xCAT или соответствующий VM-загрузчик, динамически загружающий необходимый образ. В нашем случае предоставление физической машины осуществляется через xCAT, а предоставление виртуальной машины – через VMware ESXi, VMware ESX Standard server, VMware free server.
Если все серверы заняты, Web-интерфейс информирует студента о доступном времени по графику.
2. Сервис-демон VCL промежуточного уровня (vcld)
Базовой частью VCL-менеджера является основанный на perl сервис-демон VCL (vcld), используемый для выполнения фактического предоставления ресурсов и развертывания. В зависимости от типа запрошенной среды ("голый" образ, лабораторная машина или образ виртуальной машины) vcld обеспечивает загрузку образа и его предоставление в ответ на запрос. Типичными задачами сервиса vcld являются:
- Взаимодействие между Web-интерфейсом и базой данных для получения подробной информации и обработки резервирования/задания, назначенного Web-порталом VCL.
- Инициирование команд xCAT или VMware для выполнения запрошенной операции.
- Мониторинг процедуры установки образа и установка запрошенных инструментальных средств для последующей настройки.
- Поддержка процедуры развертывания и предоставления машинных ресурсов.
- Конфигурирование и администрирование установленного образа.
- Поддержка во время установки и конфигурирования.
3. Web-сервер с открытыми исходными кодами (Apache)
Основанное на PHP Web-приложение (развертываемое на Web-сервере Apache) является сердцем VCL и предоставляет средства для запроса, управления и руководства всеми VCL-ресурсами. Web-интерфейс позволяет аутентифицированным пользователям отображать список приложений, которые они уполномочены использовать, и позволяет им резервировать приложение для использования либо немедленно, либо в определенный промежуток времени в будущем. Продолжительность этого времени и времени резервирования настраиваются и могут быть разными для разных пользователей. Основные функции, предоставляемые Web-интерфейсом:
- Создание образа – интерфейс позволяет пользователям создавать специализированные среды.
- Управление версиями образов – интерфейс позволяет привилегированным пользователям создавать несколько версий одного и того же образа.
- Управление пользователями – интерфейс обеспечивает управление пользовательскими привилегиями и предоставляет различные уровни управления пользователям через Web-интерфейс.
- Управление ресурсами – интерфейс предоставляет метод распределения ресурсов в пуле.
4. База данных с открытыми исходными кодами (MySQL)
База данных MySQL предназначена для отслеживания состояния каждого сервера, хранения информации о каждом образе и реализации дерева привилегий.
В VCL термин образ используется для стека программ, включающего в себя следующие компоненты:
- Основная операционная система. Если для виртуализации требуется масштабируемость, возможен также уровень гипервизора.
- Желаемое программное обеспечение промежуточного и прикладного уровня, выполняющееся в выбранной операционной системе.
- Решение для доступа конечного пользователя, подходящее для выбранной операционной системы.
Образы могут загружаться на "голую" машину или в выбранную виртуальную среду операционной системы/приложений. Если запрошенная пользователем комбинация образов недоступна, он может создать свой собственный образ из библиотеки компонентов VCL. Если пользователь имеет право на создание образа, он обычно начинает работать с образом, не имеющим приложений (NoApp), или базовым образом (Windows XP или Linux) и дополняет его приложениями.
Вычислительное оборудование/сетевое хранилище
Виртуализация полностью абстрагировала аппаратное обеспечение до уровня, на котором можно развертывать и повторно развертывать стек приложений, не привязываясь к конкретному физическому серверу. VCL-серверы предоставляют пул ресурсов, предназначенных для применения пользователями. Ресурсы распределяются в зависимости от конкретных приложений. Сетевые ресурсы и ресурсы хранения данных являются динамическими, удовлетворяя требования как пользователя, так и рабочей нагрузки.
Понятие вычислительного облака обычно дополняется облаками хранения (storage clouds), предоставляющими виртуальное хранение данных через VCL, использующую системы хранения данных в виртуальных образах. В VCL вычислительным оборудованием и хранилищем может быть все что угодно – от blade-серверов и разнообразных настольных устройств или рабочих станций до корпоративного сервера или высокопроизводительной вычислительной системы.
Типичная установка VCL содержит один или несколько blade-модулей, один из которых предназначен для управления. Каждый blade-модуль имеет по меньшей мере два сетевых интерфейса – один для общедоступной сети и один для частной сети, использующейся для управления blade-модулями и для загрузки образов. Система хранения данных подключается либо напрямую по оптоволокну, либо через сеть (см. рисунок 5).
Рисунок 5. Хранилище приложений VCL
Роль безопасности в контексте облака трудно переоценить. Уровень защищенности, необходимый для каждой распределенной системы, в конечном итоге определяется аутентификацией и авторизацией сервисов. VCL реализует в своих системах следующие уровни защиты:
- LDAP-аутентификация
VCL-аутентификация является LDAP-сервисом, основанным на принадлежности пользователя к группам. В зависимости от принадлежности пользователя VCL поддерживает различные LDAP-сервисы для предоставления доступа. - Аутентификация на уровне среды
Этот режим аутентификации будет разным в зависимости от среды. Он обычно определяется во время создания образа. В Windows создается одна одноразовая учетная запись, назначаемая при резервировании среды и теряющая силу после использования. В Linux может использоваться либо существующая инфраструктура аутентификации, либо автономный механизм учетных записей.
Кроме того, если пользователь авторизован и может выполнять резервирование в VCL, VCL при помощи брандмауэра уровня операционной системы разрешает работу в предоставляемой среде только с IP-адреса конечного пользователя.
Есть две основные предпосылки использования суперкомпьютеров (High Performance Computing – HPC) в университетах. Во-первых, суперкомпьютеры необходимы для проведения требовательных к ресурсам расчетов. Во-вторых, может быть трудно обеспечить аппаратные ресурсы для увеличивающегося количества запросов от VCL. Базовая рабочая модель сервисов VCL на суперкомпьютерах довольно проста (см. рисунок 6). Ссылки на дополнительную информацию о VCL на суперкомпьютерах и ее использовании приведены в разделе "Ресурсы".
Рисунок 6. Базовая модель VCL на суперкомпьютере
Предварительные требования к HPC-системе
- Сетевой коммутатор. Новая частная сеть для потока сообщений, использующая сетевые интерфейсы, которые использовались бы для доступа пользователей к общедоступным сетям.
- Необходимо настроить две виртуальные частные сети (VLAN) на одном коммутаторе. Одну – для общего интернет-доступа, а другую – для частных сообщений, проходящих через интерфейс.
- Сеть VLAN blade-модуля, настроенного как узел управления VCL, основанную на метаданных образа.
Базовая рабочая модель HPC в VCL показана на рисунке 7. xCAT под управлением VCL загружает вычислительные образы HPC-системы в свободные blade-модули, а программа управления VCL настраивает параметры VLAN в Ethernet-коммутаторах для соединения серверов с частными HPC-сетями. В HPC-среде VCL предоставляет общий доступ только через узлы аутентификации. Образ основного узла HPC-аутентификации содержит компоненты HPC-планировщика. В настоящее время в VCL используется Load Sharing Facility (LSF). Каждый образ HPC-клиента имеет доступ к хранилищу большого объема (в терабайтах), а также к пользовательским каталогам home и хранилищу резервного образа HPC. После загрузки HPC-образа VCL-планировщик начинает распределять задания.
Рисунок 7. Базовая модель Blade-сервера в VCL HPC
Интеграция HPC с VCL существенно повышает коэффициент использования ресурсов благодаря повторному использованию blade-серверов. Такой метод позволяет пользователям при запросах использовать инфраструктуру совместно, что приводит к большей доступности ресурсов.
Преимущества использования VCL в лабораториях – облачное решение
Мы идентифицировали некоторые основные возможности облачных вычислений VCL при помощи диаграмм производительности VCL-лаборатории, чтобы объяснить основные преимущества. В университетах пользователями обычно являются студенты и преподаватели. Системы облачных вычислений, обслуживающие этих пользователей в рамках университетской среды, должны как минимум предоставлять следующие возможности:
- Сервисы и поддержку различных пользователей.
- Широкий спектр учебных материалов и средств научной поддержки для младших и старших преподавателей, профессоров и других педагогов и персонала университета.
- Вычислительные системы и сервисы исследовательского уровня для поддержки исследовательской деятельности университета.
Исходя из этих требований, основные проблемы планирования реализации решения с использованием облачных вычислений в высших образовательных исследовательских учреждениях включают в себя следующие:
- Высокий коэффициент используемости ресурсов, зависящий от различных пользовательских требований.
- Разнообразие сервисных сред.
- Рабочая инфраструктура облака как экономически жизнеспособная модель.
В университетах использование ресурсов будет зависеть от календаря обучения. Ресурсов требуется больше во время назначения заданий и в конце учебного года. Исследовательские проекты и другие действия, ориентированные на исследования, активны на протяжении всего года. Поэтому, для того чтобы университетское вычислительное облако было экономически жизнеспособным, необходим подходящий механизм планирования для мониторинга требований и распределения системных ресурсов. VCL предоставляет отличный механизм планирования для идентификации спадов и приливов активности кампуса.
По данным наблюдений и исследований VCL-среды в университетах мы можем сделать важное заключение, что VCL, благодаря повышению загрузки настольных и HPC-систем, обеспечивает эффективное использование вычислительной инфраструктуры в лабораториях. Кроме того, использование blade-модулей для HPC-системы и рабочих мест VCL предоставляет экономичные сервисы с оптимальным использованием ресурсов.
Таким образом, можно сделать вывод, что VCL – это основанная на Web-технологиях система с открытыми исходными кодами, используемая для динамического предоставления и распределения пользователям удаленного доступа к выделенной вычислительной среде. VCL-облако обеспечивает исключительную вычислительную мощь благодаря уникальному решению, основанному на открытом программном и аппаратном обеспечении и используемому для выполнения и размещения всех университетских проектов и программ обучения.
Информация об использовании VCL в университетах приведена в обзоре VCL. Я хочу поблагодарить Аарона Пилера (Aaron Peeler), главного менеджера и участника разработки VCL, за предоставленную им поддержку и предложения и комментарии по VCL и ее рабочей модели.
Научиться
- Оригинал статьи A Cloud Computing Solution in Universities (EN).
- Информация о концепциях VCL, подробности установки и список почтовой рассылки приведены в разделе Open source VCL APACHE(EN)
- В статье Экономически эффективная VCL приведена информация о производительности VCL в университетах (EN).
- Web-сайт Hadoop core – лучший ресурс для изучения Hadoop.(EN)
- Информация о концепциях VCL и ее подробная рабочая модель.(EN)
- Тема облачных вычислений и смежных технологий в Википедии.(EN)
- Литературу по данной и другим техническим темам можно найти в магазине технической литературы.(EN)
Получить продукты и технологии
-
JBoss Application Server, Geronimo и WebSphere
Application Server – это наиболее популярные серверы приложений, предоставляющие локальную модель и модель Web-сервисов для SaaS. (EN)
- Загрузите пробные версии продуктов IBM или исследуйте их в интерактивном режиме в IBM SOA Sandbox. Освойте инструментальные средства разработки приложений и продукты промежуточного уровня DB2®, Lotus®, Rational®, Tivoli® и WebSphere®.(EN)

