Опубликован: 20.12.2011 | Доступ: свободный | Студентов: 2241 / 418 | Оценка: 4.38 / 4.15 | Длительность: 10:10:00
Лекция 5:

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

< Лекция 4 || Лекция 5 || Лекция 6 >
Аннотация: В рамках данной лекции будут рассмотрены следующие вопросы: Особенности виртуализации серверов. Виртуальные машины. Гипервизоры. Определения. Типы. Список материалов для самостоятельного изучения.

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

Примечание. Материал лекции основан на разделе "Server Virtualization" книги "Understanding Microsoft Virtualizations Solutions" M. Tulloch (Chapter 2).

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

Таким образом, подход при котором на каждое приложение выделяется отдельный сервер является предпочтительным по критериям надежности и качества работы приложений, но и очень затратным.

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

Особенности виртуализации серверов

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

Иными словами, виртуализация серверов позволяет:

  • минимизировать затраты на покупку серверного оборудования;
  • снизить издержки на сопровождение серверной инфраструктуры;
  • упростить процесс резервирования (создание резервных виртуальных машин на разных физических серверах);
  • организовать изолированную виртуальную среду для тестирования и отладки работы приложений;
  • продлить срок использования программных решений более старых версий;
  • осуществить процесс миграции серверного окружения из одного места в другое.

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

Виртуальные машины

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

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

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

С учетом особенностей виртуальных машин, серверная виртуализация должна отвечать следующим требованиям:

  • Наличие интерфейса управления. Виртуализация серверов требует наличия управляющих интерфейсов для создания, настройки и мониторинга виртуальных машин (в т.ч. осуществлять все эти действия удаленно), функционирующих на компьютере.
  • Управление памятью. Виртуализация серверов требует наличия решения, которое гарантирует, что каждая виртуальная машина получит необходимое количество ресурсов памяти и то, что данные ресурсы изолированы от других виртуальных машин.
  • Наличие планировщика ресурсов. Необходимо наличие решения управления доступом виртуальных машин к аппаратным ресурсам. Администратор должен иметь возможность задавать приоритет доступа к ресурсам для каждой виртуальной машины.
  • Контроль состояния виртуальной машины. Виртуализация серверов требует наличия решения для отслеживания информации о текущем состоянии всех виртуальных машин на компьютере и управления переходами от одного состояния к другому.
  • Системы хранения и сетевого доступа. Серверная виртуализация требует наличия функционала, обеспечивающего представление аппаратных ресурсов таким образом, чтобы каждая виртуальная машина имела дело только со "своими" жесткими дисками и сетевым адаптером. Кроме того должна обеспечиваться возможность мультиплексного доступа к физическому оборудованию таким образом, чтобы ресурсы виртуальных машин были изолированы друг от друга.
  • Виртуальные устройства. Серверная виртуализация требует наличия виртуальных устройств, которые могут быть использованы операционной системой виртуальной машины, как логическое представление устройств определенно типа. К примеру, если виртуальная операционная система пытается получить доступ к физическому устройству, то она получает его через связанное виртуальное устройство, функционирующее аналогично физическому.
  • Драйверы виртуальных устройств. Серверная виртуализация требует наличия соответствующих драйверов виртуальных устройств в рамках операционной системы виртуальной машины, использующей эти устройства. Эти драйверы обеспечивают взаимодействие приложений с виртуальным представлением аппаратного обеспечения.

Таким образом, при выборе решения для виртуализации необходимо учитывать его соответствие указанным требованиям.

Гипервизоры

Понимание виртуализации серверов и виртуальных машин будет неполным без представления о гипервизоре.

Гипервизор - программное обеспечение или аппаратная схема, обеспечивающая единовременное параллельное функционирование нескольких операционных систем на одном компьютере.

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

Выделяют несколько типов гипервизоров.

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

Гипервизор 1го типа

Рис. 5.1. Гипервизор 1го типа

Поскольку данный гипервизор работает независимо от операционной системы он обеспечивает большую производительность, надежность и безопасность.

Гипервизоры первого типа используются в следующих решениях:

  • Microsoft Hyper - V.
  • VMware ESX Server.
  • Citrix XenServer.

Гипервизор второго типа выполняется в рамках хостовой операционной системы. Гостевые операционные системы виртуальных машин располагаются уровнем выше.

Гипервизор 2го типа

Рис. 5.2. Гипервизор 2го типа

Данный тип гипервизоров обеспечивает худшую производительность, по сравнению с первым типом.

Гипервизоры второго типа используются в следующих решениях:

  • Microsoft Virtual Server.
  • VMware Server.
  • Microsoft Virtual PC.

Следующим типом гипервизора является монолитный. В состав монолитного гипервизора включены драйверы аппаратных устройств.

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

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

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

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

Монолитный гипервизор используется в решении VMware ESX.

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

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

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

Данный тип гипервизоров обладает рядом преимуществ по сравнению с монолитными:

  • совместимость с любым оборудованием, драйверы которого располагаются в рамках родительской ОС.
  • более высокий уровень безопасности.
  • более высокая производительность гипервизора, поскольку он не должен взаимодействовать с драйверами устройств.

Примером использования данного типа гипервизора является Microsoft Hyper - V.

Термины

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

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

Гипервизор - программное, или аппаратное решение, позволяющее одновременное и параллельное функционирование нескольких операционных систем на одном компьютере.

Краткие итоги

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

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

< Лекция 4 || Лекция 5 || Лекция 6 >
Жазира Нургайып
Жазира Нургайып
Алексей Емельянов
Алексей Емельянов