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

App - V

< Лекция 10 || Лекция 11 || Лекция 12 >
Аннотация: В рамках данной лекции будут рассмотрены следующие вопросы: Характеристика App-V. Принцип работы App-V. Виртуальная среда App-V. Sequencing. Компоненты App-V. Инфраструктурная схема. Список материалов для самостоятельного изучения.

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

Платформа Microsoft Application Virtualization (App-V) , как и MED-V является частью Microsoft Desktop Optimization Pack и используется для преобразования приложений в виртуальные службы с централизованным управлением. Иными словами, приложение при этом функционирует в изолированной виртуальной среде.

Подобный подход, в числе прочего, позволяет:

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

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

Принципы работы

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

Виртуальная среда содержит все необходимое для запуска приложения и запускается в рамках клиентского программного обеспечения App-V.

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

Рассмотрим более подробно механизмы работы App-V.

Виртуальная среда App-V

По сути, виртуальная среда представляет собой контейнер, определяющий ресурсы для выполнения виртуальных приложений.

К ресурсам виртуальной среды относят:

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

Виртуальная среда создается APP-V и позволяет конечному пользователю взаимодействовать с виртуальными приложениями, как с локальными.

Sequencing (секвенирование, виртуализация приложения)

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

Пакет виртуального приложения содержит четыре типа файлов, являющихся частью виртуального приложения, и обеспечивающих его функционирование:

  • .ico - файл. Файл иконки рабочего стола, используется для запуска виртулизированного приложения клиентом.
  • .osd - файл. Open Software Descriptor - файл на базе XML, указывающий клиенту, как извлечь виртуальное приложение из App-V сервера и как запустить его в рамках виртуализированной среды.
  • .stf - файл. Содержит упакованное одно (или более) виртуализированное приложение. Хранится на сервере, который передает упакованное приложение клиенту.
  • .sprj - файл. Sequencer project - файл на основе XML, использующийся для создания приложения или обновления пакета.

Кроме вышеуказанного, в состав пакета виртуального приложения также может быть включен Windows Installer файл (.msi), для автономного запуска приложения.

Публикация приложения

После того, как приложение упаковано и подготовлено, существует три способа доставки приложения до конечного пользователя:

  1. При помощи управляющего сервера App-V.
  2. При помощи ESD - системы (к примеру, System Center Configuration Manager 2007).
  3. Standalone доставка.

Компоненты App-V

Решение App-V включает в себя следующие компоненты:

  • Управляющий сервер App-V (App-V Management Server) - сервер, отвечающий за управление инфраструктурой App-V, хранение виртуальных приложений и их доставку и т.п.
  • Управляющий веб - сервер App-V (App-v Management Web Server) - компонент, отвечающий за read\write запросы к хранилищу данных App-V. Функционально располагается между хранилищем данных и консолью управления.
  • Хранилище данных App-V (App-V Data Store) - компонент, отвечающий за хранение всей информации, связанной с App-V инфраструктурой (данные о конфигурации сервера, отчеты, лицензии приложений, данные авторизации и т.п.)
  • App-V Streaming Sever - компонент дублирующий функционал управляющего сервера, кроме непосредственно функций управления. Т.е. обеспечивает обработку запросов, хранение данных и доставку приложений.
  • Консоль управления App-V (App-V Management Console) - консоль управления, является инструментом администратора App-V.
  • App-V Sequencer - программное обеспечение, виртуализирующее приложение.
  • Клиент App-V (App-V Client) - программное обеспечение, устанавливаемое на стороне клиента и реализующее виртуальную среду для запуска приложений. В свою очередь представлен в виде desktop и terminal client версий.

Инфраструктурная модель и принцип работы App-V

Инфраструктурная модель App-V (http://blog.augustoalvarez.com.ar/2009/07/12/implementing-app-v-part-ii-choosing-and-preparing-the-environment/)

Рис. 19.1. Инфраструктурная модель App-V (http://blog.augustoalvarez.com.ar/2009/07/12/implementing-app-v-part-ii-choosing-and-preparing-the-environment/)

На рис. 19.1 представлена полная инфраструктурная схема App-V и его компонент. В общем виде инфраструктурное решение виртуализации на основе App-V работает следующим образом:

  1. Создается виртуализированное приложение при помощи App-V Sequencer.
  2. Созданное приложение передается на хранение управляющему серверу App-V.
  3. Осуществляется назначение прав доступа к приложению (App-V Management Console), при участии Active Directory, в случае ее наличия.
  4. Пользователи, имеющие право на запуск и работу с приложением, получают к нему доступ (иконка на рабочем столе, пункт в меню "Пуск" и т.п.).
  5. Доставка приложения. При первом запуске виртуального приложения пользователем клиентское программное обеспечение App-V (App-V Client) загружает приложение с сервера и запускает его в изолированной виртуальной среде. (также могут быть использованы другие способы доставки, указанные в разделе "Публикация приложения" данной лекции).

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

Термины

Sequencer - программное обеспечение, входящее в состав App-V, непосредственно виртуализирующее приложение. Sequencer "следит" за локальной установкой приложения, изменениями в системе и т.п. На основе собранных данных затем создается виртуальное приложение.

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

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

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

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

Может показаться, что при наличии App-V отпадает необходимость в использовании решений виртуализации, обеспечивающих запуск нескольких ОС на одном хосте. Однако, отметим следующее, App-V призван устранить проблемы совместимости приложений с другими приложениями и операционной системой. Но если существует необходимость создания изолированной среды, включающей в себя ОС и ряд других решений и компонент (к примеру для целей тестирования), лучшим выбором окажется иное решение виртуализации рабочих станций (MED-V, Virtual PC и т.д.)

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