облачные вычисления. БОРУХ Облачные вычисления. Лабораторная работа Практическое изучение Windows Azure 66 Лабораторная работа Применение облачных сервисов в организации сетевого взаимодействия 72 Ключи к тестам 74 Список литературы 75 3 введение изучение дисциплины Облачные вычисления
Скачать 1.96 Mb.
|
РАЗДЕЛ 2. ТЕХНОЛОГИИ ВИТРУАЛИЗАЦИИ 2.1. Технологии виртуализации Согласно статистике средний уровень загрузки процессорных мощностей у серверов под управлением Windows не превышает 10%, у Unix- систем этот показатель лучше, но, тем не менее, в среднем не превышает 20%. Низкая эффективность использования серверов объясняется широко применяемым с начала 90-х годов подходом «одно приложение – один сервер», т. е. каждый раз для развертывания нового приложения компания приобретает новый сервер. Очевидно, что на практике это означает быстрое увеличение серверного парка и, как следствие, возрастание затрат на его администрирование, энергопотребление и охлаждение, а также потребность в дополнительных помещениях для установки всё новых серверов и приобретении лицензий на серверную ОС. Виртуализация ресурсов физического сервера позволяет гибко распределять их между приложениями, каждое из которых при этом «видит» только предназначенные ему ресурсы и «считает», что ему выделен отдельный сервер, т. е. в данном случае реализуется подход «один сервер - несколько приложений», но без снижения производительности, доступности и безопасности серверных приложений. Кроме того, решения виртуализации дают возможность запускать в разделах разные ОС с помощью эмуляции их системных вызовов к аппаратным ресурсам сервера. Рис. 2.1. Виртуализация подразумевает запуск на одном физическом компьютере нескольких виртуальных компьютеров 27 В основе виртуализации лежит возможность одного компьютера выполнять работу нескольких компьютеров благодаря распределению его ресурсов по нескольким средам. С помощью виртуальных серверов и виртуальных настольных компьютеров можно разместить несколько ОС и несколько приложений в едином местоположении. Таким образом, физические и географические ограничения перестают иметь какое- либо значение. Помимо энергосбережения и сокращения расходов благодаря более эффективному использованию аппаратных ресурсов, виртуальная инфраструктура обеспечивает высокий уровень доступности ресурсов, более эффективную систему управления, повышенную безопасность и усовершенствованную систему восстановления в критических ситуациях. В широком смысле понятие виртуализации представляет собой сокрытие настоящей реализации какого-либо процесса или объекта от истинного его представления для того, кто им пользуется. Продуктом виртуализации является нечто удобное для использования, на самом деле, имеющее более сложную или совсем иную структуру, отличную от той, которая воспринимается при работе с объектом. Иными словами, происходит отделение представления от реализации чего-либо. Виртуализация призвана абстрагировать программное обеспечение от аппаратной части. В компьютерных технологиях под термином «виртуализация» обычно понимается абстракция вычислительных ресурсов и предоставление пользователю системы, которая «инкапсулирует» (скрывает в себе) собственную реализацию. Проще говоря, пользователь работает с удобным для себя представлением объекта, и для него не имеет значения, как объект устроен в действительности. Сейчас возможность запуска нескольких виртуальных машин на одной физической вызывает большой интерес среди компьютерных специалистов, не только потому, что это повышает гибкость ИТ-инфраструктуры, но и потому, что виртуализация, на самом деле, позволяет экономить деньги. История развития технологий виртуализации насчитывает более сорока лет. Компания IBM была первой, кто задумался о создании виртуальных сред для различных пользовательских задач, тогда еще в мэйнфреймах. В 60-х годах прошлого века виртуализация представляла чисто научный интерес и была оригинальным решением для изоляции компьютерных систем в рамках одного физического компьютера. После появления персональных компьютеров интерес к виртуализации несколько ослаб ввиду бурного развития операционных систем, которые предъявляли адекватные требования к аппаратному обеспечению того времени. Однако бурный рост аппаратных мощностей компьютеров в конце девяностых годов прошлого века заставил ИТ-сообщество вновь вспомнить о технологиях виртуализации программных платформ. В 1999 г. компания VMware представила технологию виртуализации систем на базе x86 в качестве эффективного средства, способного 28 преобразовать системы на базе 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), RemoteDesktop Services, System Center Virtual Machine Manager. На сегодняшний день поставщики технологий виртуализации предлагают надежные и легкоуправляемые платформы, а рынок этих технологий переживает настоящий бум. По оценкам ведущих экспертов, сейчас виртуализация входит в тройку наиболее перспективных компьютерных технологий. Многие эксперты предсказывают, что к 2015 году около половины всех компьютерных систем будут виртуальными. Повышенный интерес к технологиям виртуализации в настоящее время неслучаен. Вычислительная мощь нынешних процессоров быстро растет, и вопрос даже не в том, на что эту мощь расходовать, а в том, что современная «мода» на двухъядерные и многоядерные системы, проникшая уже и в персональные компьютеры (ноутбуки и десктопы), как нельзя лучше позволяет реализовать богатейший потенциал идей виртуализации операционных систем и приложений, выводя удобство пользования компьютером на новый качественный уровень. Технологии виртуализации становятся одним из ключевых компонентов (в том числе, и маркетинговых) в самых новых и будущих процессорах Intel и AMD, в операционных системах от Microsoft и ряда других компаний. 2.2. Преимущества виртуализации Приведем основные достоинства технологий виртуализации: 1. Эффективное использование вычислительных ресурсов. Вместо 3х, а то 10 серверов, загруженных на 5-20% можно использовать один, 29 используемый на 50-70%. Кроме прочего, это еще и экономия электроэнергии, а также значительное сокращение финансовых вложений: приобретается один высокотехнологичный сервер, выполняющий функции 5-10 серверов. С помощью виртуализации можно достичь значительно более эффективного использования ресурсов, поскольку она обеспечивает объединение стандартных ресурсов инфраструктуры в единый пул и преодолевает ограничения устаревшей модели «одно приложение на сервер». 2. Сокращение расходов на инфраструктуру. Виртуализация позволяет сократить количество серверов и связанного с ними ИТ-оборудования в информационном центре. В результате этого потребности в обслуживании, электропитании и охлаждении материальных ресурсов сокращаются, и на ИТ затрачивается гораздо меньше средств. 3. Снижение затрат на программное обеспечение. Некоторые производители программного обеспечения ввели отдельные схемы лицензирования специально для виртуальных сред. Так, например, покупая одну лицензию на Microsoft Windows Server 2008 Enterprise, вы получаете право одновременно её использовать на 1 физическом сервере и 4 виртуальных (в пределах одного сервера), а Windows Server 2008 Datacenter лицензируется только на количество процессоров и может использоваться одновременно на неограниченном количестве виртуальных серверов. 4. Повышение гибкости и скорости реагирования системы. Виртуализация предлагает новый метод управления ИТ- инфраструктурой и помогает ИТ-администраторам затрачивать меньше времени на выполнение повторяющихся заданий, например, на инициацию, настройку, отслеживание и техническое обслуживание. Многие системные администраторы испытывали неприятности, когда «рушится» сервер. И нельзя, вытащив жесткий диск, переставив его в другой сервер, запустить все как прежде. А установка, поиск драйверов, настройка, запуск? И на все нужны время и ресурсы. При использовании виртуального сервера возможен моментальный запуск на любом «железе», а если нет подобного сервера, то можно скачать готовую виртуальную машину с установленным и настроенным сервером, из библиотек, поддерживаемых компаниями разработчиками гипервизоров (программ для виртуализации). 5. Несовместимые приложения могут работать на одном компьютере. При использовании виртуализации на одном сервере возможна установка linux и windows серверов, шлюзов, баз данных и прочих абсолютно несовместимых в рамках одной не виртуализированной системы приложений. 6. Повышение доступности приложений и обеспечение непрерывности работы предприятия.Благодаря надежной системе резервного копирования и миграции виртуальных сред целиком без перерывов в 30 обслуживании вы сможете сократить периоды планового простоя и обеспечить быстрое восстановление системы в критических ситуациях. «Падение» одного виртуального сервера не ведет к потере остальных виртуальных серверов. Кроме того, в случае отказа одного физического сервера возможно произвести автоматическую замену на резервный сервер. Причем это происходит не заметно для пользователей без перезагрузки. Тем самым обеспечивается непрерывность бизнеса. 7. Возможности легкой архивации. Поскольку жесткий диск виртуальной машины обычно представляется в виде файла определенного формата, расположенный на каком-либо физическом носителе, виртуализация дает возможность простого копирования этого файла на резервный носитель как средство архивирования и резервного копирования всей виртуальной машины целиком. Возможность поднять из архива сервер полностью еще одна замечательная особенность. А можно поднять сервер из архива, не уничтожая текущий сервер и посмотреть положение дел за прошлый период. 8. Повышение управляемости инфраструктуры. Использование централизованного управления виртуальной инфраструктурой позволяет сократить время на администрирование серверов, обеспечивает балансировку нагрузки и «живую» миграцию виртуальных машин. Виртуальной машиной будем называть программную или аппаратную среду, которая скрывает настоящую реализацию какого-либо процесса или объекта от его видимого представления. Виртуальная машина - это полностью изолированный программный контейнер, который работает с собственной ОС и приложениями, подобно физическому компьютеру. Виртуальная машина действует так же, как физический компьютер, и содержит собственные виртуальные (т.е. программные) ОЗУ, жесткий диск и сетевой адаптер. ОС не может различить виртуальную и физическую машины. То же самое можно сказать о приложениях и других компьютерах в сети. Даже сама виртуальная машина считает себя «настоящим» компьютером. Но, несмотря на это, виртуальные машины состоят исключительно из программных компонентов и не включают оборудование. Это дает им ряд уникальных преимуществ над физическим оборудованием. Рис. 2.2. Виртуальная машина 31 Рассмотрим основные особенности виртуальных машин более детально: 1. Совместимость. Виртуальные машины, как правило, совместимы со всеми стандартными компьютерами. Как и физический компьютер, виртуальная машина работает под управлением собственной гостевой операционной системы и выполняет собственные приложения. Она также содержит все компоненты, стандартные для физического компьютера (материнскую плату, видеокарту, сетевой контроллер и т.д.). Поэтому виртуальные машины полностью совместимы со всеми стандартными операционными системами, приложениями и драйверами устройств. Виртуальную машину можно использовать для выполнения любого программного обеспечения, пригодного для соответствующего физического компьютера. 2. Изолированность. Виртуальные машины полностью изолированы друг от друга, как если бы они были физическими компьютерами. Виртуальные машины могут использовать общие физические ресурсы одного компьютера и при этом оставаться полностью изолированными друг от друга, как если бы они были отдельными физическими машинами. Например, если на одном физическом сервере запущено четыре виртуальных машины, и одна из них дает сбой, это не влияет на доступность оставшихся трех машин. Изолированность - важная причина гораздо более высокой доступности и безопасности приложений, выполняемых в виртуальной среде, по сравнению с приложениями, выполняемыми в стандартной, невиртуализированной системе. 3. Инкапсуляция. Виртуальные машины полностью инкапсулируют вычислительную среду. Виртуальная машина представляет собой программный контейнер, связывающий, или «инкапсулирующий» полный комплект виртуальных аппаратных ресурсов, а также ОС и все её приложения в программном пакете. Благодаря инкапсуляции виртуальные машины становятся невероятно мобильными и удобными в управлении. Например, виртуальную машину можно переместить или скопировать из одного местоположения в другое так же, как любой другой программный файл. Кроме того, виртуальную машину можно сохранить на любом стандартном носителе данных: от компактной карты Flash-памяти USB до корпоративных сетей хранения данных. 4. Независимость от оборудования. Виртуальные машины полностью независимы от базового физического оборудования, на котором они работают. Например, для виртуальной машины с виртуальными компонентами (ЦП, сетевой картой, контроллером SCSI) можно задать настройки, абсолютно не совпадающие с физическими характеристиками базового аппаратного обеспечения. Виртуальные машины могут даже выполнять разные операционные системы (Windows, Linux и др.) на одном и том же физическом сервере. В сочетании со свойствами инкапсуляции и совместимости, аппаратная независимость обеспечивает 32 возможность свободно перемещать виртуальные машины с одного компьютера на базе x86 на другой, не меняя драйверы устройств, ОС или приложения. Независимость от оборудования также дает возможность запускать в сочетании абсолютно разные ОС и приложения на одном физическом компьютере. Рассмотрим основные разновидности виртуализации, такие как: виртуализация серверов (полная виртуализация и паравиртуализация); виртуализация на уровне операционных систем; виртуализация приложений; виртуализация представлений. 2.3. Виртуализация серверов Сегодня, говоря о технологиях виртуализации, как правило, подразумевают виртуализацию серверов, так как последняя становится наиболее популярным решением на рынке IT. Виртуализация серверов подразумевает запуск на одном физическом сервере нескольких виртуальных серверов. Виртуальные машины или сервера представляют собой приложения, запущенные на хостовой операционной системе, которые эмулируют физические устройства сервера. На каждой виртуальной машине может быть установлена операционная система, на которую могут быть установлены приложения и службы. Типичные представители это продукты VmWare (ESX, Server, Workstation) и Microsoft (Hyper-V, Virtual Server, Virtual PC). Рис. 2.3. Виртуализация серверов Центры обработки данных используют большое пространство и огромное количество энергии, особенно если прибавить к этому сопровождающие их системы охлаждения и инфраструктуру. Средствами технологий виртуализации выполняется консолидация серверов, 33 расположенных на большом количестве физических серверов в виде виртуальных машин на одном высокопроизводительном сервере. Число физических машин, необходимых для работы в качестве серверов уменьшается, что снижает количество энергии, необходимой для работы машин и пространство, требуемое для их размещения. Сокращение в количестве серверов и пространстве уменьшает количество энергии, необходимой для их охлаждения. При меньшем расходе энергии вырабатывается меньшее количество углекислого газа. Данный показатель, например в Европе, имеет достаточно важную роль. Немаловажным фактором является финансовая сторона. Виртуализация является важным моментом экономии. Виртуализация не только уменьшает потребность в приобретении дополнительных физических серверов, но и минимизирует требования к их размещению. Использование виртуального сервера предоставляет преимущества по быстроте внедрения, использования и управления, что позволяет уменьшить время ожидания развертывания какого-либо проекта. Не так давно появились модели последнего поколения процессоров в архитектуре x86 корпораций AMD и Intel, где производители впервые добавили технологии аппаратной поддержки виртуализации. До этого виртуализация поддерживалась программно, что естественно приводила к большим накладным расходам производительности. Для появившихся в восьмидесятых годах двадцатого века персональных компьютерах проблема виртуализации аппаратных ресурсов, казалось бы, не существовала по определению, поскольку каждый пользователь получал в свое распоряжение весь компьютер со своей ОС. Но по мере повышения мощности ПК и расширения сферы применения x86- систем ситуация быстро поменялась. «Диалектическая спираль» развития сделала свой очередной виток, и на рубеже веков начался очередной цикл усиления центростремительных сил по концентрации вычислительных ресурсов. В начале нынешнего десятилетия на фоне растущей заинтересованности предприятий в повышении эффективности своих компьютерных средств стартовал новый этап развития технологий виртуализации, который сейчас преимущественно связывается именно с использованием архитектуры x86. Отметим, что хотя в идеях x86-виртуализации в теоретическом плане вроде бы ничего неизвестного ранее не было, речь шла о качественно новом для ИТ-отрасли явлении по сравнению с ситуацией 20-летней давности. Дело в том, что в аппаратно-программной архитектуре мэйнфреймов и Unix- компьютеров вопросы виртуализации сразу решались на базовом уровне и аппаратном уровне. Система же x86 строилась совсем не в расчете на работу в режиме датацентров, и ее развитие в направлении виртуализации - это довольно сложный эволюционный процесс со множеством разных вариантов решения задачи. 34 Важный момент заключается также в качественно разных бизнес-моделях развития мэйнфреймов и x86. В первом случае речь идет фактически о моновендорном программно-аппаратном комплексе для поддержки довольно ограниченного круга прикладного ПО для достаточно узкого круга крупных заказчиков. Во втором - мы имеем дело с децентрализованным сообществом производителей техники, поставщиков базового ПО и огромной армией разработчиков прикладного программного обеспечения. Использование средств x86-виртуализации началось в конце 90-х с рабочих станций: одновременно с увеличением числа версий клиентских ОС постоянно росло и количество людей (разработчиков ПО, специалистов по технической поддержке, экспертов), которым нужно было на одном ПК иметь сразу несколько копий различных ОС. Виртуализация для серверной инфраструктуры стала применяться немного позднее, и связано это было, прежде всего, с решением задач консолидации вычислительных ресурсов. Но тут сразу сформировалось два независимых направления: поддержка неоднородных операционных сред (в том числе, для работы унаследованных приложений). Этот случай наиболее часто встречается в рамках корпоративных информационных систем. Технически проблема решается путем одновременной работы на одном компьютере нескольких виртуальных машин, каждая из которых включает экземпляр операционной системы. Но реализация этого режима выполнялась с помощью двух принципиально разных подходов: полной виртуализации и паравиртуализации ; поддержка однородных вычислительных сред подразумевает изоляцию служб в рамках одного экземпляра ядра операционной системы ( виртуализация на уровне ОС ), что наиболее характерно для хостинга приложений провайдерами услуг. Конечно, тут можно использовать и вариант виртуальных машин, но гораздо эффективнее создание изолированных контейнеров на базе одного ядра одной ОС. Следующий жизненный этап технологий x86-виртуализации стартовал в 2004-2006 гг. и был связан с началом их массового применения в корпоративных системах. Соответственно, если раньше разработчики в основном занимались созданием технологий исполнения виртуальных сред, то теперь на первый план стали выходить задачи управления этими решениями и их интеграции в общую корпоративную ИТ-инфраструктуру. Одновременно обозначилось заметное повышение спроса на виртуализацию со стороны персональных пользователей (но если в 90-х это были разработчики и тестеры, то сейчас речь уже идет о конечных пользователях как профессиональных, так и домашних). Многие трудности и проблемы разработки технологий виртуализации связаны с преодолением унаследованных особенностей программно- аппаратной архитектуры x86. Для этого существует несколько базовых методов: 35 2.4. Полная виртуализация. Паравиртуализация Полная виртуализация (Full, Native Virtualization) – используются не модифицированные экземпляры гостевых операционных систем, а для поддержки работы этих ОС служит общий слой эмуляции их исполнения поверх хостовой ОС, в роли которой выступает обычная операционная система. Такая технология применяется, в частности, в VMware Workstation, VMware Server (бывший GSX Server), Parallels Desktop, Parallels Server, MS Virtual PC, MS Virtual Server, Virtual Iron. К достоинствам данного подхода можно причислить относительную простоту реализации, универсальность и надежность решения; все функции управления берет на себя хост-ОС. Недостатки — высокие дополнительные накладные расходы на используемые аппаратные ресурсы, отсутствие учета особенностей гостевых ОС, меньшая, чем нужно, гибкость в использовании аппаратных средств. Рис. 2.4.1. Полная виртуализация Паравиртуализация (paravirtualization). Модификация ядра гостевой ОС выполняется таким образом, что в нее включается новый набор API, через который она может напрямую работать с аппаратурой, не конфликтуя с другими виртуальными машинами. При этом нет необходимости задействовать полноценную ОС в качестве хостового ПО, функции которого в данном случае исполняет специальная система, получившая название гипервизора (hypervisor). Именно этот вариант является сегодня наиболее актуальным направлением развития серверных технологий виртуализации и применяется в VMware ESX Server, Xen (и решениях других поставщиков на базе этой технологии), Microsoft Hyper-V. Достоинства данной технологии заключаются в отсутствии потребности в хостовой ОС – ВМ, устанавливаются фактически на «голое железо», а аппаратные ресурсы используются эффективно. Недостатки - в сложности реализации подхода и необходимости создания специализированной ОС-гипервизора. 36 Рис. 2.4.2.Паравиртуализация 2.5. Виртуализация на уровне ядра ОС. Виртуализация приложений. Виртуализация представлений Виртуализация на уровне ядра ОС (operating system- level virtualization). Этот вариант подразумевает использование одного ядра хостовой ОС для создания независимых параллельно работающих операционных сред. Для гостевого ПО создается только собственное сетевое и аппаратное окружение. Такой вариант используется в Virtuozzo (для Linux и Windows), OpenVZ (бесплатный вариант Virtuozzo) и Solaris Containers. Достоинства - высокая эффективность использования аппаратных ресурсов, низкие накладные технические расходы, отличная управляемость, минимизация расходов на приобретение лицензий. Недостатки - реализация только однородных вычислительных сред. Рис. 2.5.1. Виртуализация на уровне ОС Виртуализация приложений. Виртуализация приложений подразумевает применение модели сильной изоляции прикладных программ с управляемым взаимодействием с ОС, при которой виртуализируется каждый экземпляр приложений, все его основные компоненты: файлы (включая системные), реестр, шрифты, INI-файлы, COM-объекты, службы. Приложение исполняется без процедуры инсталляции в традиционном ее понимании и может запускаться прямо с внешних носителей (например, с флэш-карт или из сетевых папок). С точки зрения ИТ-отдела, такой подход имеет очевидные преимущества: ускорение развертывания настольных систем и возможность управления ими, сведение к минимуму не только конфликтов между приложениями, но и потребности в 37 тестировании приложений на совместимость. Данная технология позволяет использовать на одном компьютере, а точнее в одной и той же операционной системе несколько несовместимых между собой приложений одновременно. Виртуализация приложений позволяет пользователям запускать одно и то же заранее сконфигурированное приложение или группу приложений с сервера. При этом приложения будут работать независимо друг от друга, не внося никаких изменений в операционную систему. Фактически именно такой вариант виртуализации используется в Sun Java Virtual Machine, Microsoft Application Virtualization (ранее называлось Softgrid), Thinstall (в начале 2008 г. вошла в состав VMware), Symantec/Altiris. Рис. 2.5.2. Виртуализация приложений Виртуализация представлений.Виртуализация представлений (рабочих мест). Виртуализация представлений подразумевает эмуляцию интерфейса пользователя. Т.е. пользователь видит приложение и работает с ним на своём терминале, хотя на самом деле приложение выполняется на удалённом сервере, а пользователю передаётся лишь картинка удалённого приложения. В зависимости от режима работы пользователь может видеть удалённый рабочий стол и запущенное на нём приложение, либо только само окно приложения. 38 Рис. 2.5.3. Виртуализация представлений Потребности бизнеса меняют наши представления об организации рабочего процесса. Персональный компьютер, ставший за последние десятилетия неотъемлемым атрибутом офиса и средством выполнения большинства офисных задач, перестает успевать за растущими потребностями бизнеса. Реальным инструментом пользователя оказывается программное обеспечение, которое лишь привязано к ПК, делая его промежуточным звеном корпоративной информационной системы. В результате активное развитие получают «облачные» вычисления, когда пользователи имеют доступ к собственным данным, но не управляют и не задумываются об инфраструктуре, операционной системе и собственно программном обеспечении, с которым они работают. Вместе с тем, с ростом масштабов организаций, использование в ИТ- инфраструктуре пользовательских ПК вызывает ряд сложностей: большие операционные издержки на поддержку компьютерного парка; сложность, связанная с управлением настольными ПК; обеспечение пользователям безопасного и надежного доступа к ПО и приложениям, необходимым для работы; техническое сопровождение пользователей; установка и обновление лицензий на ПО и техническое обслуживание; резервное копирование и т.д. Уйти от этих сложностей и сократить издержки, связанные с их решением, возможно благодаря применению технологии виртуализации рабочих мест сотрудников на базе инфраструктуры виртуальных ПК – Virtual Desktop Infrastructure (VDI). VDI позволяет отделить пользовательское ПО от аппаратной части – персонального компьютера, - и осуществлять доступ к клиентским приложениям через терминальные устройства. VDI - комбинация соединений с удаленным рабочим столом и виртуализации. На обслуживающих серверах работает множество виртуальных машин, с такими клиентскими операционными системами, как Windows 7, Windows Vista и Windows XP или Linux операционными 39 системами. Пользователи дистанционно подключаются к виртуальной машине своей настольной среды. На локальных компьютерах пользователей в качестве удаленного настольного клиента могут применяться терминальные клиенты, старое оборудование с Microsoft Windows Fundamentals или дистрибутив Linux. VDI полностью изолирует виртуальную среду пользователей от других виртуальных сред, так как каждый пользователь подключается к отдельной виртуальной машине. Иногда используется статическая инфраструктура VDI, в которой пользователь всегда подключается к той же виртуальной машине, в других случаях динамическая VDI, в которой пользователи динамически подключаются к различным виртуальным машинам, и виртуальные машины создаются по мере необходимости. При использовании любой модели важно хранить данные пользователей вне виртуальных машин и быстро предоставлять приложения. Наряду с централизованным управлением и простым предоставлением компьютеров, VDI обеспечивает доступ к настольной среде из любого места, если пользователи могут дистанционно подключиться к серверу. Представим, что на клиентском компьютере возникла неполадка. Придется выполнить диагностику и, возможно, переустановить операционную систему. Благодаря VDI в случае неполадок можно просто удалить виртуальную машину и за несколько секунд создать новую среду, с помощью созданного заранее шаблона виртуальной машины. VDI обеспечивает дополнительную безопасность, так как данные не хранятся локально на настольном компьютере или ноутбуке. Как пример виртуализации представлений можно рассматривать и технологию тонких терминалов, которые фактически виртуализируют рабочие места пользователей настольных систем: пользователь не привязан к какому-то конкретному ПК, а может получить доступ к своим файлам и приложениям, которые располагаются на сервере, с любого удаленного терминала после выполнения процедуры авторизации. Все команды пользователя и изображение сеанса на мониторе эмулируются с помощью ПО управления тонкими клиентами. Применение этой технологии позволяет централизовать обслуживание клиентских рабочих мест и резко сократить расходы на их поддержку, например, для перехода на следующую версию клиентского приложения новое ПО нужно инсталлировать только один раз на сервере. 40 Рис. 2.5.4. Пример тонкого клиента. Терминал Sun Ray. Одним из наиболее известных тонких клиентов является терминал Sun Ray, для организации работы которого используется программное обеспечение Sun Ray Server Software. Для начала сеанса Sun Ray достаточно лишь вставить в это устройство идентификационную смарт-карту. Применение смарт-карты существенно повышает мобильность пользователя - он может переходить с одного Sun Ray на другой, переставляя между ними свою карточку и сразу продолжать работу со своими приложениями с того места, где он остановился на предыдущем терминале. А отказ от жесткого диска не только обеспечивает мобильность пользователей и повышает безопасность данных, но и существенно снижает энергопотребление по сравнению с обычными ПК, поэтому терминал Sun не имеет вентилятора и работает практически бесшумно. Кроме того, сокращение числа компонентов тонкого терминала уменьшает и риск выхода его из строя, а, следовательно, экономит расходы на его обслуживание. Еще одно преимущество Sun Ray - это существенно расширенный по сравнению с обычными ПК жизненный цикл продукта, поскольку в нём нет компонентов, которые могут морально устареть. 2.6. Где применяется виртуализация Виртуализация операционных систем за последние три-четыре года очень хорошо продвинулась вперед, как в технологическом, так и в маркетинговом смысле. С одной стороны, пользоваться продуктами виртуализации стало намного проще, они стали более надежными и функциональными, а с другой – нашлось немало новых интересных применений виртуальным машинам. Сферу применения виртуализации можно определить, как «место, где есть компьютеры», однако на данный момент можно обозначить следующие варианты использования продуктов виртуализации: 1. Консолидация серверов. В данный момент приложения, работающие на серверах в IT-инфраструктуре компаний, создают небольшую 41 нагрузку на аппаратные ресурсы серверов (в среднем 5-15 процентов). Виртуализация позволяет мигрировать с этих физических серверов на виртуальные и разместить их все на одном физическом сервере, увеличив его загрузку до 60-80 процентов и, повысив тем самым коэффициент использования аппаратуры, что позволяет существенно сэкономить на аппаратуре, обслуживании и электроэнергии. 2. Разработка и тестирование приложений. Множество продуктов виртуализации позволяют запускать несколько различных операционных систем одновременно, позволяя тем самым разработчикам и тестерам программного обеспечения тестировать их приложения на различных платформах и конфигурациях. Также удобные средства по созданию «снимков» текущего состояния системы одним кликом мыши и такого же простого восстановления из этого состояния, позволяют создавать тестовые окружения для различных конфигураций, что существенно повышает скорость и качество разработки. 3. Использование в бизнесе. Этот вариант использования виртуальных машин является наиболее обширным и творческим. К нему относится все, что может понадобиться при повседневном обращении с IT- ресурсами в бизнесе. Например, на основе виртуальных машин можно легко создавать резервные копии рабочих станций и серверов (просто скопировав папку), строить системы, обеспечивающие минимальное время восстановления после сбоев и т. п. К данной группе вариантов использования относятся все те бизнес-решения, которые используют основные преимущества виртуальных машин. 4. Использование виртуальных рабочих станций. С приходом эры виртуальных машин будет бессмысленно делать себе рабочую станцию с ее привязкой к аппаратуре. Теперь создав однажды виртуальную машину со своей рабочей или домашней средой, можно будет использовать её на любом другом компьютере. Также можно использовать готовые шаблоны виртуальных машин (Virtual Appliances), которые решают определенную задачу (например, сервер приложений). Концепция такого использования виртуальных рабочих станций может быть реализована на основе хост-серверов для запуска на них перемещаемых десктопов пользователей (нечто подобное мэйнфреймам). В дальнейшем эти десктопы пользователь может забрать с собой, не синхронизируя данные с ноутбуком. Этот вариант использования также предоставляет возможность создания защищенных пользовательских рабочих станций, которые могут быть использованы, например, для демонстрации возможностей программы заказчику. Можно ограничить время использования виртуальной машины — и по прошествии этого времени виртуальная машина перестанет запускаться. В этом варианте использования заложены большие возможности. 42 Все перечисленные варианты использования виртуальных машин фактически являются лишь сферами их применения в данный момент, со временем, несомненно, появятся новые способы заставить виртуальные машины работать в различных отраслях IT. 2.7. Обзор технологий виртуализации OpenVZ. Технология виртуализации на уровне ядра ОС, базирующаяся на ядре Linux. Состоит из модифицированного ядра и пользовательских утилит. OpenVZ является бесплатной открытой технологией, разрабатываемой сообществом. Распространяется на условиях лицензии GNU GPL v.2. Каждая виртуальная машина имеет свои собственные файлы, процессы, пользователей, IP адрес и, благодаря виртуальному сетевому устройству, правила маршрутизации. Администратор сервера может дать доступ к ре- альным устройствам, таким как сетевые адаптеры, разделы дисков и т. д. OpenVZ обладает гибкой системой управления ресурсами. Имеется набор из примерно 20 параметров, которые выбраны для того, чтобы покрыть все аспекты работы виртуальной машины так, чтобы никакая из них не могла злоупотребить каким-либо ресурсом, ограниченным для всего сервера, и таким образом помешать другим виртуальным машинам. Ресурсы, которые считаются и контролируются, — это, в основном, оперативная память и различные объекты в ядре, например, разделяемые сегменты памяти IPC, сетевые буферы и т. п. Возможно изменение лимитов на ресурсы во время работы виртуальных машин. Виртуализация на уровне операционной системы в OpenVZ даёт лучшую производительность, масштабируемость, плотность размещения, динамическое управление ресурсами, а также лёгкость в администрировании. Накладные расходы на виртуализацию очень малы, и падение производительности составляет всего 1- 3%, по сравнению с обычными Linux-системами. OpenVZ позволяет производить «живую» миграцию виртуальных машин, то есть без остановки их работы. К сожалению, данная платформа может устанавливаться и виртуализировать только ОС, основанные на Linux (Debian, Ubuntu и др.). Таблица сравнения виртуальных машин Названи е Создатель ОС хост- машины Поддерживаем ые гостевые ОС Принцип действия Лицензия OpenVZ Проект сообщества, Parallels, Inc. Linux Различные дистрибутивы Linux Виртуализ ация на уровне ОС GPL Parallels Parallels, Inc. Windows, Windows, Виртуализ Проприе тарная 43 Virtuozz o Contain ers Linux, Mac OS X (Intel version) Linux, FreeBSD, OS/2, eComStation, MS-DOS, Solaris ация на уровне ОС Xen Кембриджс кий университет , Intel, AMD NetBSD, Linux Linux, NetBSD, FreeBSD, OpenBSD, Windows XP & 2003 Server (требует версию не ниже 3.0 и про- цессор, поддерживающ ий технологию Vanderpool или Pacifica) Аппаратна я виртуализа ция GPL KVM Red Hat Linux Linux, HURD, Windows, xBSD, Darwin, QNX, MINIX, Haiku, Amiga Research OS, ReactOS, Plan 9, MS DOS, Free DOS, Solaris Аппаратна я виртуализа ция GPL2 Parallels Virtuozzo Containers. Решение для виртуализации на уровне операционной системы, является проприетарной коммерческой технологией, разрабатываемой компанией Parallels. Рассматриваемая технология позволяет на одном физическом сервере запускать множество изолированных копий операционной системы. Существуют версии Parallels Virtuozzo Containers для работы в средах Linux и Windows. Версия для Linux базируется на проекте OpenVZ. Основным преимуществом Parallels Virtuozzo Containers по сравнению с OpenVZ является простота использования благодаря наличию удобных инструментов для управления и конфигурации виртуальных машин. Xen.Бесплатная открытая технология аппаратной виртуализации, распространяемая на условиях лицензии GNU GPL. Xen начинался как исследовательский проект Кембриджского университета, в настоящее время разрабатывается компанией Citrix. 44 Каждая виртуальная машина является полностью изолированной, обладает собственной файловой системой, виртуальным сетевым адаптером. Хорошо поддерживаются различные аппаратные средства. В Xen имеется система управления ресурсами, в частности процессорное время, оперативная память и т. д. Xen поддерживает миграцию виртуальных машин по сети. Миграция может происходить с выключением гостевой системы, либо прямо в процессе работы, так называемая «живая» миграция без потери доступности. Не- обходимо, чтобы оба физическиx сервера Xen видели одно и то же хранилище, на котором находятся данные виртуальной машины. Это требуется потому, что при миграции виртуальной машины её файловая система не копируется, так как для этого необходимо слишком много времени даже в случае быстрой сети. Отличительной особенностью данной технологии виртуализации является паравиртуализация. Паравиртуализация — адаптация ядра исполняемой ОС для работы совместно с Xen. Позволяет достичь очень высокой производительности за счёт отсутствия эмуляции, простоты интерфейсов и учёта существования гипервизора при выполнении системных вызовов в коде ядра. В большинстве случаев изменения при портировании ОС затрагивают только ядро ОС. Xen позволяет создавать виртуальные машины с различными ОС, такими как Linux, FreeBSD, Windows и т. д. KVM.Бесплатное открытое программное обеспечение для аппаратной виртуализации. Состоит из загружаемого модуля ядра, предоставляющего базовый сервис виртуализации и компонентов пользовательского режима. Программное обеспечение KVM создано, разрабатывается и поддерживается фирмой Qumranet, которая впоследствии была куплена RedHat. Сам по себе KVM не выполняет эмуляции. Вместо этого программа, работающая в пространстве пользователя, использует интерфейс /dev/kvm для настройки адресного пространства гостя виртуальной машины, через него же эмулирует устройства ввода-вывода и видеоадаптер. KVM позволяет виртуальным машинам использовать немодифицированные образы дисков QEMU, VMware и других, содержащих операционные системы. Каждая виртуальная машина имеет своё собственное виртуальное аппаратное обеспечение: сетевые карты, диск, видеокарту и т. д. KVM позволяет устанавливать лимиты на ресурсы для виртуальных машин. Как и в других технологиях, в KVM имеется возможность «живой» миграции. KVM требует наличия х86-совместимого процессора с поддержкой одной из технологий аппаратной виртуализации - Intel VT либо AMD SVM. На данный момент KVM в состоянии запускать в качестве гостевых ОС GNU/ Linux (32-битные и 64-битные), Windows (32-битные и 64-битные) и другие системы. 45 2.8. Как работает виртуализация сегодня. Что ждет виртуализацию в будущем На сегодняшний день проекты по виртуализации IT-инфраструктуры активно внедряются многими ведущими компаниями, занимающимися системной интеграцией и являющимися авторизованными партнерами провайдеров систем виртуализации. В процессе виртуализации IT- инфраструктуры создается виртуальная инфраструктура – комплекс систем на основе виртуальных машин, обеспечивающих функционирование всей IT- инфраструктуры, обладающий многими новыми возможностями при сохранении существующей схемы деятельности IT-ресурсов. Вендоры различных платформ виртуализации готовы предоставить информацию об успешных проектах по внедрению виртуальной инфраструктуры в крупных банках, промышленных компаниях, больницах, образовательных учреждениях. Множество достоинств виртуализации операционных систем позволяют компаниям экономить на обслуживании, персонале, аппаратном обеспечении, обеспечении бесперебойной работы, репликации данных и восстановлении после сбоев. Также рынок виртуализации начинает наполняться мощными средствами управления, миграции и поддержки виртуальных инфраструктур, позволяющими использовать преимущества виртуализации наиболее полно. Давайте посмотрим, как именно виртуализация позволяет компаниям, внедряющим у себя виртуальную инфраструктуру, экономить деньги. Что ждет виртуализацию в будущем Рынок средств виртуализации находится в заключительной стадии своего формирования. Множество производителей аппаратного обеспечения заявили о поддержки технологий виртуализации, а это верный залог успеха любой новой технологии. Виртуализация становится ближе к людям: упрощаются интерфейсы для использования виртуальных машин, появляются, не закрепленные пока официально, соглашения об использовании различных средств и техник, упрощается миграция с одной виртуальной платформы на другую. Безусловно, виртуализация займет свою нишу в списке необходимых технологий и инструментальных средств при проектировании IT-инфраструктуры предприятий. Обычные пользователи также найдут свое применение виртуальным машинам. С ростом производительности аппаратных платформ настольных компьютеров появится возможность поддерживать на одной машине несколько пользовательских окружений и переключаться между ними. Производители аппаратного обеспечения также не собираются оставаться на месте: помимо существующих техник аппаратной виртуализации, вскоре появятся аппаратные системы, нативно поддерживающие виртуализацию и предоставляющие удобные интерфейсы для разрабатываемого программного обеспечения. Это позволит быстро разрабатывать надежные и эффективные платформы виртуализации. 46 Возможно, что любая устанавливаемая операционная система будет сразу виртуализовываться, а специальное низкоуровневое ПО, при поддержке аппаратных функций, будет осуществлять переключение между запущенными операционными системами без ущерба для производительности. Сама идея, заложенная в технологиях виртуализации, открывает широкие возможности по их использованию. Ведь, в конечном счете, все делается для удобства пользователя и упрощения использования привычных ему вещей. А можно ли на этом существенно экономить деньги, покажет время. 47 ТЕСТ К РАЗДЕЛУ «ТЕХНОЛОГИИ ВИРТУАЛИЗАЦИИ» 1. Согласно статистике средний уровень загрузки процессорных мощностей у серверов под управлением Windows не превышает а) 10% б) 20% в) 15% г) 5% 2. Согласно статистике средний уровень загрузки процессорных мощностей у серверов под управлением Unix не превышает а) 10% б) 20% в) 15% г) 5% 3. Подход к развертыванию нового приложения, когда компания приобретает новый сервер, называется а) «одно приложение – несколько серверов» б) «несколько приложений – один сервер» в) «несколько приложений – несколько серверов» г) «одно приложение – один сервер» 4. Подход к виртуализации ресурсов физического сервера, когда каждое приложение «видит» только предназначенные ему ресурсы и «считает», что ему выделен отдельный сервер, называется а) «один сервер – одно приложение» б) «несколько серверов – одно приложение» в) «один сервер – несколько приложений» г) «несколько серверов – несколько приложений» 5. В основе виртуализации лежит возможность а) одного компьютера выполнять работу нескольких компьютеров благодаря распределению его ресурсов по нескольким средам б) одного компьютера выполнять свою работу благодаря распределению его ресурсов по нескольким средам в) нескольких компьютеров выполнять свою работу благодаря распределению его ресурсов по нескольким средам г) одного компьютера выполнять работу нескольких компьютеров без распределения его ресурсов по нескольким средам 6. С помощью виртуальных серверов и виртуальных настольных компьютеров можно 48 а) разместить одну ОС и несколько приложений в едином местоположении б) разместить несколько ОС и одно приложение в едином местоположении в) разместить одну ОС и одно приложение в едином местоположении г) разместить несколько ОС и несколько приложений в едином местоположении 7. Виртуальная инфраструктура обеспечивает а) высокий уровень доступности ресурсов и более эффективную систему управления б) повышенную безопасность в) усовершенствованную систему восстановления в критических ситуациях г) все ответы верны 8. Сокрытие настоящей реализации какого-либо процесса или объекта от истинного его представления для того, кто им пользуется, - это а) понятие оптимизации б) понятие виртуализации в) понятие безопасности сервера г) понятие гибкости ИТ-инфраструктуры 9. Виртуализация – это а) инкапсуляция вычислительных ресурсов и предоставление пользователю системы, которая «абстрагирует» собственную реализацию б) абстракция вычислительных ресурсов и предоставление пользователю системы, которая «инкапсулирует» (показывает) собственную реализацию в) абстракция вычислительных ресурсов и предоставление пользователю системы, которая «инкапсулирует» (скрывает в себе) собственную реализацию г) абстракция вычислительных ресурсов и предоставление пользователю системы, которая «наследует» собственную реализацию 10. В каком году компания VMware представила технологию виртуализации систем на базе x86 в качестве эффективного средства, способного преобразовать системы на базе x86 в единую аппаратную инфраструктуру общего пользования и назначения, обеспечивающую полную изоляцию, мобильность и широкий выбор ОС для прикладных сред? а) в 1999 году б) в 1998 году в) в 1997 году 49 г) в 1996 году 11. Укажите основные достоинства технологий виртуализации: a) эффективное использование вычислительных ресурсов b) сокращение расходов на инфраструктуру c) снижение затрат на программное обеспечение d) все ответы верны 12. Укажите основные достоинства технологий виртуализации: а) повышение гибкости и скорости реагирования системы б) несовместимые приложения могут работать на одном компьютере в) повышение доступности приложений и обеспечение непрерывности работы предприятия г) все ответы верны 13. Укажите основные достоинства технологий виртуализации: а) возможности легкой архивации б) повышение управляемости структуры в) эффективное использование вычислительных ресурсов г) все ответы верны 14. Виртуальная машина – это а) полностью изолированный программный контейнер, который работает с определенной ОС и приложениями, подобно физическому терминалу б) полностью изолированный программный контейнер, который работает с собственной ОС и приложениями, подобно физическому компьютеру в) частично изолированный программный контейнер, который работает с собственной ОС и приложениями, подобно физическому компьютеру. г) полностью изолированный программный контейнер, который работает с собственной ОС и приложениями, подобно физическому терминалу 15. Виртуальная машина действует так же, как физический компьютер, и содержит а) собственные виртуальные (т.е. программные) ПЗУ, жесткий диск и сетевой адаптер б) собственные виртуальные (т.е. программные) ОЗУ, жесткий диск и сетевой фильтр в) собственные виртуальные (т.е. программные) ОЗУ, жесткий диск и сетевой адаптер г) собственные виртуальные (т.е. программные) ОЗУ, жесткий диск и сетевой принтер 50 16. Когда виртуальную машину можно использовать для выполнения любого программного обеспечения, пригодного для соответствующего физического компьютера, - это называется а) совместимость виртуальных машин б) изолированность виртуальных машин в) инкапсуляцией виртуальных машин г) независимость от оборудования виртуальных машин 17. Более высокая доступность и безопасность приложений, выполняемых в виртуальной среде, по сравнению с приложениями, выполняемыми в стандартной, невиртуализированной системе, - это а) совместимость виртуальных машин б) изолированность виртуальных машин в) инкапсуляцией виртуальных машин г) независимость от оборудования виртуальных машин 18. Когда виртуальную машину можно сохранить на любом стандартном носителе данных: от компактной карты Flash-памяти USB до корпоративных сетей хранения данных. – это называется а) совместимость виртуальных машин б) изолированность виртуальных машин в) независимость от оборудования виртуальных машин г) инкапсуляцией виртуальных машин 19. Когда виртуальные машины могут выполнять разные операционные системы (Windows, Linux и др.) на одном и том же физическом сервере – это называется а) независимость от оборудования виртуальных машин б) инкапсуляцией виртуальных машин в) совместимость виртуальных машин г) изолированность виртуальных машин 20. Виртуализация серверов – это а) запуск на одном физическом сервере одного виртуального сервера б) запуск на одном физическом сервере нескольких виртуальных серверов в) запуск на нескольких физических серверах одного виртуального сервера г) запуск на нескольких физических серверах нескольких виртуальных серверов 21. Использование одного ядра хостовой операционной системы для создания независимых параллельно работающих сред – это а) виртуализация серверов б) виртуализация приложений 51 в) виртуализация на уровне ядра операционной системы г) виртуализация приложений 22. Применение модели сильной изоляции прикладных программ с управляемым взаимодействием с ОС, при которой виртуализируется каждый экземпляр приложений, все его основные компоненты: файлы (включая системные), реестр, шрифты, INI-файлы, COM-объекты, службы - это а) виртуализация на уровне ядра операционной системы б) виртуализация приложений в) виртуализация серверов г) виртуализация представлений 23. Когда пользователь видит приложение и работает с ним на своём терминале, хотя на самом деле приложение выполняется на удалённом сервере, а пользователю передаётся лишь картинка удалённого приложения, - это а) виртуализация приложений б) виртуализация на уровне ядра операционной системы в) виртуализация представлений г) виртуализация серверов 24. Укажите технологию виртуализации рабочих мест сотрудников на базе инфраструктуры виртуальных ПК а) VDI б) DVI в) IVD г) VDJ 25. Технология тонких терминалов относится к а) виртуализации приложений б) виртуализации на уровне ядра операционной системы в) виртуализация серверов г) виртуализации представлений |