Facebook T VK YouTube Instagram
RCNTEC / Решения / Центры обработки данных / Виртуализация приложений и десктопов

Виртуализация приложений и десктопов

АРСИЭНТЕК_виртуализация приложенийКогда-то давным давно мы начинали свой путь с десятка отдельных проектных офисов, разбросанных по всей стране, каждый из которых занимался своим отдельным проектом — внедрял свою информационную систему. У каждой системы были собственные администраторы, пользователей было немного — всем хватало внимания. Тем временем количество пользователей всё прибывало. Со временем мы поняли, что для эффективного управления необходимо объединять команды администраторов, службы сопровождения и проектные офисы. Но даже совместными усилиями объединённой команды поддержка тысяч клиентских ПК давалась с трудом: на каждый надо было поставить клиентское программное обеспечение, и не одно — под каждую систему своё. И периодически ставить обновления. И время от времени менять настройки клиентского ПО. И делать это в нескольких десятках офисов, где расположились пользователи.

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

Вместе с этим мы использовали надстройку над терминальным доступом — решения Citrix XenApp. Это улучшило визуализацию работы с приложениями. К тому же это позволило нам существенно сократить требования к пропускной способности каналов связи с удалёнными филиалами: передача только изменений картинки значительно уменьшила трафик.

Использование Citrix XenApp позволило разрешать/запрещать отдельным группам пользователей возможность использования буфера обмена между терминальным сервером и клиентским ПК и подключения локальных дисков в терминальную сессию.

Постепенно росло количество пользователей, прибавилось количество самих приложений. И вот уже приложений стало несколько тысяч, а пользователей более десяти тысяч. Citrix XenApp обладает возможностью централизованного управления доступом пользователей к приложениям — при таком количестве пользователей и приложений без этого было бы совсем тяжело.

АРСИЭНТЕК_виртуализация десктопов

Пользователю для работы нужно всего лишь установить клиентское ПО Citrix на своём ПК, совершенно не заботясь об установке клиентского ПО прикладных систем. Наверное, самый большой недостаток в распределённой работе пользователей, который позволил решить переход на терминальный доступ,  связан с перебоями связи — при традиционной организации работы, когда  клиентское ПО работает на ПК, приложение при обрыве связи «вылетало», а здесь клиентское ПО работает на терминальном сервере, поэтому при обрыве связи между ПК и терминальным сервером достаточно перелогиниться и вернуться к прежней работе.

Естественно, чтобы всё работало идеально, нам пришлось приложить немало усилий. Не всё работало «из коробки», и мы добавили к стандартному решению много полезного.

Со временем очень многое стало зависеть от работы информационных систем. Поэтому мы не могли допустить, чтобы что-либо могло вывести из строя наши системы и терминальную платформу. Но сбои случаются, и даже самый зарезервированный ЦОД всё равно может быть отрезан от внешнего мира и пользователей последствиями катастроф. Поэтому нам пришлось немало поразмыслить над тем, чтобы не зависеть от пропадания одного (на самом деле, даже нескольких) ЦОД. Мы поработали над автоматизированным переводом самих приложений из одного ЦОД в другой. И мы сделали нашу инсталляцию терминального решения Citrix XenApp распределённой по нескольким ЦОД. Теперь мы можем спокойно отключать ядро терминальной платформы в одном или нескольких ЦОД в случае сбоя или просто для обслуживания — во втором случае достаточно дождаться окончания работы установленных сессий, и целый ЦОД свободен.

Очень много хороших идей мы почерпнули в книге "Scalable Internet Architecture" и ей подобных. Одна из хороших практических идей: чтобы быть уверенным, что в случае сбоя аварийная схема сработает, эта схема должна работать всегда в штатном режиме. Поэтому пользователи попадают случайным образом в любой из доступных ЦОД. Затем сессия пользователя перенаправляется в тот ЦОД, где распололжен терминальный сервер приложения. А сам терминальный сервер мы располагаем «поближе» к серверам приложения. Пользователь может работать одновременно с несколькими приложениями. И эти приложения могут размещаться в разных ЦОД. Наша «небольшая» доработка позволяет перенаправлять разные сессии одного пользователя на разные Gateway — «поближе» к терминальному серверу. Это позволило нам сократить сетевые задержки,  улучшить отклик приложений и уменьшить межцодовый трафик.

Мы много усилий приложили к разработке мониторинга терминальной платформы. Разработанная нами Централизованная Система Мониторинга позволяет интегрировать мониторинг различных составляющих информационной системы: приложений, баз данных, серверов; отслеживать их ключевые параметры; строить зависимости между компонентами, и определять именно тот компонент, что вызвал неработоспособность приложения. Когда сбоит некий компонент, на экране показывается он сам и та часть информационной системы, которая не работает, вплоть до  самого "сбойнувшего" компонента, а остальная работающая часть приложения не отображается на экране, чтобы не ухудшать восприятие. Это позволило нашей круглосуточной службе оперативно определять и устранять причину сбоя.

Мы стали устранять сбои быстро. Пользователи к этому быстро привыкли. Но и этого оказалось мало: при тысячах пользователей терминальной платформы, при сотнях и тысячах пользователей одного приложения даже быстро восстановленный круглосуточной службой сервис успевали заметить несколько десятков пользователей. И очень расстравивались по этому поводу. Мы спросили себя: как мы можем улучшить работу пользователей? Одной из частых причин недовольства пользователей было зависание сервиса на терминальном сервере. Терминальная платформа считала такой сервер самым свободным и направляла на него все новые сессии пользователей, где они пропадали как в чёрной дыре. Мы доработали наш мониторинг: научились находить такие серверы, научились выводить их из состава приложения. И началась у дежурных служб с той поры счастливая и спокойная жизнь, и пользователи были довольны.

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

Наша инсталляция терминальной платформы стала настолько большой, что её upgrade стал нетривиальной задачей: единовременно выполнить upgrade всех серверов не представлялось возможным. Мы проапгрейдили часть терминальной платформы, доработали страницу списка приложений пользователя, чтобы она могла смотреть в обе платформы. И пользователи даже не догадывались, что их приложения потихоньку переезжают на новую версию терминальной платформы.

За долгие годы поддержки решения на базе Citrix XenApp мы накопили уникальный опыт администрирования ПО терминального доступа.

 

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

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

Группе пользователей организуется доступ к ресурсам для совместной работы: файловые и портальные ресурсы, принтеры. Виртуальный десктоп с точки зрения администрирования мало отличается от физического. Поэтому для унификации доступа пользователей к приложениям требуется так же использовать виртуализацию приложений: Citrix XenApp, MS App-v, Vmware Thinapp и др.

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

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

В работу самих пользователей виртуальные десктопы привносят дополнительные удобства: пользователь продолжает работу с того момента, когда он отключился от десктопа, просто снова подключившись к нему. Он получает доступ одинаково, откуда бы ни подключался, с какого бы устройства ни подключался. В случае «выхода из строя» виртуального десктопа его можно просто пересоздать или восстановить из резервной копии. А в случае выхода из строя клиентского устройства, его можно быстро заменить любым другим, после чего снова подключиться к своему виртуальному десктопу и продолжить работу.

Мы рады помочь Вам в решении задач по организации доступа пользователей к приложениям и виртуализации десктопов.

Ждём Ваших обращений!