Технологии виртуализации. Лекция Технологии виртуализации
Скачать 472.5 Kb.
|
1 2 Лекция Технологии виртуализации Согласно статистике средний уровень загрузки процессорных мощностей у серверов под управлением Windows не превышает 10%, у Unix-систем этот показатель лучше, но тем не менее в среднем не превышает 20%. Низкая эффективность использования серверов объясняется широко применяемым с начала 90-х годов подходом "одно приложение — один сервер", т. е. каждый раз для развертывания нового приложения компания приобретает новый сервер. Очевидно, что на практике это означает быстрое увеличение серверного парка и как следствие — возрастание затрат на его администрирование, энергопотребление и охлаждение, а также потребность в дополнительных помещениях для установки всё новых серверов и приобретении лицензий на серверную ОС. Виртуализация ресурсов физического сервера позволяет гибко распределять их между приложениями, каждое из которых при этом "видит" только предназначенные ему ресурсы и "считает", что ему выделен отдельный сервер, т. е. в данном случае реализуется подход "один сервер — несколько приложений", но без снижения производительности, доступности и безопасности серверных приложений. Кроме того, решения виртуализации дают возможность запускать в разделах разные ОС с помощью эмуляции их системных вызовов к аппаратным ресурсам сервера. Рис. 2.1. Виртуализация подразумевает запуск на одном физическом компьютере нескольких виртуальных компьютеров В основе виртуализации лежит возможность одного компьютера выполнять работу нескольких компьютеров благодаря распределению его ресурсов по нескольким средам. С помощью виртуальных серверов и виртуальных настольных компьютеров можно разместить несколько ОС и несколько приложений в едином местоположении. Таким образом, физические и географические ограничения перестают иметь какое-либо значение. Помимо энергосбережения и сокращения расходов благодаря более эффективному использованию аппаратных ресурсов, виртуальная инфраструктура обеспечивает высокий уровень доступности ресурсов, более эффективную систему управления, повышенную безопасность и усовершенствованную систему восстановления в критических ситуациях. В широком смысле понятие виртуализации представляет собой сокрытие настоящей реализации какого-либо процесса или объекта от истинного его представления для того, кто им пользуется. Продуктом виртуализации является нечто удобное для использования, на самом деле, имеющее более сложную или совсем иную структуру, отличную от той, которая воспринимается при работе с объектом. Иными словами, происходит отделение представления от реализации чего-либо. Виртуализация призвана абстрагировать программное обеспечение от аппаратной части. В компьютерных технологиях под термином "виртуализация" обычно понимается абстракция вычислительных ресурсов и предоставление пользователю системы, которая "инкапсулирует" (скрывает в себе) собственную реализацию. Проще говоря, пользователь работает с удобным для себя представлением объекта, и для него не имеет значения, как объект устроен в действительности. Сейчас возможность запуска нескольких виртуальных машин на одной физической вызывает большой интерес среди компьютерных специалистов, не только потому, что это повышает гибкость ИТ-инфраструктуры, но и потому, что виртуализация, на самом деле, позволяет экономить деньги. История развития технологий виртуализации насчитывает более сорока лет. Компания IBM была первой, кто задумался о создании виртуальных сред для различных пользовательских задач, тогда еще в мэйнфреймах. В 60-х годах прошлого века виртуализация представляла чисто научный интерес и была оригинальным решением для изоляции компьютерных систем в рамках одного физического компьютера. После появления персональных компьютеров интерес к виртуализации несколько ослаб ввиду бурного развития операционных систем, которые предъявляли адекватные требования к аппаратному обеспечению того времени. Однако бурный рост аппаратных мощностей компьютеров в конце девяностых годов прошлого века заставил ИТ-сообщество вновь вспомнить о технологиях виртуализации программных платформ. В 1999 г. компания VMware представила технологию виртуализации систем на базе x86 в качестве эффективного средства, способного преобразовать системы на базе x86 в единую аппаратную инфраструктуру общего пользования и назначения, обеспечивающую полную изоляцию, мобильность и широкий выбор ОС для прикладных сред. Компания VMware была одной из первых, кто сделал серьезную ставку исключительно на виртуализацию. Как показало время, это оказалось абсолютно оправданным. Сегодня WMware предлагает комплексную виртуализационную платформу четвертого поколения VMware vSphere 4, которая включает средства как для отдельного ПК, так и для центра обработки данных. Ключевым компонентом этого программного комплекса является гипервизор VMware ESX Server. Позднее в "битву" за место в этом модном направлении развития информационных технологий включились такие компании как Parallels (ранее SWsoft), Oracle (Sun Microsystems), Citrix Systems (XenSourse). Корпорация Microsoft вышла на рынок средств виртуализации в 2003 г. с приобретением компании Connectiх, выпустив свой первый продукт Virtual PC для настольных ПК. С тех пор она последовательно наращивала спектр предложений в этой области и на сегодня почти завершила формирование виртуализационной платформы, в состав которой входят такие решения как Windows 2008 Server R2 c компонентом Hyper-V, Microsoft Application Virtualization (App-v), Microsoft Virtual Desktop Infrastructure (VDI), Remote Desktop Services, System Center Virtual Machine Manager. На сегодняшний день поставщики технологий виртуализации предлагают надежные и легкоуправляемые платформы, а рынок этих технологий переживает настоящий бум. По оценкам ведущих экспертов, сейчас виртуализация входит в тройку наиболее перспективных компьютерных технологий. Многие эксперты предсказывают, что к 2015 году около половины всех компьютерных систем будут виртуальными. Повышенный интерес к технологиям виртуализации в настоящее время неслучаен. Вычислительная мощь нынешних процессоров быстро растет, и вопрос даже не в том, на что эту мощь расходовать, а в том, что современная "мода" на двухъядерные и многоядерные системы, проникшая уже и в персональные компьютеры (ноутбуки и десктопы), как нельзя лучше позволяет реализовать богатейший потенциал идей виртуализации операционных систем и приложений, выводя удобство пользования компьютером на новый качественный уровень. Технологии виртуализации становятся одним из ключевых компонентов (в том числе, и маркетинговых) в самых новых и будущих процессорах Intel и AMD, в операционных системах от Microsoft и ряда других компаний. Преимущества виртуализации Приведем основные достоинства технологий виртуализации: Эффективное использование вычислительных ресурсов. Вместо 3х, а то 10 серверов, загруженных на 5-20% можно использовать один, используемый на 50-70%. Кроме прочего, это еще и экономия электроэнергии, а также значительное сокращение финансовых вложений: приобретается один высокотехнологичный сервер, выполняющий функции 5-10 серверов. С помощью виртуализации можно достичь значительно более эффективного использования ресурсов, поскольку она обеспечивает объединение стандартных ресурсов инфраструктуры в единый пул и преодолевает ограничения устаревшей модели "одно приложение на сервер". Сокращение расходов на инфраструктуру: Виртуализация позволяет сократить количество серверов и связанного с ними ИТ-оборудования в информационном центре. В результате этого потребности в обслуживании, электропитании и охлаждении материальных ресурсов сокращаются, и на ИТ затрачивается гораздо меньше средств. Снижение затрат на программное обеспечение. Некоторые производители программного обеспечения ввели отдельные схемы лицензирования специально для виртуальных сред. Так, например, покупая одну лицензию на Microsoft Windows Server 2008 Enterprise, вы получаете право одновременно её использовать на 1 физическом сервере и 4 виртуальных (в пределах одного сервера), а Windows Server 2008 Datacenter лицензируется только на количество процессоров и может использоваться одновременно на неограниченном количестве виртуальных серверов. Повышение гибкости и скорости реагирования системы: Виртуализация предлагает новый метод управления ИТ-инфраструктурой и помогает ИТ-администраторам затрачивать меньше времени на выполнение повторяющихся заданий — например, на инициацию, настройку, отслеживание и техническое обслуживание. Многие системные администраторы испытывали неприятности, когда "рушится" сервер. И нельзя, вытащив жесткий диск, переставив его в другой сервер, запустить все как прежде… А установка? поиск драйверов, настройка, запуск… и на все нужны время и ресурсы. При использовании виртуального сервера — возможен моментальный запуск на любом "железе", а если нет подобного сервера, то можно скачать готовую виртуальную машину с установленным и настроенным сервером, из библиотек, поддерживаемых компаниями разработчиками гипервизоров (программ для виртуализации). Несовместимые приложения могут работать на одном компьютере. При использовании виртуализации на одном сервере возможна установка linux и windows серверов, шлюзов, баз данных и прочих абсолютно несовместимых в рамках одной не виртуализированной системы приложений. Повышение доступности приложений и обеспечение непрерывности работы предприятия: Благодаря надежной системе резервного копирования и миграции виртуальных сред целиком без перерывов в обслуживании вы сможете сократить периоды планового простоя и обеспечить быстрое восстановление системы в критических ситуациях. "Падение" одного виртуального сервера не ведет к потере остальных виртуальных серверов. Кроме того, в случае отказа одного физического сервера возможно произвести автоматическую замену на резервный сервер. Причем это происходит не заметно для пользователей без перезагузки. Тем самым обеспечивается непрерывность бизнеса. Возможности легкой архивации. Поскольку жесткий диск виртуальной машины обычно представляется в виде файла определенного формата, расположенный на каком-либо физическом носителе, виртуализация дает возможность простого копирования этого файла на резервный носитель как средство архивирования и резервного копирования всей виртуальной машины целиком. Возможность поднять из архива сервер полностью еще одна замечательная особенность. А можно поднять сервер из архива, не уничтожая текущий сервер и посмотреть положение дел за прошлый период. Повышение управляемости инфраструктуры: использование централизованного управления виртуальной инфраструктурой позволяет сократить время на администрирование серверов, обеспечивает балансировку нагрузки и "живую" миграцию виртуальных машин. Виртуальной машиной будем называть программную или аппаратную среду, которая скрывает настоящую реализацию какого-либо процесса или объекта от его видимого представления. Виртуальная машина — это полностью изолированный программный контейнер, который работает с собственной ОС и приложениями, подобно физическому компьютеру. Виртуальная машина действует так же, как физический компьютер, и содержит собственные виртуальные (т.е. программные) ОЗУ, жесткий диск и сетевой адаптер. ОС не может различить виртуальную и физическую машины. То же самое можно сказать о приложениях и других компьютерах в сети. Даже сама виртуальная машина считает себя "настоящим" компьютером. Но несмотря на это виртуальные машины состоят исключительно из программных компонентов и не включают оборудование. Это дает им ряд уникальных преимуществ над физическим оборудованием. Рис. 2.2. Виртуальная машина Рассмотрим основные особенности виртуальных машин более детально: Совместимость. Виртуальные машины, как правило, совместимы со всеми стандартными компьютерами. Как и физический компьютер, виртуальная машина работает под управлением собственной гостевой операционной системы и выполняет собственные приложения. Она также содержит все компоненты, стандартные для физического компьютера (материнскую плату, видеокарту, сетевой контроллер и т.д. ). Поэтому виртуальные машины полностью совместимы со всеми стандартными операционными системами, приложениями и драйверами устройств. Виртуальную машину можно использовать для выполнения любого программного обеспечения, пригодного для соответствующего физического компьютера. Изолированность. Виртуальные машины полностью изолированы друг от друга, как если бы они были физическими компьютерами Виртуальные машины могут использовать общие физические ресурсы одного компьютера и при этом оставаться полностью изолированными друг от друга, как если бы они были отдельными физическими машинами. Например, если на одном физическом сервере запущено четыре виртуальных машины, и одна из них дает сбой, это не влияет на доступность оставшихся трех машин. Изолированность — важная причина гораздо более высокой доступности и безопасности приложений, выполняемых в виртуальной среде, по сравнению с приложениями, выполняемыми в стандартной, невиртуализированной системе. Инкапсуляция. Виртуальные машины полностью инкапсулируют вычислительную среду. Виртуальная машина представляет собой программный контейнер, связывающий, или "инкапсулирующий" полный комплект виртуальных аппаратных ресурсов, а также ОС и все её приложения в программном пакете. Благодаря инкапсуляции виртуальные машины становятся невероятно мобильными и удобными в управлении. Например, виртуальную машину можно переместить или скопировать из одного местоположения в другое так же, как любой другой программный файл. Кроме того, виртуальную машину можно сохранить на любом стандартном носителе данных: от компактной карты Flash-памяти USB до корпоративных сетей хранения данных. Независимость от оборудования. Виртуальные машины полностью независимы от базового физического оборудования, на котором они работают. Например, для виртуальной машины с виртуальными компонентами (ЦП, сетевой картой, контроллером SCSI) можно задать настройки, абсолютно не совпадающие с физическими характеристиками базового аппаратного обеспечения. Виртуальные машины могут даже выполнять разные операционные системы (Windows, Linux и др.) на одном и том же физическом сервере. В сочетании со свойствами инкапсуляции и совместимости, аппаратная независимость обеспечивает возможность свободно перемещать виртуальные машины с одного компьютера на базе x86 на другой, не меняя драйверы устройств, ОС или приложения. Независимость от оборудования также дает возможность запускать в сочетании абсолютно разные ОС и приложения на одном физическом компьютере. Рассмотрим основные разновидности виртуализации, такие как: виртуализация серверов (полная виртуализация и паравиртуализация) виртуализация на уровне операционных систем, виртуализация приложений, виртуализация представлений. 1 2 |