Виртуализация в задачах оптимизации нагрузок на компьютерные системы

Автор работы: Пользователь скрыл имя, 08 Октября 2010 в 14:13, Не определен

Описание работы

Введение
1. Технологии виртуализации
1.1 Виртуализация сегодня
1.1.1 Монолитный гипервизор
1.1.2 Микроядерный гипервизор
1.2 Программная Паравиртуализация
1.3 Программная полная виртуализация
1.4 Аппаратная виртуализация
2. Основные задачи и область применения виртуализации
2.1 Основные задачи, которые решаются с помощью виртуализации
2.2 Виртуализация серверов
2.2.1 Виртуализация серверов на базе VMware vSphere
2.2.2 Виртуализация серверов на базе Microsoft Hyper-V
2.2 Виртуализация серверов уровня операционной системы
2.3 Виртуализация приложений
2.4 Виртуализация представлений
2.5 Виртуализация рабочих столов
Заключение
Список использованных источников

Файлы: 1 файл

Виртуализация1.docx

— 641.89 Кб (Скачать файл)

Оглавление

Введение 3

1. Технологии виртуализации 5

1.1 Виртуализация сегодня 5

    1.1.1 Монолитный гипервизор 8

    1.1.2 Микроядерный гипервизор 9

1.2 Программная Паравиртуализация 11

1.3 Программная полная виртуализация 12

1.4 Аппаратная виртуализация 12

2. Основные задачи и область применения виртуализации 15

2.1 Основные задачи, которые решаются с помощью виртуализации 15

2.2 Виртуализация серверов. 19

    2.2.1 Виртуализация серверов на базе VMware vSphere 20

    2.2.2 Виртуализация серверов на базе Microsoft Hyper-V 21

2.2 Виртуализация серверов уровня операционной системы. 24

2.3  Виртуализация приложений. 26

2.4 Виртуализация представлений. 26

2.5 Виртуализация рабочих столов 31

Заключение 33

Список использованных источников 35 
 
 

 

Введение

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

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

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

 

1. Технологии виртуализации

1.1 Виртуализация сегодня

     Идея  виртуализации была предложена еще фирмой IBM, задолго до появления Windows. Но архитектура процессора x86 фирмы Intel, не поддерживающей виртуализацию, незаслуженно вытеснила эту технологию из широкой IT-практики. Дело в том, что в архитектуре x86 все аппаратные устройства (контроллеры жестких дисков, видеоконтроллеры, таймеры и прочее) проектировались на работу только с одной ОС.

     В наши дни виртуализация на платформах Windows принимает одну из двух форм: тип 2 и гибридная (hybrid). Типичным примером виртуализации типа 2 является виртуальная машина Java. Еще один пример — общеязыковая среда выполнения (common language runtime, CLR) платформы .NET Framework. В обоих случаях все начинается с базовой ОС, то есть, с ОС, которая устанавливается непосредственно на физическое оборудование. Поверх базовой ОС работает монитор виртуальных машин (Virtual Machine Monitor, VMM), в задачу которого входит создание виртуальных машин и управление ими, распределение ресурсов между машинами, обеспечение изоляции машин друг от друга. Иными словами, в данном сценарии VMM играет роль уровня виртуализации (virtualization layer). Затем поверх VMM работают уже гостевые приложения, в данном случае, приложения Java или .NET. Эта архитектура показана на рис. 3-1. Очевидно, что ее производительность оставляет желать лучшего, поскольку приложениям на пути к оборудованию приходится проходить как через VMM, так и через базовую ОС.

 

 

Рис. 1. 1 Архитектура виртуализации типа 2

Большинству ИТ-профессионалов, вероятно, более  знакома гибридная виртуализации, проиллюстрированная на рис. 3-2. Здесь непосредственно с

оборудованием общаются как базовая ОС, так и VMM (хотя к различным аппаратным компонентам они имеют разный доступ), а гостевые ОС работают поверх уровня виртуализации. Если говорить точнее, в этой конфигурации VMM также должен проходить через базовую ОС, чтобы получить доступ к оборудованию. Однако как базовая ОС, так и VMM работают в режиме ядра и потому, по сути, конкурируют за обладание ресурсами ЦП. Базовой системе циклы процессора выделяются по мере надобности в ее контексте, затем циклы передаются VMM, a VMM передает циклы гостевым ОС. Процесс повторяете снова. Гибридная форма работает быстрее формы типа 2, поскольку в первом случае VMM работает в режиме ядра, а во втором — в пользовательском режиме.

  Именно  гибридный подход к VMM используется в двух популярных решениях виртуализации от Microsoft: в Microsoft Virtual PC 2007 и в Microsoft Virtual Server 2005 R2. И хотя производительность его выше, чем у виртуальных систем типа 2, она все еще не так высока, как была бы у двух раздельных физических компьютеров.

  VMM типа 2 называют еще машинами с виртуализацией процессов, поскольку в них в качестве «гостей» физической системы изолируются процессы (службы или приложения). Гибридные VMM называют машинами с виртуализацией системы, поскольку на них в качестве «гостей» изолируются целиком операционные системы, например Windows или Linux.

  В наши дни имеется и третий тип технологии виртуализации — VMM типа 1 или технология гипервизора. Гыпервизор (hypervisor) — это программный уровень, расположенный непосредственно над оборудованием и под одной или несколькими ОС. Его основное назначение — организовать изолированные среды выполнения, называемые разделами (partition), внутри которых будут работать виртуальные машины с гостевыми ОС. Каждому разделу выделяется собственный набор аппаратных ресурсов, в который входят память, процессорное время и устройства, а гипервизор отвечает за организацию доступа к реальному оборудованию.

  На  рис. 3-3 показана простая форма VMM типа 1, в которой VMM (гипервизор) работает непосредственно на «голом железе» (на оборудовании), а поверх VMM работает несколько гостевых ОС.

Рис. 1.3  Архитектура виртуализации типа 1

  Забегая вперед, виртуализация, основанная на гипервизоре, обладает наилучшей производительностью. Она реализована в Windows Server 2008. Можно сравнить два варианта VMM типа I: монолитный и микроядерный.

1.1.1 Монолитный гипервизор

  В монолитной (monolithic) модели гипервизор использует для доступа к оборудованию собственные драйверы (рис. 3-4). Гостевые ОС работают на виртуальных машинах поверх гипервизора. Когда гостевой системе нужен доступ к оборудованию, она должна пройти через гипервизор и его модель драйверов. Обычно одна из гостевых ОС играет роль администратора или консоли, в которой вы запускаете компоненты для предоставления ресурсов, управления и мониторинга всех гостевых ОС, работающих на компьютере.

  Модель  монолитного гипервизора обеспечивает прекрасную производительность, но «хромает»  с точки зрения защищенности и  устойчивости. Это связано с тем, что она по своей сути обладает более широким фронтом нападения и подвергает систему большему потенциальному риску, поскольку разрешает работу драйверов (а иногда даже программ сторонних производителей) в очень чувствительной области. Скажем, вредоносная программа способна установить в гипервизоре под видом драйвера устройства регистратор нажатий клавиш. Если такое случиться, под контролем регистратора окажутся все гостевые ОС системы. Хуже того, этот «жучок» будет совершенно невозможно обнаружить средствами гостевых ОС: гипервизор им по определению не видим!

Рис. 1.4 Монолитный гипервизор

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

1.1.2 Микроядерный гипервизор

 Альтернативу  монолитному подходу составляет микроядерная (microkernelized) модель (рис. 3-5). В ней можно говорить о «тонком гипервизоре» — в этом случае в нем совсем нет драйверов. Вместо этого драйверы работают в каждом индивидуальном разделе, чтобы любая гостевая ОС имела возможность получить через гипервизор доступ к оборудованию. При такой расстановке сил каждая виртуальная машина занимает совершенно обособленный раздел, что положительно сказывается на защищенности и надежности.

 В микроядерной модели (в виртуализации Windows Server 2008 используется именно она) один раздел является родительским (parent), остальные — дочерними (child). Раздел — наименьшая изолированная единица, поддерживаемая гипервизором. Он состоит из пространства физических адресов и одного или нескольких виртуальных процессоров. Каждому разделу назначаются конкретные аппаратные ресурсы — долю процессорного времени, память, устройства и пр. Родительский раздел создает дочерние разделы и управляет ими, а также содержит стек виртуализации (virtualization stack), используемый для управления дочерними разделами. Родительский раздел, является также корневым (root), поскольку он создается первым и владеет всеми ресурсами, не принадлежащими гипервизору. Обладание всеми аппаратными ресурсами означает среди прочего, что именно корневой (то есть, родительский) раздел управляет питанием, подключением самонастраивающихся устройств, ведает вопросами аппаратных сбоев и даже управляет загрузкой гипервизора.

Рис. 1.5  Микроядерный гипервизор

  В родительском разделе содержится стек виртуализации — набор программных  компонентов, расположенных поверх гипервизора и совместно с ним обеспечивающих работу виртуальных машин. Стек виртуализации обменивается данными с гипервизором и выполняет все функции по виртуализации, не поддерживаемые непосредственно гипервизором. Большая часть этих функций связана с созданием дочерних разделов и управлением ими и необходимыми им ресурсами (ЦП, память, устройства).

  Стек  виртуализации также обеспечивает доступ к интерфейсу управления, который  в случае Windows Server 2008 является поставщиком WMI.

  Преимущество  микроядерного подхода, примененного в Windows Server, по сравнению с монолитным подходом состоит в том, что драйверы, которые должны располагаться между родительским разделом и физическим сервером, не требуют внесения никаких изменений в модель драйверов. Иными словами, в системе можно просто применять существующие драйверы. В Microsoft этот подход избрали, поскольку необходимость разработки новых драйверов сильно затормозила бы развитие системы. Что же касается гостевых ОС, они будут работать с эмуляторами или синтетическими устройствами. Необходимое ПО для этого Microsoft предоставит.

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

Информация о работе Виртуализация в задачах оптимизации нагрузок на компьютерные системы