пятница, 22 октября 2010 г.

Установка приложений в среде VMware View 4.5 + ThinApp 4.6

Рабочие станции, пускай и виртуальные, предназначены, в первую очередь, для запуска пользовательских приложений. А чтобы запустить приложение, требуется его установить (а иногда и купить). По этой причине сегодня мы рассмотрим различные варианты установки приложений, виртуализованных с помощью VMware ThinApp 4.6, которые можно использовать для виртуальных рабочих станций, а в частности - для VMware View 4.5.

Варианты установки
Установка приложений в мастер-образ. Многие распространенные приложения, не требующие частых обновлений, такие как архиваторы или программы для чтения документов и просмотра изображений могут быть установлены в эталонный образ, который послужит основой для создания виртуальных рабочих станций. Однако не следует увлекаться и записывать в мастер-образ весь возможный набор приложений. Во-первых, пользователь может запутаться от обилия ярлыков на рабочем столе (должно же на нем еще оставаться место, что хранить документы и папки) и запустить что-то ненужное, во-вторых, увеличит занимаемое клонированными образами дисковое пространство, в-третьих, усложнит процедуру администрирования рабочих станций и обновления приложений. Хотя при назначении разрешений на запуск приложений с помощью ThinApp или групповых политик, использовании дифференциальных дисков (Linked Clones) и функции Recompose вы можете достаточно просто решить эти проблемы.

Копирование и установка приложений вручную. Администратор может выполнять установку отдельных приложений, подключаясь к рабочей станции через vSphere Client или RDP. Кроме того существует простая и функциональная утилита psexec, позволяющая запускать программы и выполнять команды на удаленном компьютере без необходимости отвлекать пользователей от работы. Для установки приложений можно воспользоваться командой вроде этой:
psexec \\<имя_компьютера> /u <имя_пользователя> msiexec /i \\<имя_сервера>\<путь_к_установочному_файлу> /qn


Для некоторых приложений вы можете разрешить рядовым пользователям без административных прав самостоятельно производить установку. В этом случае приложение будет установлено в каталог %AppData% пользователя вместо %ProgramFiles% и будет доступно лишь этому пользователю. Такой вариант может является предпочтительным для  приложений вроде текстовых редакторов или программ обмена мгновенными сообщениями. Для включения режима индивидуальной установки при упаковке приложения с помощью ThinApp требуется отредактировать параметр MSIDefaultInstallAllUsers в файле Package.ini и установить его значение в 0.

Для этого выполните следующие действия. При создании пакетированного приложения с помощью ThinApp в окне Package Settings выберите Generate MSI Package.


Перед финальной сборкой в окне Ready to Build нажмите Edit Package.ini.

При желании вы можете задать параметр MSIDefaultInstallAllUsers=2 и разрешить как административную установку для всех пользователей, так и индивидуальную установку (в зависимости от прав, которыми обладает учетная запись, от имени которой был запущен установочный файл).

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

Использование средств электронной дистрибуции ПО (например, Microsoft SCCM 2007). Наиболее функциональный вариант из представленных, позволяет полностью автоматизировать процесс установки, а также проводить инвентаризацию ПО, хотя и требует покупки дополнительных лицензий, установки агентов и настройки серверов управления.

Наконец, начиная с версии 4.5 в VMware View есть собственные встроенные механизмы публикации приложений, виртуализованных с помощью ThinApp. Публиковать приложения можно на пул или на отдельные виртуальные рабочие станции.

VMware View предоставляет на выбор два режима установки:
  • В полном (Full) режиме приложение устанавливается на виртуальную рабочую станцию, создает ярлык на рабочем столе и настраивает ассоциации с нужными типами файлов. Процесс установки выполняется в фоновом режиме и не требует от пользователей каких-либо действий. Запуск приложения выполняется с диска виртуальной рабочей станции.
  • В потоковом (Streaming) режиме на рабочем столе пользователя создается ярлык, указывающий на исполняемый файл .exe приложения, расположенный на файловом сервере. Запуск приложения выполняется с общей сетевой папки файлового сервера. Такой вариант установки с одной стороны позволит сэкономить место на хранилище, на котором располагаются диски виртуальных рабочих станций, особенно в случае, когда пользователи запускают одинаковый набор приложений, с другой - приведет к увеличению нагрузки на сеть. Также учтите, что в случае отсутствия доступа к файловому серверу, например, при запуске ВМ в Local Mode режиме, приложения не смогут запуститься.

Пример публикации приложений с помощью VMware View
Перед тем, как опубликовать приложение вам потребуется соответствующим образом упаковать его с помощью Setup Capture, входящего в состав VMware ThinApp 4.6. Для режима полной установки достаточно будет создать .msi файл, содержащий нужное приложение.

Для Streaming режима перед сборкой вам потребуется отредактировать файл настроек Package.ini и установить параметр MSIStreaming=1. В этом случае после создания пакета размер .msi файла не превысит нескольких мегабайт и для корректной установки вам потребуется сохранять его вместе с созданным .exe файлом.

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

Запустите консоль View Administrator добавьте общую папку файлового сервера в список репозиториев: View Configuration -> ThinApp Configuration кнопка Add Repository.

В поле Display Name введите имя репозитория, в поле Share path введите UNC путь к общей папке, содержащей упакованные приложения (в формате \\<имя_сервера>\<имя_папки>). При желании можете добавить дополнительное описание в поле Description.

Нажмите Save.

Просканируйте и добавьте приложения в список доступных. В консоли View Administrator выберите Inventory -> ThinApps. На вкладке Summary нажмите Scan New ThinApps.

Выберите одно из расположений, добавленных ранее и папку для сканирования, и нажмите Next.

Выберите одно или несколько (с помощью зажатых клавиш CTRL или SHIFT) приложений из списка доступных и нажмите Scan.

После завершения сканирования вы увидите перечень добавленных приложений. Нажмите Finish.

Добавленные приложения появятся в окне на вкладке Summary.

Для назначения приложений вы можете воспользоваться той же вкладкой Inventory -> ThinApps. Выберите необходимое приложение из списка и нажмите Add Assigment и в контекстном меню выберите область назначения - на пул (Pools...) или на рабочие станции (Desktops...).

В открывшемся окне выберите один из двух доступных типов установки (Installation type): Streaming или Full и с помощью кнопки Add... добавьте один или несколько пулов или рабочих станций на которые требуется назначить приложение. Нажмите OK для сохранения настроек.

Теперь пользователям достаточно будет подключиться к своим рабочим станциям и приложение будет автоматически установлено. Учтите, что при использовании Full режима в зависимости от размера приложения для копирования и установки может потребоваться некоторое время, поэтому ярлык может появится не сразу.

Обновление опубликованных приложений
Установка приложений - половина дела. Когда-нибудь вам придется их обновить. ThinApp предоставляет несколькомеханизмов по обновлению приложений, однако их использование совместно с VMware View имеет свои нюансы.

Для обновления приложения вам потребуется выполнить следующие шаги:
  1. Удалить назначенное приложение (Remove Assigment) с пула или рабочих станций.
  2. Подождать, пока все пользователи войдут на свои рабочие станции, чтобы устаревшая версия приложения удалилась.
  3. Удалить устаревшее приложение из списка ThinApps.
  4. Скопировать обновленную версию приложения на файловый сервер и добавить его в список ThinApps.
  5. Назначить обновленную версию приложения на пул или рабочую станцию.
  6. Подождать, пока все пользователи войдут на свои рабочие станции, чтобы обновленная версия приложения установилась.
Не слишком просто и быстрый вариант, учитывая, что из-за некоторых пользователей процесс обновления может растянуться на несколько дней. С другой стороны, для Linked Clones машин также может быть выполнен Refresh, который вернет виртуальную машину к исходному состоянию и удалит установленные приложения.

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

Более корректным вариантом является использование встроенного механизма обновления, поддерживаемого в ThinApp - исполняемый файл обновленной версии приложения переименовывается из <имя_приложения>.exe в <имя_приложения>.1 (например, "Adobe Reader.1") и помещается в ту же папку, что и исполняемый файл старого приложения. При следующем запуске приложение автоматически обнаружит наличие обновленной версии и запустит ее. При этом пользователи, работающие с текущей версией приложения, смогут продолжать с ней работать до следующего запуска. При необходимости последующего обновления приложения вы можете просто добавлять новые версии .3 или .4 и удалять устаревшие .1 или .2, по мере того, как пользователи будут прекращать работать с ними.

Для Full режима установки ситуация несколько отличается. Вы можете настроить приложение на автоматическую проверку обновленной версии при каждом запуске, указав при создании пакета в параметре AppSyncURL в файле Package.ini путь к обновленной версии на файловом сервере в формате file://<имя_сервера>/<путь_к_файлу> или http://<имя_сервера>/<путь_к_файлу> (например: "file://Fileserver/Software/Firefox/Firefox.exe").

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

Наконец, вы можете написать скрипт, который бы копировал обновленные версии приложений в нужные папки, однако, выглядит это уже не так удобно и функционально, как хотелось бы.

На сегодня всё.

Комментариев нет:

Отправить комментарий