Кто такой тонкий клиент. Основные преимущества терминального доступа. Основные отличия между тонким и толстым клиентом

Тонкие клиенты (thin client) - устройства (терминалы), не имеющие собственных вычислительных мощностей, подключенные к общему для всех пользователей серверу и способные отображать информацию. Иначе говоря, они представляют собой бездисковые компактные персональные компьютеры (бездисковые тонкие клиенты), к которым подключаются обычные периферийные устройства — клавиатура, мышь, монитор, акустические системы и т. д.

Тонкие клиенты с терминальным сервером соединяются через локальную сеть или коммутируемое соединение (модем). На сервере установлены все необходимые для Вашей работы программы и приложения. На нем же хранятся данные и выполняются все вычисления.

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

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

Какие задачи решаются при внедрении тонких клиентов?

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

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

— снижение начальных затрат на приобретение, вследствие минимальных требований к конфигурации;
унификация — все клиенты имеют одинаковый набор программного обеспечения;
— простота реализации задач — нет необходимости настраивать каждый компьютер по отдельности, так как осуществляется централизованное управление информационным процессом. Все настройки для управления тонкими клиентами системный администратор выполняет централизованно на сервере;
— экономия времени системного администратора, обслуживающего абсолютно одинаковые компьютеры, вероятность поломок которых сведена к минимуму, а все программы установлены на сервере;
— масштабируемость — созданный единожды образ системы для работы всей группы пользователей позволяет поддерживать легко масштабируемую сеть. Можно установить столько ПК, сколько требуется, при этом добавление новых рабочих мест требует минимальных усилий;
— безопасность и отказоустойчивость. Терминал, загружаясь, получает операционную систему «от производителя», настройка которой осуществляется только отделом информационной поддержки. Все модификации операционной системы и прикладного ПО никак не влияют ни на других пользователей, ни на образ, хранящийся на сервере. Вся пользовательская информация хранится на сервере на RAID-массиве и регулярно резервируется, что увеличивает отказоустойчивость;
— защита от утечек информации — нет локальных носителей — нет возможности делать копии документов на съемные носители информации.

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

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

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

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

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

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

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

С другой стороны, следует отметить очевидное преимущество - существенное повышение уровня защищенности данных. Так, отключение администратором портов ввода-вывода делает невозможным несанкционированный съем информации. А разграничение доступа к данным и программам осуществляется системными средствами на сервере. Шифрование сетевого трафика позволяет достичь максимального уровня защиты информации.

Тонкие клиенты (thin client) - устройства (терминалы), не имеющие собственных вычислительных мощностей, подключенные к общему для всех пользователей серверу и способные отображать информацию. Иначе говоря, они представляют собой бездисковые компактные персональные компьютеры (бездисковые тонкие клиенты), к которым подключаются обычные периферийные устройства — клавиатура, мышь, монитор, акустические системы и т. д.

Тонкие клиенты с терминальным сервером соединяются через локальную сеть или коммутируемое соединение (модем). На сервере установлены все необходимые для Вашей работы программы и приложения. На нем же хранятся данные и выполняются все вычисления.

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

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

Какие задачи решаются при внедрении тонких клиентов?

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

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

— снижение начальных затрат на приобретение, вследствие минимальных требований к конфигурации;
унификация — все клиенты имеют одинаковый набор программного обеспечения;
— простота реализации задач — нет необходимости настраивать каждый компьютер по отдельности, так как осуществляется централизованное управление информационным процессом. Все настройки для управления тонкими клиентами системный администратор выполняет централизованно на сервере;
— экономия времени системного администратора, обслуживающего абсолютно одинаковые компьютеры, вероятность поломок которых сведена к минимуму, а все программы установлены на сервере;
— масштабируемость — созданный единожды образ системы для работы всей группы пользователей позволяет поддерживать легко масштабируемую сеть. Можно установить столько ПК, сколько требуется, при этом добавление новых рабочих мест требует минимальных усилий;
— безопасность и отказоустойчивость. Терминал, загружаясь, получает операционную систему «от производителя», настройка которой осуществляется только отделом информационной поддержки. Все модификации операционной системы и прикладного ПО никак не влияют ни на других пользователей, ни на образ, хранящийся на сервере. Вся пользовательская информация хранится на сервере на RAID-массиве и регулярно резервируется, что увеличивает отказоустойчивость;
— защита от утечек информации — нет локальных носителей — нет возможности делать копии документов на съемные носители информации.

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

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

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

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

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

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

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

С другой стороны, следует отметить очевидное преимущество - существенное повышение уровня защищенности данных. Так, отключение администратором портов ввода-вывода делает невозможным несанкционированный съем информации. А разграничение доступа к данным и программам осуществляется системными средствами на сервере. Шифрование сетевого трафика позволяет достичь максимального уровня защиты информации.

Сегодня терминальный доступ к серверу с виртуальным рабочим местом во многих случаях практичнее, чем мощный компьютер с ШПД 100 Мбит/с, так как, например, с работы домой (или в командировку) его не повезешь. И все при том, что производительность будет та же.

Существует множество вариантов как такой доступ организовать, объединяет все эти варианты одно: с маленькой слабой "железки" можно работать на большой и высокопроизводительной. Причем эта "железка" может быть сервером или облаком, к которому так же подключается еще куча народу.

Собственно такие корпоративные решения не редкость и существуют они не первый год. Интересно тут до какого уровня дошли эти технологии сегодня. Потому что офисному клерку для работы обычно вполне достаточно возможности производить различные операции с текстовыми файлами и электронной почтой. А вот такие вещи как работа с видео или 3D-моделированием стали доступны в удобном режиме не так давно.

И то, что они стали доступны, говорит о том, что использовать эти решения можно и для работы, и для развлечения. То есть рано или поздно можно будет использовать не только рабочий виртуальный desktop, но и личный, так как сегодня у каждого дома стоит свой ПК.

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

Что можно использовать в личных целях

У Citrix, к примеру, есть демоверсия виртуального рабочего стола, и надо сказать, что она работает на смартфоне без задержек при достаточно медленном Wi-Fi на скорости всего 500 Кбит/с. Единственное неудобство - это отсутствие мыши. Про работу с ПК или ноутбука тут, понятное дело, и говорить нечего. Правда, это конечно демо-версия и в ней просто мало, что можно делать. К примеру, нельзя выйти в интернет.

Так что тут демо не совсем показательны. Из похожих программных продуктов доступных простому пользователю (то есть с бесплатной версией) есть, например, TeamViewer. Тут немного другая история, это работа с одного ПК на другом ПК. Но все же TeamViewer позволяет избавиться от привязанности и к конкретной железке и к месту, в котором стоит эта железка.

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


Компьютер, с которого мы подключились


А это на компьютере, к которому подключились

Текстовые редакторы и браузер работают как надо. А вот с видео начинаются проблемы. Картинка получается намного хуже качеством, чем в оригинале.

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

Для бизнеса

Теперь поговорим именно об уходе от высокопроизводительных пользовательских устройств, за счет перехода на облачные вычисления либо просто на физические серверы. Все это на примере Citrix. Собственно идея статьи возникла после их конференции и разговора с представителем компании Сергеем Халяпиным. Скажу, что есть и другие решения для виртуализации и терминального доступа, например VMware View, Microsoft VDI, Quest vWorkspace, но здесь речь пойдет о Citrix.


Трафик

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

Традиционно у клиентов Citrix изображение на экране меняется не так сильно. Например, Citrix используют для работы в 1С. Выглядит это обычно так: мы заполнили в таблице одну строчку, поэтому во всем экране изменился только небольшой участок с символами. Следовательно, передавать нужно только вот этот небольшой кусочек информации.

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

В базовом варианте, если мы используем экраны 1280 на 1024, для нормальной работы с офисными приложениями достаточно будет в районе 50-60 кбит/с на одного пользователя.

Но если мы смотрим видео, то там речь уже пойдет про 700-800 Кбит/с. А если мы начинаем смотреть Full HD видео, то это 1,5 - 2 Мбит/с на одного пользователя (потому что большое количество точек и много изменений на экране). Но самые высокие требования к полосе пропускания у приложений для работы с 3d графикой. В случаях, когда идет работа с большим чертежом, сборкой из многих элементов, когда мы его в большом пространстве крутим и у нас несколько мониторов с большим разрешением, то здесь совершенно спокойно может понадобиться полоса 3, 5 и 10 Мбит/с на одного пользователя.

Существуют , когда для удаленного доступа нужно не меньше 1 Гбита/с на одного пользователя. К примеру, такой объем трафика понадобился для той же 3D-модели. Она считалась на сервере и была примерно 3х3 метра.

При использовании решения Citrix XenDesktop с технологией HDX 3D Pro, используя карты NVdia, удалось снизить объём передаваемого трафика с рабочего места, осуществляющего визуализацию. Удалённому пользователю передаются только изменения состояния, а также используются эффективные технологии сжатия. Как результат - требуется около 10 Мбит/сек для комфортной удалённой работы пользователя с этим графическим приложением.

Так как полоса пропускания ограничена, существуют решения по оптимизации трафика. У Citrix оно называется Cloud Brige. И даже если клиенту доступна полоса пропускания менее 50-60 кбит/с на человека, с применением Cloud Brige можно сократить эту цифру до 20-30 кбит/с. Причем есть примеры, когда потребности в трафике после оптимизации уменьшались в сто раз: с 1 Гбит/с на человека до 10 Мбит/с.


Есть, правда, у терминального доступа еще одно слабое место, правда, оно уже не зависит ни от поставщика услуги, ни от заказчика, ни от центра обработки данных, который они используют. Это время задержки и потеря пакетов. Сергей Халяпин из Citrix рассказал, что на его памяти самый худший показатель, при котором работать на удаленном сервере все-таки получалось, это задержка 3000ms и 50-60% потерь пакетов. Но это было где-то в Северной Африке

"Я не могу сказать, что работать было комфортно, но работать можно было, то есть можно было набрать какой-то документ, отправить письмо, но это требовало больших волевых усилий. Начинаешь набирать и смотришь, как эти буковки начинают там появляться. Если ты вдруг где-то ошибся, нужно отсчитать сколько символов тебе нужно вернуть, удалить какой символ исправить, и соответственно нажать правильный символ", - рассказал нам Халяпин.

В принципе же решения с тяжелой 3D-графикой позволяют работать с задержкой 200-250 ms. Такое бывает на межконтинетальных линках, например, Россия-США, Япония-Северная Европа. А то, что есть в наших городских сетях, то есть средняя задержка 50-60 ms, это на качестве работы не отражается.

Инфраструктура

Теперь поговорим о ЦОД, на которые ложится вся нагрузка по обработки информации.

В большинстве случаев если заказчик использует серверную инфраструктуру Windows и приложения Windows, то это все, что необходимо для того чтобы развернуть Xen App (решение для работы с приложениями через тонкого клиента) и Xen Desktop (виртуальный рабочий стол).

Если есть проблемы с шириной канала и нужна WAN-оптимизация, то чтобы ее осуществить есть одно единственное требование - трафик в устройства должен попадать не шифрованный.

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

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

По ГОСТам

Есть в России такая область, которой решения с терминальным доступом нужны, но с оговорками. Это госсектор, требующий шифрования по ГОСТам. У зарубежных компаний, занимающихся терминальным доступом, даже доступа к этим алгоритмам шифрования нет.

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

Сергей Халяпин рассказал об одном из примеров такого сотрудничества:

Мы сейчас работаем с заказчиком, которому обязательно нужно обеспечить ГОСТовые алгоритмы шифрования. Мы сейчас будем делать совместное тестирование такой системы, когда управление устройством и российское шифрование от российского вендора, а Citrix предоставляет свои технологии для загрузки контейнера и политик, привязанных к этим контейнерам на мобильные устройства. Разработчик этого российского решения сейчас ведет переговоры с Huawei, Samsung и Yota для того чтобы встроить свой код в сам загрузчик устройства и контролировать процесс загрузки. Пока мы в процессе тестирования я не могу назвать, кто это и каких результатов достигли.

Выводы

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

А виртуальный desktop им никто и не предлагает. Есть разве что отдельные услуги в облаке, вроде хранения фото и текстовых документов, и надо заметить, что это услуга достаточно популярная. Так как памяти вечно не хватает, особенно на мобильных устройствах. По сути Яндекс Диск - это способ сэкономить на карте памяти.

И вот тут по поводу, так сказать, хомячков, возникает одна мысль (быть может, провидческая). Раз облачное хранение данных стало удобным способом сэкономить на памяти, почему бы облачным вычислениям не стать способом сэкономить на производительности? Кое-какие приложения, с которыми работают через браузер, уже имеются. Так почему бы не появиться целым хомячковым рабочим столам в облаке?

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

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

Собственно и оборудование для тонкого клиента может предоставляться (продаваться/сдаваться в аренду) абоненту провайдером, как сейчас роутеры и тв-приставки. По слухам, не так давно один крупный российский оператор всерьез задумывался о том, чтобы вместе с телевидением в HD качестве давать своим абонентам телевизор и брендированные телевизоры с HD-мониторами. Так что мои фантазии о халявном тонком клиенте имеют под собой определенную почву.

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

Примечания

. Там у пользователя, работавшего с приложением, было 2 монитора с огромным разрешением (WQXGA 2560 x 1600 (16:10) 4,09 Мпикс). Каждая точка из 4 миллионов должна иметь информацию о цветности. Сейчас это 32 бита.

Тогда в статическом режиме 2 (монитора) * 32 (бита - информация о цветности) * 3200 * 2048 = 250 Мбит.

Таким образом, получалось, что для показа картинки хотя бы с частотой 30 кадров в секунду нам нужна была полоса пропускания 7 500 Мбит/с. А специфика ПО заказчика была такова, что сервер, который просчитывает необходимую картинку, стоял отдельно от рабочего места где эта картинка выводилась. Учитывая этот факт и то, что ПО и карта обмениваются подготовленной информацией, общая полоса пропускания, которую нужно было предоставить для нормальной работы, составляла 1 Гбит/сек.

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

Что такое тонкий клиент по своей сути?

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

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

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

Схема «сервер - тонкий клиент»: как это работает?

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

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

Загрузка операционных систем

Но как же операционная система может загружаться на компьютер без жесткого диска? Элементарно! Современные соединений могут использовать протоколы вроде RIS, DHCP, PXE, RDP и другие.

Получается, что фактически операционной системы на удаленной клиентской машине нет, но терминал может работать с ОС, установленной на сервере, при этом частично используя и его вычислительные возможности, и конфигурации компьютеров в окружении. Таким образом, сами тонкие клиенты этого типа получают распределенную по всей сети нагрузку на компьютерные ресурсы, а быстродействие ОС от этого не страдает. Плюс еще и в том, что администрирование клиентских машин в плане физического вмешательства в настройки ОС на каждой из них совершенно необязательно. Сделать это можно с администраторского компьютера или сервера посредством самого обычного удаленного доступа. В данном случае речь идет о том, что используется тонкий клиент на Windows (RDP), который в седьмой версии и выше является встроенным.

Система «тонкий клиент»: требования

Если речь идет именно о компьютерных терминалах, для работы тонкого клиента любого типа обычно достаточно самого простенького процессора и всего-то 1 Мб оперативной памяти.

В случае когда используется какая-то интернет-среда (например, Office 365), в обязательном порядке необходимо наличие хоть какого-то веб-браузера и достаточно высокой скорости подключения. С «Офисом», кстати, ситуация выглядит достаточно интересно. Дело в том, что этот интернет-проект использует возможности, присущие большинству программ этого типа с возможностью одновременного доступа и редактирования отдельно взятых документов, пусть даже сохраненных в облачном хранилище.

Пример установки и настройки приложений 1С

Однако посмотрим, что собой представляет установка тонкого клиента на примере программных продуктов 1С.

Требование тут самое простое: серверная часть находится на центральном терминале, клиенты - на остальных машинах в локальной сети. Только в данном случае использование подключения через обычно применяется на уровне TCP/IP, HTTP или HTTPS, а на терминалах устанавливаются жесткие диски минимального объема для инсталляции клиентской части программы.

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

  • загрузка и инсталляция клиентов 8.2 и 8.3;
  • публикация базы данных на сервере;
  • добавление базы в список доступных;
  • установка подключения типа «веб-сервер».

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

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

Подключение и лицензии

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

Выгоды и преимущества

Если посмотреть на преимущества, которые получает организация или предприятие при использовании тонких клиентов, они в основном сводятся к нескольким вещам. Во-первых, наблюдается существенная экономия затратных средств на приобретение необходимого «железного» оборудования или программного обеспечения. Во-вторых, сразу же отпадает проблема администрирования пользовательских терминалов, находящихся в локальной сети. Как уже говорилось выше, сделать это можно просто с центрального сервера. В-третьих, появляется возможность использования на всех сетевых машинах одной операционной системы и одинакового ПО. Правда, на самом сервере должна быть установлена именно серверная версия ОС, хотя некоторые системные администраторы при небольшом количестве дочерних терминалов умудряются пользоваться даже обычными стационарными модификациями.

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

Часть первая: Немного лирики

Нижеследующий текст автора не претендует на истину в последней инстанции и по нему не стоит судить о среднестатистическом уровне IT инфраструктуры в небольших компаниях нашей необъятной страны. Статья написана по мотивам общения с многочисленными знакомыми IT-шниками (в основном уровня «студент» и «только что из института»), начинающих свою карьеру с эникейщика в небольших компаниях.

Давайте представим себе среднестатический офис небольшой торговой фирмы с точки зрения IT:

  • несколько десятков слабеньких компьютеров для секретаря, менеджеров, бухгалтерии и, конечно, главного Босса;
  • одна-две-три машины, выполняющих роли:
    • домен-контроллера windows (нередки случаи, когда в сети компании отсутствует даже домен, а все компьютеры работают в одно-ранговой сети);
    • файлового сервера;
    • почтового сервера (вместо него иногда используют внешние бесплатные почтовые сервера, начиная от mail.yandex.ru и gmail.com и кончая десятидолларовым хостингом на N почтовых ящиков);
    • http-прокси для фильтрации доступа ко внешним ресурсам и логирования «куда кто ходит» (часто отсутствует)
    • маршрутизатора/файрвола на границе с внешней сетью для ограничения доступа наружу и наоборот (часто в качестве пограничного маршрутизатора используется любой SOHO-роутер начального уровня ценой до 100 долларов, он же выполняет роль DHCP сервера (для динамической раздачи IP адресов рабочим станциям сотрудников);
    • другие вещи, список которых может быть довольно большим;
  • несколько принтеров, часто подключенных локально к рабочим станциям сотрудников и расшареных по сети стандартными средствами Windows (как вариант, принтеры могут быть сетевыми изначально или же подключены через аппаратные принт-сервера).
  • в продвинутых случаях - один терминальный сервер (под Windows) для бухгалтерии (на нем крутится 1C а там же лежит база данных оной, а бухгалтеры, подключаясь к серверу терминалов через стандартные средства Windows (remote desktop), работают с ней на терминальном сервере (локально), что, во-первых, дает больше удобства, а во-вторых, ускоряет работу самой 1C (обычно же 1С с базой установлена на компьютере одного из бухгалтеров, а остальные подключаются к ней со своих компьютеров, работая с расшареной по сети базой).

Все это хозяйство связано в единую локальную сеть посредством одного/нескольких дешевых коммутаторов на 100Мбит. И работает это в едином домене NT/Active directory (хотя встречаются варианты одноранговых рабочих станций безо всяких доменов).

На всех машинах с Windows обычно установлен (хотя и тут бывают исключения) какой-то антивирус. Часто встречается не сетевые версии этих программ (тот же Avast), хотя, опять таки в более продвинутых (с точки зрения IT) конторах, стоят сетевые версии антивирусов с централизованным управлением и обновлением антивирусных баз.

Приведенные выше ситуации варьируются от случая к случаю, так как на конфигурацию сети, железа и софта влияют как знания/умения/желания (и, что немаловажно, лень) системного администратора(ов), так и понимание начальства (в лице главного Босса) «чем же именно этот наш системный администратор занимается, когда все и так отлично работает» (из последнего вытекает - сколько денег выделяется на оборудование для IT и зарплату будущего специалиста). Если денег выделяется мало (а так обычно и бывает — управленцы торговых компаний от IT обычно далеки и слабо понимают, что же там происходит), то поднабравшийся знаний эникейщик уходит в другую компанию. На место ушедшего приходит очередной студент и все повторяется по новой.

Думаю излишне говорить, что в подобных конторах отдел системного администрирования состоит из одного человека, который совмещает в себе инженера по прокладке/поддержанию офисной сети, системного администратора как такового (т.е. ту самую личность, что отвечает за работоспособность серверного парка на программном и аппаратном уровнях и внедрением нового функционала) и эникейшика - «мальчика на побегушках» — который занимается разрешением проблем у пользователей, протиркой мышек, сменой картриджей у принтеров и подобными вещами.

В результате, в небольших компаниях часто наблюдается довольно разнообразный парк пользовательских машин класса от pentium2/128Mb ram/5Gb hdd до P4 Celeron/1Gb ram/80Gb hdd. На всех машинах, разумеется, Windows (98, 2000 и XP Home/Pro) и разные версии софта (ставили то машины в разное время). Доходит до того, что и антивирусное ПО на машинах тоже от разных производителей.

А на нелегкую долю системного администратора (и эникейщика по совместительству), выпадает денно и нощно поддерживает весь этот зоопарк. А ведь железо иногда ломается:

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

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

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

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

Счастливый обладатель восстановленного компьютера садится за свое рабочее место, после чего выясняется, что (так как доменные профили были не перемещаемые или же домена не было вовсе, ссылка «мои документы» вела на локальный диск C:, а про то, что все важное нужно сохранять на сетевом диске - на сервере, сотрудник забыл):

  • у меня тут была папка с важными документами - где она?
  • а еще я там фотографии из Турции сохранил, можно их восстановить?
  • на рабочем столе было много важных ярлыков и еще сотня документов - куда они пропали?
  • в избранном (это про закладки в браузере) моих любимых сайтов больше нет - где их теперь искать? и так далее…

Знакомо? Хорошо, если полетел не жесткий диск, а всего лишь материнская плата. Или же часть информации на осыпавшемся диске поддается восстановлению. Но все эти процедуры занимают рабочее время системного администратора, которое можно было бы потратить с куда большей пользой — поиграть в сетевую стрелялку или же… изучить IPv6 - ведь уже все на него переходят и совсем скоро перейдут, адреса в пространстве Ipv4 уже лет пять как закончились:)

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

  • переустановить Windows;
  • настроить на новой машине весь необходимый софт;
  • восстановить все то, что потерялось;
  • доустановить нуждающимся новые программы;
  • провести профилактику корпуса (пыль пропылесосить в системном блоке);

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

Как же выйти из этого замкнутого круга?

Одним из вариантов решения вышеописанной проблемы, является отказ от «толстых» рабочих станций (там, где это можно сделать) и переход на .

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

Надо понимать, что требования современных ОС (не обязательно Windows) идут в ногу с современным железом - другими словами, для относительно комфортной работы в Windows XP старой (но полностью работоспособной и относительно мощной) машины класса Celeron 800Mgz/128Mb Ram/ 10Gb HDD может и не хватить. Работать под современной ОС на подобном железе, конечно, можно, но подтормаживать эта операционка и приложения будут довольно часто — хотя бы из-за малого количества набортной памяти и старого (читай — медленного) жесткого диска.

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

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

Сравнение тонкого клиента Clientron U700 со стандартным корпусом для рабочей станции.

В результате, при включении тонкого клиента (их еще называют терминалами), ОС грузится со встроенного flash-диска (обычно на загрузку уходит менее 30 секунд), после чего на экране появляется диалог подключения к терминальному серверу. Некоторые из этих клиентов умеют подключаться только Windows Terminal Server или же Citrix Metaframe, другие - в том числе и к терминальным серверам других ОС. В любом случае, в цену таких решений закладывается и цена лицензии на WindowsCE, прошитую на встроенный flash-диск. Мы рассказывали о подобных решениях ранее:

  • Windows-терминал
  • Тонкий клиент
  • Windows-терминал

Разумеется, подобные решения существуют и у других компаний. В том числе и без встроенной ОС (за которую, в случае Microsoft Windows CE, нужно дополнительно платить, да и flash-диск копейки, но стоит).

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

Несомненные плюсы терминальных решений на специализированных тонких клиентах или правильных самосборных компьютерах:

  • отсутствие жесткого диска (которые греются и ломаются);
  • отсутствие вентиляторов (на процессоре и блоке питания установлены лишь радиаторы, которых хватает для рассеивания выделяемого при работе тепла);
  • низкое энергопотребление;
  • теоретическая дешевизна (при самосборе можно подобрать очень дешевые комплектующие — ведь производительности от железа не требуется; а вот производители за специализированные тонкие клиенты попросят раза в два больше)
  • минимальные временные затраты на обслуживание (при поломке такой железяки, достаточно отключить поломавшуюся и подключить запасную — работы на пять минут; а это уже минимальный простой для рабочего места сотрудника, а так же минимум затраченного на устранение поломки времени системного администратора)
  • весь софт для работы пользователей настраивается централизовано на одном (двух/трех/…) терминальных серверах — это значительно проще, чем поддерживать зоопарк софта на «толстых» рабочих станциях сотрудников

Не стоит забывать и о пользовательских данных — локально терминал ничего не хранит (все данные пользователя находятся на удаленных серверах). В результате легко настроить автоматических бекап всего и вся и, в случае чего, восстановить «случайно удаленный» документ.

В общем, плюсов море, но есть и минусы:

  • при отказе сети, рабочие места сотрудников «превращаются в тыкву» (а сотрудники на «толстых» клиентах могут продолжать набивать документ, к примеру, в OpenOffice);
  • при отказе терминального сервера рабочие места сотрудников опять «превращаются в тыкву» (но это решается установкой нескольких - например, двух - терминальных серверов; при выходе одного из них из строя, второй его подменит или же сотрудники просто переподключатся ко второму серверу вручную)
  • тонкие клиенты подходят не всем: к примеру, людям, постоянно смотрящим видео или работающим активно работающих с графикой (в фотошопе) или занимающимся версткой журнала, лучше делать это на локальном «толстом» клиенте (зато тонкие клиенты отлично подходят большинству остальных сотрудников, которым нужен лишь браузер с Интернет, почта, создание и редактирование документов в Openoffice и работа с 1C).

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

  • лицензия на Windows Server
  • CAL (Client Access License) — лицензии на подключение к Windows-серверу и их кол-во должно быть не меньше количества подключаемых к серверу клиентов (обычно в составе Windows-сервера уже идет некоторое кол-во таких лицензий — от пяти и выше)
  • лицензии на работу с сервером терминалов (их количество тоже должно быть равно количеству подключаемых клиентов)

Не забываем про отдельные лицензии на весь используемый софт (например на Microsoft Office) в количестве, равном количеству подключаемых к серверу клиентов. Если клиентские лицензии на Microsoft Office еще можно обойти, отказавшись от данного продукта и поставив ему замену в виде, к примеру, OpenOffice, то от самого терминального сервера в лице Windows 2000/2003 TS избавиться несколько сложнее:) Хотя и это возможно в некоторых случаях.

Есть, правда, еще один «минус» (кроме боязни нового) который часто останавливает от внедрения подобных решений - почему то многие думают, что эти тонкие клиенты надо покупать (а они не очень дешевые - от 200 долларов и выше). Куда же девать весь парк уже существующих компьютеров?

Именно для ответа на последний вопрос написана данная серия статей. В ней будет рассматриваться софт тонкого клиента .

Этот небольшой, но обладающий множеством возможностей и, что немаловажно, OpenSource софт, позволяет превратить практически любые древние компьютеры в тонкие клиенты. Минимальные описанные на его родном сайте к используемому железу - это Pentium 100Mhz и 16Mb оперативной памяти. Ах да, жесткий/flash диск тоже не нужен - компьютеры при включении могут скачивать образ тонкого клиента (это около двадцати! мегабайт) по сети (хотя так же возможна установка Thinstation клиента на жесткий или usb диск). В наш век операционных систем, с радостью сжирающих гигабайты места на диске после установки, это впечатляет, не так ли?

Thinstation базируется на Linux, но для его использования знаний Linux, как таковых не нужно - достаточно в своей сети поднять dhcp и tftp сервера и соответствующим образом их настроить (оба этих сервера есть и в составе продуктов Windows Server). Таким образом, даже в сети, где кроме Windows-а ничего не знают, использование Thinstation клиента затруднений не вызовет.

Thinstation умеет работать со следующими серверами терминалов:

  • Сервера Microsoft Windows по протоколу RDP или через nxclient (Windows NT4TSE, W2k Server, W2k3 Server или же Windows XP в однопользовательском режиме);
  • Citrix servers по протоколу ICA (на серверах MS Windows, SUN Solaris и IBM AIX);
  • Сервера Tarantella
  • *nix-like сервера по протоколу X11;
  • подключение к VNC-серверам (tightVNC);
  • подключение к SSH и Telnet серверам;

Для того, что бы загрузить Thinstation по сети, от компьютера требуется лишь встроенная или внешняя сетевая карта, поддерживающая стандарт PXE (есть и другие варианты, но, к примеру все встроенные в системную плату сетевые карты работают именно по этому протоколу).

PXE расшифровывается как Pre-boot eXecution Environment — среда предзагрузочного выполнения. Этот стандарт был впервые реализован компанией Intel. Первый признак наличия PXE-биоса на борту встроенной сетевой карты, это пункт «Enable Boot ROM» рядом с пунктом активации сетевой карты в биосе. Если встроенная сетевая карта не поддерживает загрузку по сети (или отсутствует вовсе), можно использовать любую внешнюю сетевую плату с опцией «Boot ROM» (этот вопрос в подробностях будет рассмотрен далее).

А сейчас вкратце рассмотрим процесс загрузки клиента Thinstation по сети.

  • Сетевая карта по протоколу PXE запрашивает DHCP сервер следующую информацию: IP адрес, маску подсети, шлюз а так же IP-адрес сервера TFTP (на котором лежат образы, в данном случае, ThinStation) и имя образа, которое она попытается загрузить.
  • DHCP сервер возвращает запрашиваемую информацию (помечая у себя, что выданный клиенту IP адрес — занят таким-то клиентом)
  • Клиент подключается к TFTP серверу, IP-адрес которого ему только что сообщили и скачивает с него файл загрузчика PXE (имя которого ему опять таки сообщил DHCP-сервер)
  • Скаченный PXE загрузчик исполняется и, в свою очередь скачивает с TFTP сервера конфигурационный файл, в котором прописаны имена файлов ядра ОС Linux — vmlinuz и образа файловой системы — initrd. Эти файлы скачиваются и управления передается ядру Linux
  • После распаковки и загрузки ядра Linux с подмонтированным образом файловой системы, Thinstation снова обращается к TFTP серверу для скачивания необходимых ему конфигурационных файлов (там, среди прочего, записаны адреса терминальных серверов, к которым нужно подключаться), после чего запускает нужный терминальный клиент (в нашем случае это будет rdesktop) и ожидает от пользователя ввода его логина с паролем для подключения.

На первый взгляд, описанная схема выглядит сложно. Но по факту настройка оной занимает полчаса-час и в дальнейшем она работает полностью автономно. Загрузка тонкого клиента с момента первого запроса в сеть по PXE (этот момент совпадает с моментом начала загрузки ОС с жесткого диска) занимает секунд 20…30.

Как уже отмечалось выше, Thinstation умеет работать с разными терминальными серверами. Но мы в ближайших статьях, как самое простое в реализации (но еще раз напоминаю о покупке множества клиентских лицензий, необходимых для официальной работы), рассмотрим лишь связку Thinstation с Microsoft Terminal Server.

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

Вторым пунктом нашей программы будет настройка DHCP и TFTP серверов. Первый ведает динамической раздачей IP адресов для рабочих станций, а так же сообщает, с какого IP адреса (с какого сервера tftp) и какое имя файла компьютеру нужно скачать в качестве загрузочного образа тонкого клиента. А второй — tftp сервер — фактически и отдает образы тонкого клиента и конфигурационные файлы для них же. Эти настройки могут быть как глобальными (для всех бездисковых терминалов сети), так и локальные — для определенных групп машин или же одиночных тонких клиентов.

Оба эти сервиса можно поднять как в составе Windows сервера (запуском и настройкой соответствующих служб), так и отдельными демонами в составе *nix-сервера — мы это рассмотрим на примере сервера с установленным Gentoo Linux.

А третьим пунктом идет настройка клиентских машин — перевод их на загрузку по сети и рассмотрение стандартных подводных камней.

Но об этом — в следующих статьях нашего цикла.