ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 21.04.2024
Просмотров: 273
Скачиваний: 1
(parent), остальные – дочерними (child). Раздел – это наименьшая изолированная единица, поддерживаемая гипервизором. Размер гипервизора Hyper-V менее 1,5 Мб , он может поместиться на одну 3.5-дюймовую дискету.
Каждому разделу назначаются конкретные аппаратные ресурсы – долю процессорного времени, объем памяти, устройства и пр. Родительский раздел создает дочерние разделы и управляет ими, а также содержит стек виртуализации (virtualization stack), используемый для управления дочерними разделами. Родительский раздел создается первым и владеет всеми ресурсами, не принадлежащими гипервизору. Обладание всеми аппаратными ресурсами означает, что именно корневой (то есть, родительский) раздел управляет питанием, подключением самонастраивающихся устройств, ведает вопросами аппаратных сбоев и даже управляет загрузкой гипервизора.
В родительском разделе содержится стек виртуализации – набор программных компонентов, расположенных поверх гипервизора и совместно с ним обеспечивающих работу виртуальных машин. Стек виртуализации обменивается данными с гипервизором и выполняет все функции по виртуализации, не поддерживаемые непосредственно гипервизором. Большая часть этих функций связана с созданием дочерних разделов и управлением ими и необходимыми им ресурсами (ЦП, память, устройства).
Преимущество микроядерного подхода, примененного в Windows Server 2008 R2, по сравнению с монолитным подходом состоит в том, что драйверы, которые должны располагаться между родительским разделом и физическим сервером, не требуют внесения никаких изменений в модель драйверов. Иными словами, в системе можно просто применять существующие драйверы. В Microsoft этот подход избрали, поскольку необходимость разработки новых драйверов сильно затормозила бы развитие системы. Что же касается гостевых ОС, они будут работать с эмуляторами или синтетическими устройствами.
С другой стороны, что микроядерная модель может несколько проигрывать монолитной модели в производительности. Однако в наши дни главным приоритетом стала безопасность, поэтому для большинства компаний вполне приемлема будет потеря пары процентов в производительности ради сокращения фронта нападения и повышения устойчивости.
Рисунок 2.15 Архитектура Hyper-v
Все версии Hyper-V имеют один родительский раздел. Этот раздел управляет функциями Hyper-V. Из родительского раздела запускается консоль Windows Server
35
Virtualization. Кроме того, родительский раздел используется для запуска виртуальных машин (VM), поддерживающих потоковую эмуляцию старых аппаратных средств. Такие VM, построенные на готовых шаблонах, эмулирующих аппаратные средства, являются аналогами VM, работающих в продуктах с виртуализацией на базе хоста, например Virtual Server.
Гостевые VM запускаются из дочерних разделов Hyper-V. Дочерние разделы поддерживают два типа VM: высокопроизводительные VM на основе архитектуры VMBus и VM, управляемые системой-хостом. В первую группу входят VM с системами
Windows Server 2003, Windows Vista, Server 2008 и Linux (поддерживающими Xen).
Новую архитектуру VMBus отличает высокопроизводительный конвейер, функционирующий в оперативной памяти, соединяющий клиентов Virtualization Service Clients (VSC) на гостевых VM с провайдером Virtual Service Provider (VSP) хоста. VM,
управляемые хостом, запускают платформы, не поддерживающие новую архитектуру
VMBus: Windows NT, Windows 2000 и Linux (без поддержки технологии Xen, например SUSE Linux Server Enterprise 10).
Microsoft System Center Virtual Machine Manager (SCVMM) - отдельный продукт семейства System Center для управления виртуальной инфраструктурой, эффективного использованием ресурсов физических узлов, а также упрощение подготовки и создания новых гостевых систем для администраторов и пользователей. Продукт обеспечивает всестороннюю поддержку консолидации физических серверов в виртуальной инфраструктуре, быстрое и надежное преобразование физических машин в виртуальные, разумное размещение виртуальных нагрузок на подходящих физических узлах, а также единую консоль для управления ресурсами и их оптимизации. SCVMM обеспечивает следующие возможности:
Централизованное управление серверами виртуальных машин в масштабах предприятия. SCVMM поддерживает управление серверами Microsoft Hyper-V, Microsoft Virtual Server, VMware ESX и в будущем будет реализована поддержка Xen.
Создание библиотеки шаблонов виртуальных машин. Шаблоны виртуальных машин представляют собой наборы образов предустановленных операционных систем, которые могут быть развёрнуты за считанные минуты.
Мониторинг и размещение виртуальных машин в соответствие с загруженностью физических серверов.
Миграция (конвертирование) физических серверов в виртуальные машины - технология P2V. Технология P2V позволяет произвести перенос физического сервера на виртуальный без остановки работы. Таким образом, появляется возможность онлайнового резервирования целого сервера, и в случае выхода его из строя, можно в течение минуты запустить виртуальный сервер и продолжить работу.
Миграция (конвертирование) виртуальных машин других форматов в виртуальные машины Hyper-V - технология V2V. Данная технология аналогична P2V, но при этом позволяет переносить виртуальные машины
Microsoft Virtual Server или VMware ESX в Hyper-V.
Управление кластерами Hyper-V.
36
Ключевые термины:
Виртуализация – процесс представления набора вычислительных ресурсов или их логического объединения, который даёт какие-либо преимущества перед оригинальной конфигурацией.
Виртуальная машина – программная или аппаратная среда, которая скрывает настоящую реализацию какого-либо процесса или объекта от его видимого представления.
Полная виртуализация – Виртуализация при которой используются не модифицированные экземпляры гостевых операционных систем, а для поддержки работы этих ОС служит общий слой эмуляции их исполнения поверх хостовой ОС, в роли которой выступает обычная операционная система.
Паравиртуализация – Виртуализация при которой производится модификация ядра гостевой ОС выполняется таким образом, что в нее включается новый набор API, через который она может напрямую работать с аппаратурой, не конфликтуя с другими виртуальными машинами.
Виртуализация на уровне ОС – Вид виртуализации, который подразумевает использование одного ядра хостовой ОС для создания независимых параллельно работающих операционных сред.
Виртуализация серверов - это запуск на одном физическом сервере нескольких виртуальных серверов. Виртуальные машины или сервера представляют собой приложения, запущенные на хостовой операционной системе, которые эмулируют физические устройства сервера. На каждой виртуальной машине может быть установлена операционная система, на которую могут быть установлены приложения и службы.
Виртуализация приложений – вид виртуализации, которая подразумевает применение модели сильной изоляции прикладных программ с управляемым взаимодействием с ОС, при которой виртуализируется каждый экземпляр приложений, все его основные компоненты: файлы (включая системные), реестр, шрифты, INI-файлы, COM-объекты, службы. Приложение исполняется без процедуры инсталляции в традиционном ее понимании и может запускаться прямо с внешних носителей.
Виртуализация представлений (рабочих мест) Виртуализация представлений имеет место, когда сервер предоставляет свои ресурсы клиентам, причем клиентское приложение выполняется на этом сервере, а клиент получает только представление.
Монолитная архитектура гипервизора – архитектура гипервизора при которой гипервизор размещается в едином уровне, который также включает большинство требуемых компонентов, таких как ядро, драйверы устройств и стек ввода/вывода
Микроядерная архитектура гипервизора – Подход при котором используется очень тонкий, специализированный гипервизор, выполняющий лишь основные задачи обеспечения изоляции разделов и управления памятью. Этот уровень не включает стека ввода/вывода или драйверов устройств.
Литература:
1.http://www.pcweek.ru/themes/detail.php?ID=107230
2.http://www.ixbt.com/cm/virtualization.shtml
3.Александр Самойленко «Обзор популярных платформ виртуализации VMware, Citrix и Microsoft»
4.http://www.vmgu.ru
37
Лекция 3. Основы облачных вычислений.
В предыдущих лекциях мы рассмотрели две ключевых тенденции, предопределивших появление концепции облачных вычислений. Это консолидация и виртуализация ИТ-инфраструктуры. Третьим ключевым компонентом или третьим китом
Cloud Computing является понятие Software as a Service (SaaS).
Рисунок 3.1 Примеры применения концепции SaaS
Первые идеи об использовании вычислений как публичной услуги были предложены еще в 1960-х известным ученым в области информационных технологий, изобретателем языка Lisp, профессором MIT и Стэнфордского университета Джоном Маккарти (John McCarthy). Реализация первого реального проекта приписывается компании Salesforce.com, основанной в 1999 году. Именно тогда и появилось первое предложение нового вида b2b продукта «Программное обеспечение как сервис» (“Software as a Service”, “SaaS”). Определенный успех Salesforce в этой области возбудил интерес у гигантов ИТ индустрии, которые спешно сообщили о своих исследованиях в области облачных технологий. И вот уже первое бизнес-решение под названием «Amazon Web Services» было запущено в 2005 году компанией Amazon.com, которая со времен кризиса доткомов активно занималась модернизацией своих датацентров. Следующим свою технологию постепенно ввела Google, начав с 2006 года b2b предложение SaaS сервисов под названием «Google Apps». И, наконец, свое предложение анонсировала компания Microsoft, презентовав ее на конференции PDC 2008 под названием «Azure Services Platform».
Рисунок 3.2 SaaS сервисы Google
38
Сам факт высокой заинтересованности крупнейших игроков рынка ИТ демонстрирует определенный статус облачных вычислений как тренда 2009-2010 годов. Кроме того, с релизом Microsoft Azure Service Platform множество экспертов связывает новый виток развития веб-технологий и выход всей сферы облачных вычислений на новый уровень.
Напомним, что под облачными вычислениями мы понимаем программно-
аппаратное обеспечение, доступное пользователю через Интернет или локальную сеть в виде сервиса, позволяющего использовать удобный интерфейс для удаленного доступа к выделенным ресурсам (вычислительным ресурсам, программам и данным).
На данный момент большинство облачных инфраструктур развернуто на серверах датацентров, используя технологии виртуализации, что фактически позволяет любому пользовательскому приложению использовать вычислительные мощности, совершенно не задумываясь о технологических аспектах. Тогда можно понимать «облако» как единый доступ к вычислениям со стороны пользователя.
Виды облачных вычислений
С понятием облачных вычислений часто связывают такие сервис-предоставляющие
(Everything as a service) технологии, как:
«Инфраструктура как сервис» (“Infrastructure as a Service” или “IaaS”)
«Платформа как сервис» (“Plaatform as a Service”, “PaaS”)
«Программное обеспечение как сервис» (“Software as a Service” или
“SaaS”).
Рассмотрим каждую из этих технологий подробнее.
Инфраструктура как сервис (IaaS)
IaaS - это предоставление компьютерной инфраструктуры как услуги на основе концепции облачных вычислений.
IaaS состоит из трех основных компонентов:
Аппаратные средства (серверы, системы хранения данных, клиентские системы, сетевое оборудование)
Операционные системы и системное ПО (средства виртуализации, автоматизации, основные средства управления ресурсами)
Связующее ПО (например, для управления системами)
Рисунок 3.2 Компоненты облачной инфраструктуры
IaaS основана на технологии виртуализации, позволяющей пользователю оборудования делить его на части, которые соответствуют текущим потребностям
39
бизнеса, тем самым увеличивая эффективность использования имеющихся вычислительных мощностей. Пользователь (компания или разработчик ПО) должен будет оплачивать всего лишь реально необходимые ему для работы серверное время, дисковое пространство, сетевую пропускную способность и другие ресурсы. Кроме того, IaaS предоставляет в распоряжение клиента весь набор функций управления в одной интегрированной платформе.
IaaS избавляет предприятия от необходимости поддержки сложных инфраструктур центров обработки данных, клиентских и сетевых инфраструктур, а также позволяет уменьшить связанные с этим капитальные затраты и текущие расходы. Кроме того, можно получить дополнительную экономию, при предоставлении услуги в рамках инфраструктуры совместного использования.
Первопроходцами в IaaS считается компания Amazon, которые на сегодняшний день предлагают два основных IaaS-продукта: EC2 (Elastic Compute Cloud) и S3 (Simple Storage Service). EC2 представляет собой Xen-хостинг со статическими VPSхарактеристиками, которые не расширяются на лету (хотя многие подобные сервисы уже предоставляют т.н. auto scaling). Хранилище S3 имеет интерфейс WebDAV и поддерживает работу со многими известными языками программирования.
Среди других инфра-сервисных компаний можно отметить:
GoGrid имеет очень удобный интерфейс для управления VPS, а также cloud storage с поддержкой протоколов SCP, FTP, SAMBA/CIFS, RSYNC, причем размер хранилища масштабируется на лету. В скором времени разработчики обещают добавить управление посредством API.
Enomaly представляет собой решение для развертывания и управления виртуальными приложениями в облаке, при этом управление услугами осуществляется через браузер. Приятным дополнением является автоматическое масштабирование виртуальных машин под текущую нагрузку, а также автобалансировка нагрузки. Среди поддерживаемых виртуальных архитектур поддерживаются Linux, Windows, Solaris и BSD Guests. Для виртуализации применяют не только Xen, но и KVM, а также VMware.
Eucalyptus представляет собой программный комплекс с открытым кодом для реализации cloud computing на кластерных системах. В настоящее время интерфейс совместим с Amazon EC2, но заявлена поддержка и других.
Платформа как сервис (PaaS)
PaaS - это предоставление интегрированной платформы для разработки, тестирования, развертывания и поддержки веб-приложений как услуги.
Для разворачивания веб-приложений разработчику не нужно приобретать оборудование и программное обеспечение, нет необходимости организовывать их поддержку. Доступ для клиента может быть организован на условиях аренды.
Такой подход имеет следующие достоинства:
масштабируемость;
отказоустойчивость;
виртуализация;
безопасность.
Масштабируемость PaaS предполагает автоматическое выделение и освобождение необходимых ресурсов в зависимости от количества обслуживаемых приложением пользователей.
PaaS как интегрированная платформа для разработки, тестирования, разворачивания и поддержки веб-приложений позволит весь перечень операций по разработке, тестированию и разворачиванию веб-приложений выполнять в одной интегрированной среде, исключая тем самым затраты на поддержку отдельных сред для отдельных этапов.
40