Microsoft Server App-V — Что Это Такое И Что В Него Входит?

Server App-V — интересный продукт Microsoft, которым, на мой взгляд, незаслуженно пренебрегли.

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

для узкого круга энтузиастов.

Короче говоря, Server App-V предоставляет механизм виртуализации приложений, изолируя их от ОС и упрощая их доставку, точно так же, как App-V, но для серверов.

В настоящее время доступен вместе с System Center Virtual Machine Management 2012, так как позволяет существенно ускорить развертывание серверных платформ, что делает его хорошим подспорьем в создании и поддержке различного рода «облаков».

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

.



Microsoft Server App-V — что это такое и что в него входит?

Сказать, что виртуализация упрощает управление ИТ, — это ложь.

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

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

Различные инструменты автоматизации упрощают управление ИТ.

И здесь нам помогают системы управления виртуальной инфраструктурой — SCVMM, vCenter. Можно подготовить шаблоны виртуальных машин, как в плане виртуального оборудования, так и в плане настроек ОС.

Однако остается третий уровень инфраструктуры — приложения.

А здесь, как показывает практика, прогресса практически нет с тех пор.

даже не знаю.

За весь мой 12-летний опыт работы мало что изменилось.

Раздачи, пожалуй, стали крупнее.

Итак, какие способы наполнения ОС (неважно сервера или рабочей станции) приложениями нам доступны? 1. Классический — вставьте диск/флешку или зайдите в общую папку «Distrib» на файлообменнике и запустите установщик.

Способ простой, надежный, но отнюдь не быстрый.

А самое главное, это нудно и нудно, если нужно штамповать машины на регулярной основе.

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

Хорошо, если есть централизованная система обновлений, типа Microsoft WSUS или 2ГИС, но она есть не у всех, и оставлять обновления пользователю — тоже плохая идея.

2. Централизованное развертывание (групповая политика, SCCM, скрипты).

Снимает проблему рутины (по крайней мере в плане широко используемых приложений), снимает проблему обновления.

Создает новые трудности.

Влияние на виртуальную среду.

Массовое обновление Adobe Reader может ввести ферму VDI в кому на полдня.

Мало того, что машины примерно одновременно тянут дистрибутив по сети, так он еще и поразит процессор и диски.

Кроме того, не все приложения можно развернуть в режиме автоматической установки.

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

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

Другим распространенным недостатком является то, что два (или более) разных приложения могут требовать, например, разных версий Java или иным образом быть взаимоисключающими (когда я поддерживал Microsoft Exchange 2003, я помню, что было невозможно использовать Outlook на сервере с установленным Exchange из-за к тому, что оба использовали библиотеку с одинаковым названием, но разным функционалом) 3. Доставка виртуальных приложений (App-V, ThinApp, XenApp) .

Это когда приложение подготавливается особым образом — устанавливается в специальный виртуальный контейнер и доставляется в целевую ОС путём простого копирования (App-V, ThinApp) или даже запускается и запускается на удалённом сервере (Citrix XenApp).

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

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

Когда-то виртуализация серверов казалась сомнительной затеей.



Серверное приложение-V

По сути, решение Server App-V аналогично продукту App-V. Кроме того, [Сервер] App-V Sequencer используется для «упаковки» приложений, а агент App-V необходим для развертывания в конечной системе.

Для доставки App-V на десктопы используется специальный App-V Server, а для Server App-V — VMM.

Microsoft Server App-V — что это такое и что в него входит?

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

Однако, несмотря на все сходство, это два разных продукта, и не следует пытаться использовать Server App-V Sequencer для создания приложений Desktop App-V. И наоборот. Зачем нам нужна виртуализация приложений на серверах? Это не десктопы, зачастую один сервер — одно приложение, и сомнительно, что можно виртуализировать, например, Exchange. Да, это невозможно.

А также Microsoft SQL Server (но MySQL, я слышал, что это возможно), SharePoint. возможно, какое-то другое крупное серверное программное обеспечение.

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

Я также не видел списка явно поддерживаемого программного обеспечения, но известно, что Server App-V оптимизирован для приложений со следующими атрибутами:

  • хранится локально на диске;
  • веб-приложения (для IIS);
  • Службы Windows;
  • Службы отчетов SQL Server;
  • взаимодействие с реестром, объектами COM+/DCOM, WMI, использование функционала локальных пользователей и групп, планировщик задач.



Microsoft Server App-V — что это такое и что в него входит?

Фактически, поддержка большего числа этих атрибутов — это то, что отличает Server App-V от App-V для настольных компьютеров.

Сравнение индивидуальных особенностей в таблице:

Приложение-V Серверное приложение-V
  • Изменения конфигурации и данных применяются ко всем пользователям.

  • Файлы приложения (а также COM/DCOM, службы и поставщики WMI) доступны только самому приложению.

  • Добавление новых процессов в виртуальную среду осуществляется вручную.

  • Изменения конфигурации и данных применяются к конкретному пользователю.

  • Файлы приложений (а также COM/DCOM, службы и поставщики WMI) доступны всем процессам на компьютере.

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

  • Новые процессы добавляются в виртуальную среду секвенатором на основе эвристики.

    Конечно, можно добавить вручную.

Я не буду подробно углубляться в процедуры установки и использования, поскольку интерфейс настолько прост, что запутаться сложно.

Я лишь отмечу важные моменты и приведу небольшой пример.



Монтаж

Установочные файлы можно найти либо на носителе с System Center VMM 2012 в каталоге X:\SAV, либо на сервере с установленным VMM — C:\Program Files\Microsoft System Center 2012\Virtual Machine Manager\SAV. Включает установщик секвенсора, агент и командлет для обоих.

Установить можно на следующие версии ОС:

  • Windows 2003 R2 SP2;
  • Windows 2008 SP2;
  • Windows 2008 Р2;
  • Винда 2012.
Сама установка, будь то секвенатор или агент, думаю, ни у кого не вызовет затруднений.

Стоит иметь в виду, что секвенсор лучше устанавливать на чистую, свежую ОС.

На нем даже не должно быть агента App-V. Агент можно установить в тихом режиме:

  
   

AgentSetup.exe /q INSTALLDIR=c:\serverappv SWIGLOBALDATA=c:\SWIGlobalData SWIUSERDATA=c:\SWIUserData SWIFSDRIVE=q /ACCEPTEULA

INSTALLDIR – путь установки.

SWIGLOBALDATA – определяет каталог, в котором будут храниться основные данные (включая пакеты приложений).

SWIUSERDATA – определяет каталог для хранения пользовательских данных.

SWIFSDRIVE — указывает букву диска для файловой системы виртуальной среды.

ACCEPTEULA – принимает лицензионное соглашение.

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

Также доступны следующие ключи: /q – активация «тихого» режима.

/u – удаление.

/? – вызвать справку, связанную с установщиком.

Журнал установки сохраняется в %Temp%.

И агент, и секвенсор создают виртуальный диск (Q: по умолчанию) для файловой системы виртуальной среды во время установки.



Последовательность действий

Я не знаю, как точно перевести этот термин.

Вариант «постановка приложения в очередь», увиденный в описании курса CA Specialist, кажется безумием.

Я называю этот процесс «упаковкой».

Итак, мы установили секвенсор.

На свежеустановленной чистой ОС.

«Упаковка» каждого приложения требует чистой ОС.

И здесь снимки ВМ могут оказать нам неоценимую помощь.

Что еще следует иметь в виду перед началом процедуры:

  • Лучше всего, чтобы версия и редакция ОС совпадали с версией и редакцией целевой ОС (где она будет развернута).

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

  • Если виртуализируемое приложение предполагает создание баз данных в MS SQL, необходимо установить Microsoft SQL Server 2012 Feature Pack.
Далее запускаем секвенсор (как выглядит его главное окно, вы можете увидеть в начале статьи).

Чтобы создать новый пакет виртуального приложения (Пакет виртуального приложения), выберите целевой дистрибутив, задайте имя и обратите внимание, что каталогом назначения по умолчанию будет диск нашей виртуальной файловой системы (Q:).

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



Microsoft Server App-V — что это такое и что в него входит?

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

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



Microsoft Server App-V — что это такое и что в него входит?



Развертывание

Чтобы развернуть пакет виртуального приложения, в целевой ОС необходимо установить агент Server App-V. Роли и функции сервера, необходимые приложению, должны быть установлены ПЕРЕД развертыванием приложения.

Полученные пакеты распространяются с помощью VMM (Библиотека — Профили приложений), но для разового развертывания, например в тестовой среде, можно использовать командлеты PowerShell (AgentCmdletsSetup.exe).

PS C:\> Set-ExecutionPolicy Remotesigned PS C:\> Импорт-модуль ServerAppVAgent PS C:\> Add-ServerAppvPackage –Name Мое приложение –Манифест С:\ МоеПриложение\МоеПриложение _manifest.xml –SFT C:\MyApp\MyApp.sft –Конфигурация С:\ Мое приложение \deploymentconfig.xml Пример:

Microsoft Server App-V — что это такое и что в него входит?

В результате мы получим ссылку на новое приложение в меню «Пуск».

Он будет находиться на диске Q:.

Ссылка в свойствах ярлыка будет выглядеть примерно так:

"C:\Program Files (x86)\Server Application Virtualization\savlnch.exe" /launch:"7-Zip File Manager 9.20.0.0"

Вот и все.

Вы можете использовать его.

Теги: #Виртуализация #облачный сервис #windows server #System Center #scvmm #server app-v

Вместе с данным постом часто просматривают: