Главная страница
Навигация по странице:

  • World Wide Web (WWW).

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

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

  • Платформ виртуализации

  • VMware

  • Citrix (Xen).

  • Microsoft

  • АРИС Текст 2. Водяхо А. И., Выговский Л. С., Дубенецкий В. А., Цехановский В. В. Архитектурные решения информационных систем


    Скачать 4.65 Mb.
    НазваниеВодяхо А. И., Выговский Л. С., Дубенецкий В. А., Цехановский В. В. Архитектурные решения информационных систем
    Дата03.06.2022
    Размер4.65 Mb.
    Формат файлаdocx
    Имя файлаАРИС Текст 2.docx
    ТипДокументы
    #568218
    страница9 из 30
    1   ...   5   6   7   8   9   10   11   12   ...   30

    3.12. Распределенные системы документов

    Можно выделить, по крайней мере, 2 основных разновидности распределенных систем документов: гипертекстовые документы, системы поддержки документооборота. К первой группе можно отнести в первую очередь World Wide Web (WWW), ко второй группе систему Lotus Notes (IBM Notes and Domino) [42].

    World Wide Web (WWW). Первоначально WWW задумывался как очень большая система распределенных документов, которые размещены на многих тысячах сайтов, основу которых составляют веб-серверы. К документам можно обращаться, используя URL. Документы могут ссылаться друг на друга с помощью гиперссылок. В подобной интерпретации WWW можно рассматривать как клиент-серверную систему. Документы могут либо находиться храниться в файле и выдаваться по запросу, либо генерироваться при поступлении запроса. Пользователь также может загружать документы на веб-сервер.

    В качестве системы именований используется унифицированный указатель ресурса (Uniform Resource Locator, URL). Формат URL будет рассмотрен ниже. Первоначально клиент мог взаимодействовать с веб-сервером используя специальное клиентское приложение – браузер. Браузер можно рассматривать как универсальное клиентское приложение. Распределенные приложения, использующие браузер в качестве клиента, называют клиент-серверными системами с тонким клиентом в отличие от систем с толстым клиентом, для написания которого используются стандартные языки высокого уровня.

    Для взаимодействия между браузером и веб-сервером используется протокол Hypertext Transfer Protocol, HTTP), который будет рассмотрен ниже. Для веб-сервера не принципиально какое именно приложения выдает HTTP-запрос, важно только, чтобы запрос был корректным с точки зрения HTTP-протокола. Это означает, что запрос к веб-серверу может генерировать не только браузер, но и любой работающий в сети компьютер, например, с целью посылки сообщения приложению, работающему на сервере. Таким образом, WWW из человеко-машинной системы превращается в глобальную систему передачи сообщений. HTTP стал широко использоваться как транспортный протокол, в слабосвязанных распределенных приложений и, в первую очередь, сервисно-ориентированных систем. В этом смысле WWW можно рассматривать как одну из подсистем системы, ориентированной на работу с сообщениями.

    WWW основывается на представлении всей информации в форме документа, это может быль или просто размеченный текст или текст с встроенными в него сценариями, которые выполняются будучи загруженными в браузер. Большинство документов представлены в формате HTML (Hyper Text Markup Language). Разметка осуществляется посредством тегов, которые указывают браузеру каким образом следует отображать документ. С помощью тегов можно указать, что в текст документа включен фрагмент исполняемого кода, например, на языке JavaScript, который должен интерпретироваться браузером. Таким образом, мы имеем дело с использованием мобильного кода, а в составе браузера присутствует виртуальная машина.

    Большинство документов, с которыми работает WWW, представлены в формате HTML, все большее распространение получает другой язык гипертекстовой разметки – расширяемый язык разметки (eXtensible Markup Language, XML), который в отличие от HTML использует смысловую разметку текста. XML будет подробнее рассмотрен ниже.

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

    Обобщенная структура, использующая веб-сервер показана на рис. 3.12.



    Рис. 3.12. Веб-сервер

    Система функционирует следующим образом. Пользователь, работающий с браузером, либо набирает адрес документа, либо, если документ открыт, делает клик мышкой на гиперссылке. В качестве адреса выступает строка, которую называют Uniform Resourse Locator (URL), которая может иметь вид, показанный на рис. 3.13.



    Рис. 3.13. Структура URL

    Строка URL включает в себя 4 поля: Протокол, Доменное имя, Номер порта и Путь к файлу. В поле Протокол указывается тип протокола. Чаще всего используется Гипертекстовый протокол передачи данных (HyperText Transfer Protocol, HTTP), или его защищенный вариант – https, кроме того используется протокол пересылки файлов (File Trasfer Protocol, FTP) и почтовый протокол – mailto. Другие протоколы используются значительно реже. В поле Доменное имя указывается доменное имя или IP адрес. В поле Номер порта указывается номер порта, к которому идет обращение. Каждому протоколы назначены порта по умолчанию, например для протокола http – это порт 80. Если используется порт по умолчанию, то его можно не указывать. В поле Путь указывается путь к целевому файлу. В качестве целевого файла в простейшем случае может выступать html файл. В более сложном случае в качестве целевого файла может исполнять исполняемый файл, например:

    http:// www.address.com:/cgi-bin/myprog.pl?query_data.

    Данный URL указывает на то, что требуется выполнить программу myprog.pl, написанную на языке Perl. В поле Путь указывается /cgi-bin/. Это псевдоним, за которым стоит реальный путь, который указывается в настройках веб-сервера. В последнем поле указываются аргументы, которые передаются исполняемой программе. Аргументы могут браться из формы, заполняемой пользователем.

    После этого браузер генерирует обращение к веб-серверу.

    Выполнение запроса включает в себя 4 фазы:

    1. Открытие соединения

    2. Клиент посылает серверу

    3. Сервер выполняет запрос и посылает ответ клиенту

    4. Соединение закрывается.

    Таким образом работала первая версия протокола HTTP. Современный протокол (версия 1.1) не требует закрытия соединения после выполнения каждого запроса.

    Рассмотрим более подробно каждую из фаз.

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

    2. Клиент (браузер) посылает веб-серверу запрос, который состоит из заголовка и тела. В заголовке указывается метод, который использует клиент, протокол, тип данных и информация о браузере. Обычно используются методы get и post. Тело содержит сам запрос.

    3. Запрос поступает на веб-сервер в виде длинной текстовой строки, которую требуется разобрать. После того, как разбор завершен, сервер по расширению файла устанавливает, является ли файл документом, например, html документом, или является исполняемым файлом. Если браузер запрашивает документ, то этот документ считывается сериализуется и отправляется клиенту (браузеру). который отображает его на экране. Если в запросе указывается исполняемый файл, то этот файл исполняется на стороне сервера, а результаты выполнения сериализуются и отправляются клиенту. Этот механизм называют Common Gate Interface (CGI). В качестве cgi-программы может выступать любой исполняемый код. Однако для написания cgi-программ чаще всего используется язык Perl, который ориентирован на работу со строками. CGI-программы обычно используются для формирования html документа в динамике. Обычно они работают с базами данных.

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

    4. После того, как браузер исчерпал запросы, соединение закрывается.

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

    Современные веб-серверы используют серверы приложений. Сервер приложений – это надстройка над веб-сервером. Его можно рассматривать как контейнер, в который помещаются серверные программы, которые рассматриваются как модули, расширяющие функциональность сервера приложений. Можно выделить 2 подхода к реализации серверных приложений. Первый подход – это включение в html документ фрагментов кода, а второй – это создание серверных приложений, которые работают как расширения сервера приложений. Примером первого подхода может служить повсеместно используемый язык php [32], а примером второго сервлеты [33].

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

    Следует заметить, что WWW не является единственной системой работы с документами.

    Lotus Notes. К другим подходам к работе с документами являются системы групповой работы. В качестве примера можно привести систему Lotus Notes (IBM Notes and Domino), которая представляет собой платформу для автоматизации совместной деятельности рабочих групп (Groupware), содержащий в себе средства электронной почты, персональных и групповых электронных календарей, службы мгновенных сообщений и среду исполнения приложений делового взаимодействия. Модель, положенная в основу Lotus Notes существенно отличается от WWW. Основным элементом модели данных является заметка (note), которая представляет собой список элементов (item), в которой хранятся соответствующие заметке данных.

    Более подробную информацию по Notes можно найти, например в [42].

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

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

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

    Определим основные понятия, связанные с виртуализацией.

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

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

    Хостовой ОС – ОС, которая установлена на физической машине.

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

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

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

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

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

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

    Виртуализация рабочих мест (представлений) - сервер предоставляет свои ресурсы клиентам, причем клиентское приложение выполняется на этом сервере, а клиент получает только представление.

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

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

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

    Рассмотрим более подробно определенные выше понятия.

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

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

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

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

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

    Обычно принято выделять 4 основные разновидности виртуализации: виртуализация серверов (полная виртуализация и паравиртуализация), виртуализация ОС, виртуализация приложений и виртуализация представлений.

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

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

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

    Использование средств x86-виртуализации началось в конце 90-х с рабочих станций, когда все большему числу пользователей стало необходимо иметь на одном компьютере сразу несколько копий различных ОС.

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

    Поддержка неоднородных операционных сред требуется, в частности для поддержки функционирования для унаследованных приложений в КИС. Эта задача может быть решена за счет одновременной работы на одном компьютере нескольких виртуальных машин, на каждой из работает своя ОС. Используется 2 альтернативных подхода к решению этой задачи: паравиртуализация и полная виртуализация.

    Поддержка однородных вычислительных сред подразумевает изоляцию сервисов в рамках одного экземпляра ядра ОС (виртуализация на уровне ОС). Этот подход чаще всего используется провайдерами сервисов для хостинга приложений.

    Паравиртуализация. Обобщенная структура системы, использующей паравиртуализацию показан на рис. 3.14 .В ядро гостевой ОС включается новый набор API, через который она может напрямую работать с аппаратурой, не конфликтуя с другими виртуальными машинами. При этом отпадает необходимость иметь полноценную ОС в качестве хостового ПО, функции которого в этом случае исполняет гипервизора. Этот вариант используется во многих реальных системах, таких как VMware ESX Server, Microsoft Hyper-V [43]. Достоинства данного подхода состоит в потребности в хостовой ОС. Виртуальная машина устанавливается непосредственно на аппаратную платформу, что создает реальные предпосылки для получения высокой скорости работы. Основным недостатком данного подхода является его сложность, которая обусловлена необходимостью создания специализированной ОС - гипервизора.



    Рис. 3.14.  Паравиртуализация
    Полнаявиртуализация (Full, Native Virtualization). Обобщенная структура системы, использующей полную виртуализацию, показана на рис. 3.15.При использовании механизма полной виртуализации применяются немодифицированные экземпляры гостевых ОС. Для поддержки работы гостевых ОС служит отдельный слой эмуляции, в роли которой выступает обычная ОС. Такой подход часто применяется во многих популярных продуктах, таких как MS Virtual PC, MS Virtual Server, VMware Workstation и др. [43]. Несомненными достоинствами данного подхода являются его простота реализации, универсальность и надежность решения; поскольку функции управления берет на себя хост-ОС. Основной недостаток состоит в относительно невысокой скорости работы.



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

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


    Рис. 3.16. Виртуализация на уровне ядра ОС

    Виртуализация приложений подразумевает применение модели, при которой виртуализируется каждый экземпляр приложений и все его основные компоненты: файлы (включая системные), реестр, шрифты, INI-файлы, службы. Обобщенная структура системы, использующей виртуализацию приложений показана на рис. 3.17. При использовании данного подхода приложение можно запускать без процедуры инсталляции, в частности прямо с внешних носителей, что позволяет ускорить развертывания настольных систем и возможность управления ими, сведение к минимуму не только конфликтов между приложениями, но и потребности в тестировании приложений на совместимость. Данная технология позволяет использовать на одном компьютере, а точнее в одной и той же ОС несколько несовместимых между собой приложений одновременно. Виртуализация приложений позволяет пользователям запускать одно и то же заранее сконфигурированное приложение или группу приложений с сервера. При этом приложения будут работать независимо друг от друга, не внося никаких изменений в ОС. Такой подход используется, в частности, в Java Virtual Machine и ряде других систем [40, 43].



    Рис. 3.17.  Виртуализация приложений

    Виртуализация представлений (рабочих мест) Обобщенная структура системы, использующей виртуализацию представлений, показана на рис. 3.18.Виртуализация представлений реализует эмуляцию интерфейса пользователя. Пользователю кажется, что он работает с приложением на своём терминале, хотя на самом деле приложение выполняется на удалённом сервере, а пользователю передаётся только содержимое, которое выводится на экран. В зависимости от режима пользователь может видеть либо только само окно приложения, либо целиком рабочий стол.


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

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

    Вместе с тем, с ростом масштабов организаций, использование в ИТ-инфраструктуре пользовательских ПК вызывает ряд сложностей: большие операционные издержки на поддержку компьютерного парка, сложность, связанная с управлением настольными ПК, обеспечение пользователям безопасного и надежного доступа к ПО и приложениям, необходимым для работы, техническое сопровождение пользователе, установка и обновление лицензий на ПО и техническое обслуживание, резервное копирование и т.д. Уйти от сложностей, связанных с поддержкой многочисленных рабочих мест пользователей и сократить издержки, связанные с их содержанием и технической поддержкой, возможно благодаря применению технологии виртуализации рабочих мест сотрудников на базе инфраструктуры виртуальных ПК – Virtual Desktop Infrastructure (VDI). VDI позволяет отделить пользовательское ПО от аппаратной части – персонального компьютера, - и осуществлять доступ к клиентским приложениям через терминальные устройства. VDI – это комбинация соединений с удаленным рабочим столом и виртуализации. На обслуживающих серверах работает множество виртуальных машин, с такими клиентскими ОС, как Windows или Linux. Пользователи могут дистанционно подключаются к виртуальной машине своей настольной среды. На локальных компьютерах пользователей в качестве удаленного настольного клиента могут применяться не самые мощные компьютеры. VDI полностью изолирует виртуальную среду пользователей от других виртуальных сред, так как каждый пользователь подключается к отдельной виртуальной машине. Иногда используется статическая инфраструктура VDI, в которой пользователь всегда подключается к той же виртуальной машине, в других случаях динамическая VDI, в которой пользователи динамически подключаются к различным виртуальным машинам, и виртуальные машины создаются по мере необходимости. При использовании любой модели важно хранить данные пользователей вне виртуальных машин и быстро предоставлять приложения. Наряду с централизованным управлением и простым предоставлением компьютеров, VDI обеспечивает доступ к настольной среде из любого места, если пользователи могут дистанционно подключиться к серверу.

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

    Платформ виртуализации

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

    VMware. Компания VMware – один из основных производителей систем виртуализации.

    Предлагает широкий спектр решений от VMware Workstation, предназначенного для настольных ПК, до VMware ESX Server, позволяющего консолидировать физические серверы предприятия в виртуальной инфраструктуре.

    VMwareWorkstation – платформа, ориентированная на desktop-пользователей и предназначенная для использования разработчиками ПО, а также профессионалами в сфере ИТ. В качестве хостовых операционных систем поддерживаются Windows и Linux.

    VMwarePlayer – бесплатный "проигрыватель" виртуальных машин на основе виртуальной машины VMware Workstation, предназначенный для запуска уже готовых образов виртуальных машин, созданных в других продуктах VMware,

    VMware Fusion – настольный продукт для виртуализации на платформе Mac от компании Apple.

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

    VMware vSphere – комплекс продуктов, представляющий надежную платформу для виртуализации центров обработки данных [46].

    . Citrix (Xen). Предлагает целый ряд продуктов для виртуализации, основными из которых являются следующие.

    Бесплатный Xen. В настоящее время Open Source версия платформы Xen применяется в основном в образовательных и исследовательских целях. Некоторые удачные идеи, реализованные многочисленными разработчиками со всего мира, находят свое отражение в коммерческих версиях продуктов виртуализации компании Citrix. Сейчас бесплатные версии Xen включаются в дистрибутивы многих Linux-систем, что позволяет их пользователям применять виртуальные машины для изоляции программного обеспечения в гостевых ОС с целью его тестирования и изучения проблем безопасности, без необходимости установки платформы виртуализации. К тому же многие независимые разработчики ПО могут распространять его с помощью виртуальных шаблонов, в которых уже установлена и настроена гостевая система и предлагаемый продукт. Кроме того, Xen идеально подходит для поддержки старого программного обеспечения в виртуальной машине. Для более же серьезных целей в производственной среде предприятия необходимо использовать коммерческие платформы компании Citrix.

    CitrixXenApp предназначен для виртуализации и публикации приложений в целях оптимизации инфраструктуры доставки сервисов в крупных компаниях.

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

    CitrixXenDesktop - решение по виртуализации десктопов предприятия, позволяющее централизованно хранить и доставлять рабочие окружения в виртуальных машинах пользователям. Продукт поддерживает несколько сценариев доставки приложений на настольные ПК, тонкие клиенты и мобильные ПК и совместим с серверными виртуализационными решениями конкурентов. [43, 44]

    Microsoft. Фирма Microsoft также предлагает целую линейку продуктов для своей платформы.

    MicrosoftVirtualPC. Продукт Virtual PC был куплен корпорацией Microsoft вместе с компанией Connectix и впервые под маркой Microsoft был выпущен как Microsoft Virtual PC 2004. Virtual PC 2007 бесплатен и доступен для поддержки настольных ОС в виртуальных машинах.

    MicrosoftVirtualServer. Серверная платформа виртуализации Microsoft Virtual Server может использоваться на сервере и предназначена для одновременного запуска нескольких виртуальных машин на одном физическом хосте. Платформа бесплатна и предоставляет только базовые функции.

    MicrosoftHyper-V. Продукт Microsoft позиционируется как основной конкурент VMware ESX Server в области корпоративных платформ виртуализации. Microsoft Hyper-V представляет собой решение для виртуализации серверов на базе процессоров с архитектурой x64 в корпоративных средах. В отличие от продуктов Microsoft Virtual Server или Virtual PC, Hyper-V обеспечивает виртуализацию на аппаратном уровне, с использованием технологий виртуализации, встроенных в процессоры. Hyper-V обеспечивает высокую производительность, практически равную производительности одной операционной системы, работающей на выделенном сервере [43, 44].
    1   ...   5   6   7   8   9   10   11   12   ...   30


    написать администратору сайта