Доброго времени суток, Хабровчане.

Преамбула

XenApp (читается «ЗенАп») придуман компанией Citrix для виртуализации и доставки приложений через тонкий клиент, посредством своего собственного протокола CIA. Надо сказать, что идея сама по себе хороша, потому что в теории избавляет от многих головняков, типа покупки лицензионного софта от Империи Зла и других, чуть менее жадных вендоров. Конечно, это интересно, только если брать приложения в аренду, потому что лицензии на XenApp стоят достаточно дорого. Хочется отметить, что XenApp работает только под Windows.
Не знаю, к сожалению или к счастью, но все крупнейшие производители самого потребляемого софта сейчас имеют свои полнофункциональные продукты, доступные либо через web-интерфейс, либо через тонкий клиент, поэтому мне кажется, что XenApp, как отдельный продукт, очень скоро станет неинтересен конечному потребителю, и останется в поле зрения у компаний, которые сами занимаются арендой приложений. Как раз на аренду приложений сделала ставку моя компания.
И после того, как я был озадачен этой интересной затеей, я понял, что гугль ничего внятного на русском языке про XenApp не выдаёт, а всё, что можно покурить — это обширный мануал на сайте Citrix.com на английском языке. Но разве для нас это проблема?
Руководствуясь чувством «помочь ближнему своему» я решил описать процесс установки и настройки XenApp, который мне пришлось расковыривать самостоятельно, используя англоязычный мануал и плохо знакомого человека, который лицензированный специалист Citrix.

ВНИМАНИЕ!
Для нормальной работы XenApp требуется наличие официальных лицензий от Citrix.
Получить их можно, связавшись с любым официальным представителем Citirx и рассказав о том, что мы хотим попробовать продукт, с целью стать партнёром, и оказывать услуги по аренде приложений. Так можно получить много лицензий сроком на девяносто дней, или сто лицензий сроком на 1 год.

ЕЩЁ ВАЖНО ПОМНИТЬ:
Лицензии выдаются на ИМЯ КОМПЬЮТЕРА, поэтому расходуйте их аккуратно. В целом про лицензирование скорее всего придётся писать отдельную статью, т.к. это не так тривиально, как может показаться.

Требования по железу

Если верить официально заявленному Систем Реквайремен��у компании Citrix, то чтобы установить XenApp, нам нужно примерно следующее:

64-bit architecture with Intel Pentium Xeon family with Intel Extended Memory 64 Technology
AMD Opteron family AMD Athlon 64 family Compatible processor


А так-же:

Memory: 512MB RAM (minimum) Disk space: 32GB (minimum) TROLLFACE

На русский язык я смог перевести только синонимами:

— Процессор 64-битный, обязательно с поддержкой технологий виртуализации (Intel VT или Amd-V), ядрах так хотя-бы о двух.
— Памяти не менее двух гигабайт, а лучше конечно все шесть.
— HDD не менее 60 гигабайт, SATA.
— Сетевая карта, Intel Pro-серии, гигабитная.

image

Требования по софту

Из софта нам потребуется:

— Windows Server 2008 R2 x64 DCE, хотя вполне сгодится и Enterprise, с установленными последними обновлениями.
— Дистрибутив XenApp 6.5 Platinum Edition (для скачивания с сайта Citrix потребуется регистрация).
— Microsoft NetFramework 3.5 (в нашем случае качать не нужно, XenApp его включит сам в роли IIS на Win2k8R2)
— Дистрибутивы доставляемых приложений (например, MS Office или 1C).

Так же дистрибутив XenApp установит нам для своей работы много софта, как то:

— Microsoft Visual C++ 2008 SP1 Redistributable (x64)
— Microsoft SQL Server 2008 Express R2
— Microsoft Primary Interoperability Assemblies 2005
— И т.д., нас это не должно волновать, пока не будет проблем :)

И поднимет роли:

— Web Server (IIS)
— Microsoft Terminal Services

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

ВАЖНО!
После установки и настройки Windows, установки последних обновлений, очень желательно сделать образ системы акронисом, или другой подобной программой, чтобы в случае неудачных действий можно было легко накатить чистую систему обратно и приступить к установке заново. В моём случае это облако, поэтому я тупо создал шаблон из полностью подготовленной системы.
Так же очень важно присвоить необходимое имя серверу заранее, перед началом установки XenApp.

По умолчанию, Citrix предполагает, что XenApp разворачивается на сервере, введённом в домен Windows. Т.е. предполагается наличие в сети конTROLLера домена. Но на самом деле XenApp легко ставится и без конTROLLера, и работает в рабочей группе не хуже, чем в сети с AD. Это решение сильно зависит от ваших конечных потребностей.

Так же предполагается, что сервер с XenApp находится за NAT-ом, который имеет какой-то конкретный внешний ip-адрес, выданный провайдером. Можно заранее переписать этот ip-адрес на бумажку, он нам ещё пригодится.

Установка

Методом проб и ошибок, а так же чтения мануала с похмелья да ещё и на пиндосском, была определена чёткая последовательность действий, которая гарантирует на 100%, что XenApp на вашем серваке совершенно точно поднимется и позволит себя настраивать. О продакшене мы пока молчим, до этого ещё надо дойти. Итак, секретная последовательность такая:

Перво-наперво ставим и обновляем Windows Server 2008 R2. Затем качаем Microsoft NetFramework 4, ставим, и снова обновляем систему. Затем заходим в папку с дистрибутивом XenApp (предполагается, что образ ISO уже разархивирован в отдельную папку на винте), и запускаем файл с названием autorun.exe :).
image

После этого установщик предложит нам установить NetFramework 3.5 с первым сервиспаком. Соглашаемся (жмём ОК).
image

Далее необходимо установить роли. Делается это путём нажатия кнопки с очевидной надписью Add server roles.
image

Мы нажимаем на эту кнопку, указываем Platinum Edition, принимаем Лиценз Агрыымент, и выбираем следующие роли:

License server
XenApp
Web Interface

image

Жмём «далее» на следующей вкладке выбираем

XML Service IIS Integration(обязательная комп��нента!).
image

Больше НИЧЕГО выбирать не надо!
Два раза жмём Next, Install и ждём, чем закончится. Можно выпить кофейку и курнуть.
image

После непродолжительной установки XenApp выдаст окно с кучей восклицательных знаков и кнопкой «Finish».
image

В этом нет ничего страшного, просто нужна перезагрузка. Закрываем все окна и перезагружаем сервак. После перезагрузки setup возобновит свою работу автоматически, нужно выбрать «Resume install», и ждать, когда же наконец-то уже всё.
image

ВНИМАНИЕ! Все компоненты должны установиться без ошибок!
Т.е. все пункты должны быть отмечены зелёной галочкой! В противном случае придётся сносить и ставить систему заново!

В итоге всех телодвижений у нас должно появиться окно установщика со списком установленных компонент, напротив каждой из которых появится слово «configure».

Настройка

Итак, XenApp установился и предлагает нам его настроить. В окне программы мы видим:

XenApp — Specify Licensing
Web Interface — Configure
License Server — Configure


Начать надо с License Server — Configure.
По умолчанию предполагается наличие у вас лицензий Citrix XenApp Platinum Edition. Жмём Configure. Он предлагает настроить порты:

License Server Port: 2700
Vendor Daemon Port: 7279
Management Console Web Port: 8082


Порты менять не следует!
Задаём пароль админа и жмём ОК. License Server помечен зелёной галочкой и перешёл в состояние Configured.
image

После этого нужно добавить лицензию в сервер лицензирования. Для этого идём Пуск — Все программы — Citrix — Management Consoles — License Administration Console.
image

В открывшемся Web-интерфейсе, справа в углу жмём Administration, и вводим пароль админа, который мы указали ранее. Затем слева внизу переходим в раздел Vendor Daemon Configuration, и жмём кнопку Import License. Выбираем наш файл лицензии, ставим галку Overwrite License File (ведь лицензия у нас только эта), и жмём Import License. Далее жмём ОК, в списке лицензий выбираем нашу лицензию, и жмём кнопку Reread License.
image

На этом настройка лицензий завершена. Закрываем Web-интерфейс и переходим обратно к установщику.
В установщике нам нужно нажать Specify Licensing, чтобы XenApp увидел сервер лицензий и рабочие лицензии.
image

Вводим имя компьютера (тот, на котором мы и производим установку), жмём Test Connection, и жмём Next.
image

Если XenApp распознал лицензии, то ничего менять не надо, он укажет параметры автоматом. Если не распознал — значит все предыдущие шаги нужно проделать заново. Жмём Apply и видим, что Specify Licensing перешло в состояние Configured и помечено зелёной галочкой. Теперь сконфигурируем сам сервер XenApp, нажав на Configure.
image

Т.к. это единственный и новый сервер XenApp в нашей сети, мы выбираем пункт Create a new server farm, т.е. создаём новую ферму серверов XenApp.
image

Указываем имя фермы, остальные параметры на этой вкладке оставляем по умолчанию. Дальше установщик предлагает выбор: Создать новую базу или использовать существующую. Т.к. предполагается, что никаких баз у нас нет, мы жмём New Database.
image

После этого вводим логин и пароль администратора сервера (только локального, даже если сервер в домене!), всё время жмём Next, оставляя параметры по умолчанию, и после нажатия Apply видим процесс настройки базы данных. Жмём Finish и Reboot.
image

После перезагрузки мы видим, что несконфигурированным у нас остался только Web-Interface. Перед его конфигурацией ОБЯЗАТЕЛЬНО нужно сделать следующее:

cmd: altaddr /SET ВАШ_ВНЕШНИЙ_АЙПИ
image

Сворачиваем установщик и запускаем:

Пуск — Все программы — Администрирование — Citrix — Management Consoles — CitrixApp Center
image

В открывшемся окне выбираем:

Disable Authenticode Signature Checking
image

Откроется окно настройки фермы XenApp, жмём Далее, снимаем галочку с позиции Single Sign-On, жмём Далее, жмём Add Local Computer — тут мы добавляем серверы, где установлен XenApp.
image

В нашем случае это локальный комп, его и добавляем.
image

Потом всё время далее, установщик дисковерит сеть и сервер на предмет соответствия всем указанным параметрам, и, если его всё устраивает, то предлагает нажать Apply. Жмём, и вот мы в консоли управления XenApp.
В целом на этом настройка самого XenApp закончена.

Ещё готовятся статьи о том, как подготавливать, публиковать и доставлять приложения клиентам. Так же отдельно будет рассмотрена доставка 1С v8.1.6. с HASP-ключём USB.