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

Автор работы: Пользователь скрыл имя, 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 Кб (Скачать файл)

   На  данный момент весь рынок виртуализации для платформы x86 можно поделить согласно методу виртуализации, на следующие классы:

  1. Программная паравиртуализация
  2. Программная полная виртуализация
  3. Аппаратная виртуализация
  4. Технология виртуализации уровня операционной системы - виртуализация ресурсов.

   Основным  действующим лицом в любой  технологии виртуализации является гипервизор: программная прослойка между гостевыми операционными системами и аппаратным обеспечением. Реализация гипервизора может быть разной.

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

 

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

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

     В 1998 году компания VMWare  выпустила программный комплекс программной полной виртуализации, который был основан на бинарной трансляции кода. Код гостевой операционной системы принимался гипервизором и проверялся на наличие проблемных команд. Логика гипервизора при этом либо переводила команды на выполнение от имени гипервизора, либо заменяла определенным образом команды. Технология полной виртуализации дала возможность реализовать виртуализацию проприетарных операционных систем, как Windows, MacOS, где нет возможности модифицировать ядро системы. Однако следует отметить, что полная трансляция и модификация бинарного кода - весьма ресурсоемкая операция, поэтому такая полная виртуализация не отличается высокой производительностью.

Рис. 1.6 Полная виртуализация

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

 

Для преодоления  проблем с виртуализацией процессорных ресурсов, компании Intel и AMD ввели в  свои новые процессоры новый режим  процессора - так называемый "гостевой" режим. Благодаря этому, гостевой операционной системе на аппаратном уровне предоставлялась возможность выполнять привилегированные команды в нулевом кольце процессора. Это значительно повысило производительность решений на базе виртуализации, ведь теперь гипервизору не нужно было выполнять ресурсозатратные действия по контролю за кодом гостевой ОС. Конечно, гипервизор сохранился, но большое количество его функций с введением аппаратной виртуализации просто исчезли. Технологии аппаратной виртуализации фирм Intel и AMD называются соответственно Intel VT и AMD SVM. Наличие или отсутствие поддержки аппаратной виртуализации является одним из пунктов описания любого современного процессора. Стоит отметить, что далеко не все новые процессоры поддерживают аппаратную виртуализацию. К примеру, популярный процессор Intel Q6600 поддерживает технологию Intel VT, а Q8200 - нет.

     Кроме технологий аппаратной виртуализации  процессорных ресурсов,  технологии аппаратной виртуализации сделали возможным прямой доступ гостевых операционных систем к аппаратным устройствам, к примеру, жестким дискам, напрямую через канал DMA. Однако из-за этого уменьшается количество устройств, которые можно назначить гостевой ОС, и ухудшается её переносимость .

 

 

Рис. 1.7 Аппаратная виртуализация

     Несмотря  на казалось бы очевидный выигрыш  от аппаратной виртуализации, мнение многих специалистов далеко не так радужно. Некоторые считают, что аппаратная виртуализация - рекламный ход производителей процессоров. Специалисты из VMWare усмотрели существенный минус в технологиях аппаратной виртуализации - их несовместимость с виртуализацией инструкции MMU (Memory Management Unit) - инструкции, осуществляющей доступ процессора к памяти и управляющей адресацией. Производители решения на базе аппаратной виртуализации, например Innotek и Xen, признаются, что используют возможности виртуализации, предоставляемый производителями процессоров, только в случаях, когда этот шаг действительно увеличивает производительность, и бывает это далеко не всегда. Возможно это связано с тем, что решения программной виртуализации хорошо проработаны и оптимизированы. Однако, нельзя не отметить один важный прорыв, достигнутый с помощью технологий аппаратной виртуализации - возможность запускать немодифицированные операционные системы в качестве гостевых ОС в системах паравиртуализации.

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

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

 

   Виртуализация даёт следующие преимущества:

  • Снижение затрат на оборудование Снижение затрат обеспечивается благодаря консолидации нескольких приложений и операционных систем на одном сервере.
  • Эффективное использование ресурсов Более 70% времени сервера простаивают, изнашиваясь и потребляя электроэнергию. Вряд ли имеет смысл заводить в рабочей среде сервер, у которого процессор будет загружен всего процентов на пять. Типичный пример такой загрузки — DHCP-сервер предприятия, выдающий адреса в аренду нескольким тысячам клиентов или  простаивает мощный 4-х процессорный SQL Server, который обслуживает ERP систему, в то время как слабый однопроцессорный  сервер SQL Server, обслуживающий «1C: Предприятие», загружен на 100%, часами обрабатывая сложную проводку. Чтобы решить проблему такого «недоиспользования», можно объединить в одном компьютере несколько ролей. Допустим, помимо DHCP-сервера вы устанавливаете на том же компьютере DNS-сервер, файловый сервер и сервер печати. Беда в том, что чем больше ролей исполняет компьютер, тем менее определенной становится его пиковая загруженность, в результате чего трудно будет уследить, чтобы компьютер не стал «узким местом». Кроме того, существенно расширяется фронт возможного нападения на компьютер, поскольку приходится одновременно держать открытыми многие порты, по которым прослушиваются обращения клиентов ко всем этим службам. Сложности возможны и с применением обновлений и исправлений. Допустим, вы решили применить обновление к одной из работающих на компьютере служб. Если это действие приведет к нежелательным последствиям, затронута будет не одна, а сразу несколько важных сетевых служб.

   Виртуализация позволяет консолидировать на одном  физическом компьютере несколько ролей сервера, представив их в виде самостоятельных виртуальных машин. Такой подход позволяет сократить «размножение серверов» и максимально эффективно задействовать доступное оборудование. Каждая роль при этом работает в собственной изолированной виртуальной среде, что повышает безопасность и упрощает управление. Консолидировав несколько (десятков) виртуальных машин на одном солидном комплекте серверного оборудования с отказоустойчивыми массивами RAID и компонентами, допускающими «горячую замену», можно до предела сократить возможное время простоя. Процесс переноса серверных ролей с физических компьютеров на виртуальные машины называется — консолидация серверов (server consolidation). Он, представляет собой основную причину растущей популярности виртуализации в крупных компаниях.

  • Функции высокой доступности  для приложений, не поддерживающих кластеризацию Очень часто требуется обеспечить безотказную работу того или иного приложения. Обеспечить отказоустойчивость  таких приложений, как SQL Server или Exchange Server, можно средствами кластеризации, но часто требуется обеспечить высокую доступность приложений, которые не поддерживают кластеризацию. Средствами виртуализации можно обеспечить высокую доступность целого сервера, независимо от того, какая ОС на нём работает и какие приложения под ней функционируют. Возможность автоматически определять вышедший из строя физический сервер и перемещает виртуальную машину на работающие сервера.
  • Сокращение административных издержек В сравнении с физической инфраструктурой, виртуальная инфраструктура обеспечивает целый ряд возможностей, упрощающих и ускоряющих процессы по поддержке и управлению ИТ-инфраструктурой:
    • Централизованное резервирование всех виртуальных серверов в режиме реального времени.
    • Технология  моментальных снимков состояния серверов. В отличие от снимков дисков с использованием технологии VSS, снимок сервера включает в себя снимок оперативной памяти. Т.е. появляется возможность откатить состояние работающего сервера, без перезагрузки и без завершения работы приложений (после отката состояния, все службы и приложения остаются в рабочем состоянии).
    • Быстрое развёртывание новых серверов путём простого дублирования уже развёрнутых.
    • Ввиду независимости виртуальных серверов от оборудования существует возможность быстрого и простого переноса операционных систем и приложений с одного физического сервера на другой с отличающейся платформой.
    • Централизованный мониторинг ресурсов и загруженности серверов.
    • Возможность распределения всех ресурсов физических серверов (процессоров, памяти, дисков) между виртуальными серверами.
  • Непрерывность бизнес-операций Еще один важный стимул к внедрению виртуализации — необходимость обеспечить непрерывность ведения бизнес-операций в случае катастрофического сбоя. Восстановление важной серверной роли с архивной ленты, после того как один из ваших компьютеров вдруг задымился, — долгий и болезненный процесс, особенно когда за спиной стоит исполнительный директор компании и нервно крутит пальцами в ожидании конца вашей работы. Конечно, замечательно, если у вас в шкафу спрятан готовый сервер на замену, но такое решение стоит денег — как в смысле оборудования, так и в смысле лицензий на использование ПО.

   Виртуализация и здесь придет на помощь. Гостевая (guest) ОС, работающая на виртуальной машине (ВМ), вообще говоря, не зависит от оборудования, на котором работает базовая (host) ОС. Поэтому вы с легкостью восстановите виртуальный сервер на системе, оборудование которой отлично от аппаратной комплектации «сгоревшего* компьютера. За счет облегчения процесса восстановления, благодаря виртуальным ма шинам вы сократите плановое и внеплановое время простоя и обеспечите доступность 1ажных сетевых служб.

  • Тестирование и разработка Последнее время новые технологии льются на нас непрерывным потоком. Тестирование новых платформ с помощью виртуализации также производится куда легче.
  • Виртуализация в центрах данных Особое место виртуализация занимает и в центрах данных, поскольку позволяет отделить рабочую нагрузку от оборудования и тем самым обеспечить его наиболее эффективное использование. Можно оперативно распределять необходимые ресурсы для текущей рабочей нагрузки, легко масштабируя решения как в сторону расширения, так и в сторону сокращения.
  • Поддержка старых операционных систем и приложений Виртуальные машины часто используются для работы приложений, функционирующих под управлением ранних операционных систем, таких как Windows NT. Если вы развернули операционную систему в виртуальной среде, то вам не придется для ее работы выделять отдельный физический сервер.
  • Максимизация серверной работы Посредством виртуализации вы можете изолировать приложения в отдельной виртуальной машине и предотвратить эффект домино, когда сбой в одном приложении может повлечь за собой сбой в работе всех остальных приложений. Например, если в виртуальной машине происходит сбой какого-либо приложения, то это никак не влияет на работу сервера и других виртуальных машин. Еще одна причина, по которой говорят, что виртуализация улучшает общую работу сервера, — это уменьшение конфликтов на аппаратном уровне. Виртуальные машины с их программными аппаратными драйверами предлагают пользователям стабильное рабочее окружение для приложений, благодаря чему последние работают в виртуальных средах практически без сбоев.

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

 

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

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