Полное руководство по Citrix MetaFrame XP

         

Организация ферм и зон MetaFrame XP


В Главе 2 объяснялость, что такое фермы и зоны. Здесь я хотел бы потратить некоторое время на объяснение, как их проектирование влияет на работу фермы и производительность вашей сети и серверов.



Ориентация в MetaFrame XP


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

Существуют две основных группы параметров настройки MetaFrame. Параметры настройки клиента ICA находятся в группе программ Citrix MetaFrame XP и на панели инструментов ICA Administrator Toolbar; настройки, относящиеся к серверу, доступны в Citrix Management Console.

Параметры настройки ICA Client Configuration

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


На этой панели расположены кнопки (слева направо):

ICA Client Creator

ICA Client Update Configuration

Shadow Taskbar

Citrix Connection Configuration

ICA Client Distribution Wizard

Documentation

Citrix SSL Relay Configuration

Citrix Management Console

Каждый из этих инструментов будет рассмотрен ниже.

Инструменты, содержащиеся на панели ICA Administrator Toolbar, также доступны в группы программ Citrix. Хотя кажется, что группа программ содержит несколько инструментов, не доступных на ICA Administrator Toolbar, это не совсем так. ICA Client Printer Configuration может быть запущен только изнутри сеанса ICA. Еще два инструмента в группе программ Citrix MetaFrame XP будут только работать с MetaFrame XP, если вы установили программное обеспечение в режиме совместимости с MetaFrame 1.8. Инструмент Citrix Server Administration, находящийся в группе программ Citrix, предназначен для управления серверами MetaFrame 1.x, но не серверами MetaFrame XP - если вы нажмете на нем, он запустится, но не будет содержать средств управления MetaFrame XP.

ICA Client Creator

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

А если не ICA Client Creator, то что тогда? После инсталляции MetaFrame XP на сервер Win2K, инсталляционные файлы клиента находятся в каталоге %systemroot%\system32\clients\ICA. Создайте пакетный файл для их установки, используйте NFuse для автоматической инсталляции клиента ICA при попытке клиента подключиться к терминальному серверу, или отправьте эти файлы по e-mail.

Если машина клиента уже содержит установленный клиент ICA, и клиентская машина соединяется с сервером MetaFrame с более свежей версией файлов клиента ICA, то пользователю будет предложено автоматически установить обновление. Вы можете настроить параметры обновления клиента ICA с помощью ICA Client Update Configuration



Печатью




Поскольку эта книга о MetaFrame XP, вы не удивитесь, услышав то, что MetaFrame XP имеет некоторые особенности, предназначенные для уменьшения или устранения проблем, связанных с печатью. MetaFrame XP не делает всего, а дает лишь отправную точку. Он поддерживает назначения принтеров к учетным записям пользователей, уменьшение полосы пропускания при печати, а также автоматическую репликацию драйверов принтеров. Установка FR1 добавляет поддержку другого расширения печати, Универсального Драйвера Принтера, который позволяет печатать на любом принтере, не устанавливая для него драйвер. В Citrix Management Console содержатся большая часть средств управления принтерами, включая:

Управление серверами печати в вашей сети посредством импорта их информации в консоль.

Обновление и удаление информации о сервере печати.

Копирование драйверов принтера с одного сервера MetaFrame на другой.

Поддержка совместимости драйвера принтера.

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

Отображение клиентских драйверов принтера на драйверы принтеров сервера MetaFrame, когда их имена не совпадают.

Автоотображение клиентских принтеров DOS и WinCE.

Настройка автосоздания и использования драйвера для клиентских принтеров (с установленным FR1).

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

Универсальный драйвер принтера в FR1

Хотя Универсальный Драйвер принтера доступен только для тех, кто установил FR1, я собираюсь упоминать его достаточно часто. Поэтому вы должны представлять то, что он из себя представляет. В сущности, универсальный драйвер принтера является ответом Citrix на две фундаментальные проблемы печати на клиентские принтеры, отображенные в сеансах ICA: поддержка драйверов и ограничение полосы пропускания. Универсальный драйвер принтера - не единственный ответ на эту проблему. Одна компания попыталась решить проблему поддержки клиентских принтеров, печатая все документы в файл Adobe Acrobat (PDF), который затем посылали клиенту для последущей печати. Другой подход заключался в сжатии файла UDF, сгенерированного на сервере, с последующей отсылкой его клиенту для печати. Подход с использованием универсального драйвера принтера немного отличается от любого из них. В этом случае драйвер PCL, инсталлированный на принтере, будет работать с любым принтером, занимая некоторое количество полосы пропускания для заданий по выводу на печать, посылаемых на клиентские принтеры, не поддерживающих PCL, и позволяет клиентам печатать из приложений в сеансах ICA, не нуждаясь в драйверах, специфичных для их принтеров, установленных на сервере. Это дает реальные преимущества: использование универсального драйвера может серьезно уменьшить число драйверов принтеров в хранилище данных. Поскольку принтер, использующий универсальный драйвер, ограничен черно-белой печатью с разрешением 300dpi, универсальный драйвер, вероятно, не заменит драйверы для высокопроизводительных цветных принтеров. Но 300dpi вполне достаточно для печати большинства документов, если они не включают фотографии.


Импорт сетевых серверов печати

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

Для импорта сетевого сервера печати в ферму зайдите в раздел Printer Management в Citrix Management Console, щелкните правой кнопкой мыши значок раздела и выберите из контекстного меню Import Network Print Server.

Появившееся диалоговое окно имеет несколько причуд, которые могут сбить вас с толку, если вы не будете осторожны. Во-первых, в имени сервера печати не указывайте обратные наклонные черты (\\), которые вы обычно используете в именах UNC. Во вторых, при первом импорте сетевого сервера печати диалоговое окно автоматически заполнит поле Connected As с именем и доменом (но не паролем) пользователя, зарегистрировавшегося в Citrix Management Console. Заполнение имени и пароля не необходимо, и по моему опыту может привести к ошибкам аутентификации. После того, как вы успешно импортировали один сетевой сервер печати, Citrix Management Console будет пытаться использовать ту же учетную информацию для импорта других серверов.

Если у вас возникли проблемы с аутентификацией на удаленном сервере печати, пробуйте оставить поля Connected As и Password пустыми.

Импортированные серверы печати появляются на вкладке Network Print Servers раздела разделе Printer Management. Они также перечисляются в разделе Printers.


Планирование для Citrix Management Console


По умолчанию, Citrix Management Console устанавливается на всех серверах MetaFrame XP. Однако, используя CD-ROM MetaFrame XP, вы можете установить ее на компьютерах, которые не являются MetaFrame XP, даже на компьютерах, которые вообще не являются серверами . Серьезно рассмотрите этот вопрос. Хотя Citrix Management Console будет на всех серверах MetaFrame, ее запуск на других компьютерах будет препятствовать перегрузке сервера, давая ему возможность эффективно заниматься другой работой. Как я упоминал раньше, основанная на java Citrix Management Console - не самая эффективный по отношению к использованию памяти инструмент, и чем больше у вас объектов управления (серверы, приложения, принтеры), тем больше памяти ей требуется.

Для запуска консоли на отдельном компьютере, вам потребуется ОС, которая ее поддерживает. Согласно Citrix, это NT и Win2K, но я запускал Citrix Management Console на Windows 98. (Я не слишком проверял ее под нагрузкой, поскольку Win98 не является моей предпочтительной средой, но, по крайней мере, она установилась и работала. Поскольку консоль можно считать критическим приложением, вам следует запускать ее в более устойчивой ОС, например, Windows 2000 Pro или Windows XP.) Вам также необходима исполняемая среда Java от Sun (JRE), но если JRE еще не установлена, то при установке консоли вам будет предложено установить JRE..

Каковы аппаратные требования необходимы для запуска консоли? Подойдет любой компьютер, способный запускать у себя Win2K. Вам нужен процессор Pentium и 25 МБ дискового пространства. Вам также потребуется большое количество RAM для запуска Citrix Management Console - ей необходимо минимум 64 МБ RAM, помимо памяти, требуемой для ОС и других приложений.



Планирование программной среды


При планировании сервера MetaFrame вы должны учитывать три вещи: поддержка MetaFrame и, возможно, NFuse; настройка среды сервера так, чтобы она не вызывала проблем в ферме; выбор базы данных для хранилища данных. Давайте сначала обсудим требования к операционной системе (ОС) для MetaFrame XP.



Планирование разрешений для учетных записей пользователей


Чтобы разрешить пользователям обращаться к ресурсам в ферме серверов, вы выбираете учетные записи группы пользователей. Например, когда вы публикуете приложение, то при выборе сервера, обслуживающего приложение, Citrix Management Console выводит список учетных записей пользователей из доверительного пересечения всех серверов (учетные записи, которым доверяют все серверы). Из этого списка вы выбираете пользователей и группы, которым вы хотите разрешить использовать приложение. После того, как вы выберете пользователей, изменение списка серверов может изменить доверительное пересечение, что может сделать приложение недоступным пользователям, которые больше не находятся в этом пересечении. При изменении доверительного пересечения, консоль сообщает вам об этом и удаляет из списка уполномоченных пользователей тех, которые больше не имеют право использовать ресурс.

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

Если вы публикуете приложение или контент для группы серверов, участвующих в распределении нагрузки, убедитесь, что люди (индивидуальные пользователи или группы), которым вы предоставили доступ к публикуемому материалу, имеют доступ ко всем серверам. Если приложение публикуется для нескольких серверов, вы не можете предсказать, к какому серверу подключится клиент ICA - такова особенность подключения к опубликованному приложению в отличие от подключения к специфическому серверу. Если пользователь не имеет права регистрироваться на всех серверах, публикующих приложение или контент, то он иногда будет способен запустить опубликованный материал, а иногда - нет. Для предотвращения непредсказуемого доступа, MetaFrame XP удаляет пользователей из списка уполномоченных пользователей для опубликованного приложения, если учетные записи не находятся в доверительном пересечении для всех серверов.



Планирование сервера и структуры Домена


Успешная установка MetaFrame XP сводится не только к инсталляции программного обеспечения на сервер Win2K, установке лицензий и последующей раздачи клиентов ICA. Процесс гораздо более сложен, поскольку способ работы структуры домена может влиять на функционирование вашей фермы серверов MetaFrame XP.



Подготовительная Работа


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

Убедитесь, что Win2K Terminal Services находится режиме сервера приложений

MetaFrame работает только на серверах Win2K с Terminal Services, установленными в режиме Application Server, а не в режиме Remote Administration. Вы можете легко проверить режим в окне Terminal Services Configuration (в разделе Server Settings).

Убедитесь, что у вас есть достаточно TSCAL для поддержки всех пользователей MetaFrame

Мы обсуждали это требование в , но позвольте мне еще раз напомнить: для поддержки сервера MetaFrame вам необходимы как лицензии MetaFrame, так и Win2K TSCAL. В отличие от MetaFrame, лицензии TSCAL не могут объединяться в пул, поэтому вы должны убедиться, что имеете их достаточное количество.

TSCAL перечисляются в утилите Terminal Services Licensing, устанавливаемой на всех серверах лицензирования Win2K Terminal Services.

Убедитесь, что никто не использует сервер во время установки MetaFrame XP

Во время установки MetaFrame XP никто не должен использовать сервер; вы будете вносить изменения в файловую систему и должны будете перезагрузиться. В частности, никто не должен соединяться с терминальными службами ни через RDP, ни через ICA, если вы обновляете предыдущую инсталляцию MetaFrame. Для этого запустите Terminal Services Configuration, щелкните правой кнопкой мыши на установленном протоколе (RDP, если вы правильно установили Terminal Services; ICA будет только в том случае, если вы ранее устанавливали какую-нибудь ферму MetaFrame или WinFrame.) Щелкните правой кнопкой мыши на протоколе, и в меню All Tasks запретите соединения.

Если вы ранее установили MetaFrame и поддерживаете несколько транспортных протоколов или более одной сетевой карты, то вы сначала должны отключить ICA для каждого протокола и сетевой карты. RDP поддерживает только одну сетевую карту и работает только с TCP/IP, поэтому у вас не будет более одного экземпляра RDP.


Если вы добавляете MetaFrame к работающему терминальному серверу Win2K, вам может потребоваться согнать с него пользователей (или закрыть их сеансы RDP). Вы можете сделать это или с комадной строки, или из GUI. В обоих случаях предупредите людей, что вы выключаете сервер до того, как сделаете это. Сначала разошлите пользователям сообщения, а потом завершите оставшиеся сеансы. Для выполнения этой задачи из GUI, откройте Terminal Services Manager и вы увидите все активные сеансы. Щелкните правой кнопкой мыши на одном из них и в всплывающем меню, выберите Send Message. Откроется диалоговое окно, в котором напечатайте ваше сообщение и щелкните OK для его отправки. Вы можете посылать сообщения только активным сеансам, не разъединенным.

После того, как вы предупредили пользователей, запретите соединения RDP, как описано выше.

С помощью графической утилиты вы можете одновременно послать только одно сообщение, поэтому задача несколько облегчается при использовании командной строки. Для отправки сообщения всем пользователям одного терминального сервера, введите с командной строки терминального сервера: msg * Server going down in 10 minutes. Please save your work and log off your terminal sessions.

Здесь звездочка означает, что сообщение должно быть послано всем активным сеансам терминального сервера. Повторяю, сообщение не будет доставлено в разъединенные сеансы. По истечении 10 минут запретите RDP в окне Terminal Services Configuration.

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

Echo y |reset session ica-tcp Echo y |reset session rdp-tcp change logon /disable

Кажется, что вы можете запретить RDP командй change logon, но это не так. Эта команда запрещает будущие сеансы и не затрагивает текущие сеансы. Вы также не можете приостановить или остановить службу the Terminal Services. Эта служба не может быть остановлена ни графической утилитой, ни с командной строки.

Если вы хотите полностью изолировать сервер, вы можете приостановить службу Server. Для этого откройте Computer Management, найдите значок Services в разделе Services and Applications и дважды щелкните для отображения списка всех служб Win2K и их состояния. Найдите службу Server, дважды щелкните на ней для открытия окна свойств. Щелкните Pause. Вы увидите диалоговое окно, показывающее прогресс остановки, а затем окно с состоянием службы.

Если вы совсем остановите (Stop) службу Server, то имейте ввиду, что это отключит все соединения рабочих станций с сервером и остановит все зависимые службы - Computer Browser, Dfs, Net Logon и BINL. При повторном запуске службы Server вам будет необходимо вручную перезапустить эти службы.

Приостановка (Pause) службы Server не затронет текущие сеансы и не повлияет на другие зависящие от него службы. Это просто предотвратит создание новых сеансов.

Вы также можете для приостановки службы использовать команду: net pause server


Подготовка к клонированию сервера MetaFrame


На следующем этапе вам придется сделать небольшую работу, относящуюся к MetaFrame. Прежде всего тщательно выберите ваш сервер. Клонируемый сервер должен находиться в зоне с заданным по умолчанию именем (так, чтобы имя могло быть сгенерировано на основании подсети, в которой находится сервер). Этот сервер не должен быть первым сервером в ферме, содержащий хранилище данных на базе Access, поскольку клонирование такого сервера также будет клонировать хранилище данных. Хотя мы еще не обсуждали сертификаты SSL, не клонируйте серверы с установленными сертификатами SSL, потому что эти сертификаты уникальны по отношению к компьютерным аппаратным средствам. (Если вы их не устанавливали, то не беспокойтесь об этом). Кроме того, вы не должны клонировать сервер с переназначенными серверными дисками.

Если Вы клонируете сервер, используя для хранилища данных Access, следуйте этим инструкциям:

Удалите файл wfcname.ini в корневом каталоге системного диска. Этот файл идентифицирует сервер по имени, поэтому вам не следует включать эту информацию в процесс клонирования.

Остановите службу IMA и настройте ее на ручной запуск.

Удалите следующие значения из реестра Windows:

HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMA\Runtime\HostId HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMA\Runtime\ImaPort HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMA\Runtime\MasterRanking HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMA\Runtime\PSRequired HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMA\Runtime\RassPort HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMA\Runtime\ZoneName

По завершении подготовки к клонированию для Win2K, включая запуск Sysprep, чтобы заставить сервер сгенерировать новый SID, имя сервера, и пароль Администратора, сделайте образ сервера с помощью программного обеспечения клонирования (Ghost и пр.), а затем установите образ на дополнительных серверах.

Настройте службу IMA на автоматический запуск и запустите ее.

Для настройки только что склонированного сервера MetaFrame XP, выполните следующее:

Добавьте в реестр ключ HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMA\ServerHost и установите для него имя сервера.



Подготовка к клонрированию Win2K


В первую очередь вы должны убедиться, что у вас есть последняя версия утилиты Sysprep. Роль Sysprep состоит в отделении информации, специфичной для сервера (например, Security ID - SID). В состав Win2K идет Sysprep 1.0, но эта версия зависит от контроллера диска. Получите версию Sysprep 1.1, установив Service Pack 2 (SP2) для Win2K, или загрузив ее с сайта Microsoft.

После загрузки Sysprep не запускайте ее - вы еще не готовы. Сначала, зарегистрировавшись под администратором, сделайте следующее:

Создайте локальную учетную запись с правами Администратора. (Да, у вас уже есть уже учетная запись Администратора. но вам понадобится еще одна)

Настройте ОС так, как нужно - настройки, приложения, сервисные пакеты, и т.д.

Удалите компьютер-шаблон из всех доменов, членом которых он является .

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

Создайте папку \Sysprep в корне системного диска компьютера-шаблона (например, C:\Sysprep) и скопируйте в нее sysprep.exe и setupcl.exe

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

Войдите, используя учетную запись Администратора, которую вы только что создали, и скопируйте профиль Администратора в профиль Default User. Для этого в панели управления, в System, на закладке User Profile выберите из списка профиль администратора и нажмите Copy To. В диалоговом окне Copy To выберите папку Default User и щелкните OK.

Выйдите, снова войдите под обычным Администратором и удалите вторую учетную запись Администратора.

Очистите пароль Администратора, чтобы его можно было перезаписать.

Вы можете также использовать Win2K Setup Manager для создания файла sysprep.inf, чтобы автоматизировать мини-становку, которая будет иметь место после перезагрузки клонированного компьютера. Этот шаг является необязательным, но сэкономит время во время инсталляции.



Подготовка: как работает печать


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

Графический интерфейс устройства (GDI)

Драйвер Принтера

Спулер печати

Монитор Порта

Когда вы посылаете задание по выводу на печать на принтер, сначала начинает работу GDI. Он отвечает за создание визуального вывода, независимо от того, экран это или принтер. GDI вызывает соответствующий драйвер принтера, сообщая информацию об используемом устройстве печати, и тип данных, используемый для генерации задания - RAW или EMF. Поскольку мы говорим о задании по выводу на печать, сгенерированном на компьютере Win2K, типом данных всегда будет EMF. Это означает, что задание по выводу на печать будет предварительно отформатировано до того, как оно будет послано на принтер.

Ядро Win2K ОС не предназначено для непосредственного обращения к принтеру - иначе Microsoft должен был бы встроить в операционную систему поддержку каждого принтера и применять исправления всякий раз, когда выпускается новый принтер. Вместо этого роль посредника между ОС и принтером выполняют драйверы принтера . Драйверы принтера специфичны для конкретной ОС, даже среди семейства ОС Win32. Драйвер принтера не монолитен. Фактически он имеет три поддрайвера, которые работают вместе как модуль. Драйвер графики принтера преобразует команды GDI в команды Интерфейса Драйвера (Device Driver Interface, DDI), которые можно послать на принтер. Драйвер интерфейса принтера обеспечивает информацию о настройке принтера и связь между драйвером графики принтера и файлом данных характеристик. Этот файл обеспечивает информацию о возможностях принтера - о том, что может делать эта конкретная модель принтера: разрешающая способность, поддержка цвета, двусторонняя печать и т.д.

После того, как драйвер принтера подготовил создание задания на печать для соответствующего принтера, драйвер принтера передает задание в спулер печати (print spooler), набор DLL и драйверов устройств, которые получают, обрабатывают, планируют и распределяют задания по выводу на печать. Подобно драйверу принтера, спулер печати фактически состоит из нескольких частей, работающих вместе: маршрутизатор печати, буферный файл и процессор печати. Маршрутизатор печати клиента (на компьютере, генерирующем задание по выводу на печать) связывается с маршрутизатором печати сервера через вызов удаленных процедур (RPC). Когда маршрутизатор печати сервера печати получает запрос печати, он передает запрос соответствующему провайдеру печати (print provider) - локальному провайдеру печати, если принтер подключен локально, или сетевому провайдеру печати, если принтер сетевой. Чтобы найти правильного правайдера печати, маршрутизатор печати опрашивает провайдера печати Windows. Этот провайдер затем находит соединение, которое распознает имя принтера и посылает RPC маршрутизатору печати, находящемуся на сервере печати. Тот локальный правайдер печати затем пишет содержимое задания в буферный файл (spool file) - файл, который содержит печатную информацию и служебную информацию - и отслеживает управляющую информацию для этого задания. После того, как провайдер печати создал буферный файл, процессор печати работает с драйвером принтера, чтобы послать буферный файл на принтер.

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

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

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

Только отображение клиентских принтеров в сеансах ICA открывает целую кучу проблем. Если клиенты не используют Win2K Pro, имена драйверов, установленных на сервере MetaFrame (который базируется на W2K), могут не совпадать - а они должны совпадать, иначе печать не будет работать. Если задание по выводу на печать посылается на принтер клиента, отображенный в сеансе ICA, оно будет передаваться по одному из каналов ICA, как звук или 24-разрядный цвет. Таким образом, задания по выводу на печать, посланные по медленным сетевым соединениям, не только займут долгое время, но и будут воздействовать на сеансы ICA, пытающиеся использовать этот же сетевой маршрут.



Подготовка сервера MetaFrame к клонированию


Другой способ создать серверы MetaFrame, не проходя через мастер установки, состоит в клонировании компьютера посредством программ создания образов дисков - таких, как Symantec Norton Ghost или PowerQuest Disk Image. Вы не можете клонировать сервер MetaFrame вслепую, вым необходимо предпринять ряд подготовительных шагов..



Понимание смешанного Режима


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



Посылка Сообщений


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

Для отправки сообщения из GUI единичному пользователю, откройте вкладку Users, щелкните правой кнопкой на имени пользователя и выберите из меню Send Message. Введите сообщение и щелкните ОК. Сообщения будет послано во все сеансы этого пользователя.

Для отправки сообщения нескольким пользователям удерживайте клавишу Ctrl и выбирайте мышью имена пользователей, а затем щелкните правой кнопкой мыши и выберите Send Message.

Вы также можете посылать сообщения с командной строки, используя утилиту msg. Она имеет много опций. Основной синтаксис ее таков: msg {identifier}[/SERVER:servername] [/TIME:sec] [/v] [/w] [message]

Где identifier может быть именем пользователя, идентифкатором сеанса, именем сеанса или именем текстового файла, содержащего список пользователей - получателей сообщения. Параметр /TIME обозначает тайм-аут и используется совместно с параметром /w; это время ожидания ответа пользователя до того, как управление вернется к командной строке отправителя сообщения. Для отправки сообщения одиночному пользователю запустите msg, как в следующем примере: msg Scott Scott, please close FreeCell.

Если вы хотите удостовериться, что Скотт получил сообщение (хотя бы щелкнул OK), используйте опцию /v: msg Scott /v Scott, I mean it. Close the game

Вы увидите вывод, похожий на этот:



Применение полезных групповых политик


Еще одно пожелание состоит в запрещении комадной строки и команды Run, а также запрещение изменения меню Start и панели задач, чтобы пользователи не смогли сами восстановить командную строку и команду Run. Эти групповые политики находятся в User Configuration, Administrative Templates, Start Menu and Taskbar. Запретите панель управления, используя политику Disable Control Panel в разделе User Configuration, Administrative Templates, Control Panel. Раздел User Configuration, Administrative Templates, Windows Explorer также содержит политику для запрещения доступа к выбранным дискам сервера. Если вы разрешите эту политику, пользователи не будут видеть эти диски в My Computer, Windows Explorer, командах Run и DIR, в My Network Places, но приложения и оснастка MMC Disk Management будут показывать эти диски. (Если пользователи попробуют зайти в эти диски, они увидят сообщение об ошибке, говорящее об отсутствии прав для просмотра). Чтобы совсем отнять возможность просматривать нежелательные диски, вы можете запретить использование MMC на сервере MetaFrame из раздела MMC\Administrative Templates. Запрещенные диски все равно видны пользователю (но недоступны для просмотра их содержимого), поэтому если вы хотите удалить соблазн и избежать вопросов почему некотрые диски недоступны, вы можете применить другую политику в ту же папку: Hide These Specified Drives in My Computer.

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



Проектирование фермы: одна ферма или несколько?


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

Однако, это не всегда лучший выбор. Если вы используете единственную ферму, то получаете следующие выгоды:

Объединенные лицензии - если вы специально не назначаете лицензии на специфический сервер MetaFrame, все лицензии MetaFrame XP в единственной ферме объединяются в пул. Поскольку клиентские лицензии на сединения, если они не используются, возвращаются в пул, этот метод самый эффективный с точки зрения хранения лицензий.

Упрощенное обслуживание и управление серверами MetaFrame - Citrix Management Console показывает все содержимое фермы, но может показывать одновременно только одноу ферму; вы не можете смотреть и работать с несколькими фермами, как вы работаете с несколькими доменами в Terminal Services Manager. Помещение всех серверов в единственную ферму делает закладки на ресурсах сервера проще.

Уменьшение нагрузки при управлении всеми серверами MetaFrame - мы ранее в этой главе обсуждали нагрузку Citrix Management Console. Поскольку консоль может отображать только одну ферму, управление несколькими фермами одновременно требуют загрузки нескольких экземпляров Citrix Management Console. Хотя требования к памяти со стороны консоли зависят от числа управляемых объектов, которые она должна отобразить, поддержка только самой консоли требует слишком много памяти, даже если ферма включает единственный сервер.

Если вы организовываете ваши серверы MetaFrame в несколько ферм, то получите следующие преимущества:

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



Кроме конечного результата выполнения прикладных


Кроме конечного результата выполнения прикладных программ на одном компьютере и отображения их вывода на другом, X.11 не слишком отличается от ICA. В X.11 устройством отображения, которое берет на себя работу отрисовки окон и графики, представляющих пользовательский сеанс, является сервер. Сервер также должен быть настроен для работы с клиентом, выполняющим приложения - X.11 не всегда является коробочным решением. Кроме того, поскольку сервер нуждается во всей информации для формирования выходного изображения, между клиентом и сервером должен быть довольно хороший канал для передачи всей графической информации. До MetaFrame 1.8 FR1 и его поддержки high-color, одним из больших преимуществ X.11 перед ICA состояло в цветном разрешении.

Во-вторых, удаленный дисплей UNIX и ICA предназначены для разных вещей, и эти отличия дают ICA некоторые преимущества перед X.11 в низкоскоростных и мобильных соединениях. Компонент ICA, который идет с клиентом, почти не требует никакой настройки независимо от приложения, которое вы запускаете. Напротив, X.11 часто требуют существенной настройки для оптимальной работы. Протокол ICA прекрасно работает на низкоскоростных соединениях, а X.11 требует для работы слишком много полосы пропускания, чтобы использовать его через модем или WAN. ICA поддерживает теневые сеансы, т.е. один человек может видеть экран чужого терминального сеанса и даже взаимодействовать с ним. Наконец, ICA полностью изолирует компонент отображения вывода приложения от логики работы приложения, разрешая вам отключиться от работающего терминального сеанса, оставив данные в памяти, а позже повторно подключиться к этому сеансу даже с другого компьютера, и вернуться в то место, откуда ушли. Одна эта особенность сделала MetaFrame весьма популярным среди разработчиков, потому что это позволило им уходя с работы отключить сеанс, оставив файлы открытыми, а потом повторно подключиться к сеансу с домашнего компьютера, вернувшись точно в то место, где они оставили свою работу.


Публикация контента


Если у вас установлен FR1 для MetaFrame XP, вы можете публиковать для пользователей Neighborhood контент - т.е. не только приложения, но и сами файлы или ссылки на узлы web. Публикация контента на самом деле не слишком отличается от обычного сетевого доступа. Вы можете публиковать контент, сохраненный в любом сетевом файле, FTP, веб-сервере - не обязательно на сервере MetaFrame. Пользователи, обращающиеся к контенту, будут использовать для его просмотра свои локально инсталлированные приложения (и ресурсы компьютера), и должны иметь права доступа к файлам сервера.

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



Публикация Приложений


Поскольку чаще всего вы будете публиковать индивидуальные приложения, а процессы публикации приложений и рабочих столов очень похожи. Чтобы опубликовать новое приложение, войдите в папку Applications в Citrix Management Console. Пока никакие приложения не опубликованы. Щелкните правой кнопкой мыши на папке Applications и выберите из меню Publish Application.

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

Далее укажите, что именно вы хотите опубликовать - приложение, рабочий стол или контент (для FR1). Укажите путь к приложению или щелкните кнопку Browse. Поскольку Citrix Management Console подключается ко всем серверам, не только к том, на котором запущена, при браузинге вам следует сначала выбрать сервер, а потом на нем найти путь к приложению. Публикующий сервер не будет отображаться в поле ввода маршрута. Заполнив требуемую информацию, щелкните Next.

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

c:\winntas\system32\notepad.exe %*

Если командная строка включает в себя пробелы, заключите ее в двойные кавычки (")

На следующем экране настройте Program Neighborhood для опубликованных приложений. Обычно опубликованные приложения видны в PN в папке для фермы клиента; если вы хотите поместить их в другую папку, введите имя для этой папки в поле Program Neighborhood Folder. Если вы хотите разместить ссылку на приложение в меню Start клиента, выберите опцию Add to the client's Start Menu. Наконец, вы можете изменить значок для приложения.

Тем, у кого установлен FR1, появится еще одно окно - Specify Application Limits. Как вы можете вспомнить из главы 1, FR1 позволяет управлять воздействием приложения на ферму посредством ограничения количества экземпляров приложений в ферме. Огранчиение общего числа экземпляров облегчает слежение за использованием лицензий. Вы также можете ограничить число экземпляров приложений, запущенных одним пользователем.

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


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

Начиная с этого места вы готовы выбрать серверы, на которых хотите опубликовать приложение. После щелчка Next появится окно Specify Servers.



Для добавления серверов щелкните кнопку Add. Кнопка Filter Servers By позволяет отфильтровать видимые серверы. Обычно отображаются все серверы, вне зависимости от возможности предотавлять доступ к этому приложению. Вы можете отредактировать фильтр так, чтобы отображались только серверы, на которых работает Installation Management (только на серверах MetaFrame XPe) или только те, которые выполняют специфическую ОС - WTS или Win2K.

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

Наконец, в окне Specify Users вам надо выбрать пользователей, которые будут иметь доступ к приложению. Процедура знакома для тех, кто работал с Win2K: выберите домены, группы и индивидуальных пользователей.



Некоторые опции доступны только для FR1 - например, поддержка NDS. Пользователям FR1 также доступно больше опций для анонимных соединений - пользователей можно заставить аутентифицироваться на сервере, но не требовать наличия доменной учетной записи и пароля. Обычно при выборе анонимных соединений для приложений вы не можете одновременно предоставить доступ для именованных учетных записей.

При щелчке на кнопку Add List of Names вам предоставляется возможность добавить доменные учетные записи в нотации name@domainname.com или domainname\username. Разделяйте имена точкой с запятой и не забудьте нажать кнопку Check Names для проверки. Если все в порядке, вы увидите диалоговое окно, говорящее об успешной проверке. Если мастер не смог проверить имена, то вы получите сообщение с описанием проблемы. После щелчка на OK имена появятся в списке Configured Accounts.



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

После щелчка Finish мастер завершит работу, а приложение - вместе с назначенными ему значком и именем - появится в разделе Applications в Citrix Management Console. Если пользователи, использующие Program Neighborhood, обновят свое соединение с фермой (при условии, что им разрешено использовать приложение), увидят значок опубликованного приложения и могут дважды щелкнуть его, чтобы зарегистрироваться и использовать это приложение.

Если вам нужно отредактировать любой из параметров настройки опубликованного приложения, щелкните правой кнопкой мыши его значок в Citrix Management Console и выберите из контекстного меню Properties. Вы увидите табулированный лист свойств, содержащий все параметры настройки, сделанные вами при начальной установке приложения.


Публикация Приложений, Рабочих столов, и Контента


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

Есть некоторая проблема с опубликованным Microsoft Word - если свернуть окно, то Word исчезает с панели задач. Для решения этого вы можете применить заплату

или отредактировать реестр: в ключе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix wfshell\TW1 SeamlessFlags установите значение 0x40 (тип DWORD)



Публикация Рабочих столов


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

Назовите рабочий стол и дайте ему описание.

Укажите, что вы хотите публиковать рабочий стол.

Выберите Program Neighborhood, Application Appearance, ICA Client, Application Limits (если установили FR1), серверы, разрешенных пользователей для публикуемого рабочего стола, и нажимаете Finish.



Работа фермы в смешанном режиме


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



Работа с зонами


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

Во-первых, Citrix рекомендует, чтобы вы включали в одну зону не более 100 серверов. В зависимости от аппаратных средств сервера и активности фермы, коллектор данных может поддерживать более 100 серверов, но коллектор данных для каждой зоны может поддерживать около 70 запросов в секунду. При определении количества коллекторов данных, требуемых для вашей фермы, учтите число людей, использующих ферму в любой момент времени, и как долго они остаются работать (большое количество коротких сеансов создадут большую нагрузку на коллектор, чем небольшое количество продолжительных сеансов), число опубликованных приложений, использующих распределение нагрузки. Как вы можете видеть на вкладке "Использование Выделенного Коллектора Данных", один из способов заключается в том, чтобы позволить коллектору данных сосредоточиться исключительно на своих задачах и оставить обслуживание приложений другим серверам MetaFrame.



Разбор сценария инсталляции MetaFrame


Файл unattend.txt аналогичен файлу .INI. Разделы в сценарии идентифицируются текстом в скобках; данные, поставляемые к программе установки, указываются в формате key=value. Комментариям предшествует звездочка (*) или точка с запятой (;).

Первым разделом в сценарии стоит лицензионное соглашение. В оригинале оно выглядит так:

[MetaFrame License Agreement] AcceptLicense=No

Вы должны изменить значение этого ключа на



Редактирование настроек клиентов ICA


После установки, клиент ICA будет работать. Однако, вам может потребоваться настройка на стороне сервера и на стороне клиента.

Настройка ICA на стороне клиента

На стороне клиента можно сделать не слишком много. Если зайдете в Program Neighborhood и выберите Tools, ICA Settings, то откроется такое диалоговое окно:

Вам не нужно редактировать здесь большую часть настроек. Вкладка Bitmap Cache управляет размером и расположением кеша изображений. Вкладка Hotkeys позволяет определить горячие клавиши доступа к меню из сеанса ICA. Event Logging управляет журналом, находщимся на клиенте в каталоге C:\Documents and Settings\%UserName%\Application Data\ICAClient\wfcwin32.log. Если вы и проводите время над настройками ICA, то большую его часть вы проводите на закладке General, где находятся большинство опций, которые вы указали во время инсталляции клиента. Например, свойства учетной записи пользователя Win2K содержит опцию, определяющую, должен ли пользователь подключаться к разъединенному сеансу с этого же компьютера, откуда запущен сеанс. Вы можете установить эту опцию для отдельных пользователей на вкладке Sessions свойств пользователя или глобально для протокола ICA c помощью Terminal Services Configuration. Однако, эта опция будет работать только в том случае, если будет введен серийный номер клиента. Вы также можете использовать эту закладку для настройки сквозной аутентификации.

Хотя кажется, что вы можете указать здесь параметры Allow Reconnection (автовосстановление соединения) для клиента RDP, эти настройки никогда не становятся доступными, поскольку RDP это не поддерживает.



Регистрация успехов или неудач


Иногда вместо того, чтобы желать знать, кто законно использует сервер MetaFrame, вы хотите узнать, кто пытается это сделать. Auditlog обычно показывает успехи и неудачи, но если вы хотите отобразить только неудавшиеся попытки входа, то можете использовать переключатель /fail: auditlog /fail

Эта команда создаст отчет обо всех неудавшихся подключений и их причине: DOMAIN\USERNAME EVENT TIME REDROOM\Bill Logon Fail 4/8/2002 12:41 Reason: Unknown user name or bad password

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



Репликация драйверов


В Win2K Terminal Services и предыдущих версиях MetaFrame (до MetaFrame XP), вы осуществляли некоторое управление драйверами принтеров, вручную редактируя системный реестр, чтобы указать на определенный драйвер на сервере. Однако, при этом драйверы фактически не копировались, а лишь устанавливалась ссылка на их источник. Если вы клонируете рабочий сервер MetaFrame, все клоны будут иметь все драйверы, установленные на оригинальном сервере, но любые более поздние изменения не распространяются. В MetaFrame XP процесс установки и обновления драйверов намного проще.

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

Закончив установку хороших драйверов на одном сервере, вы готовы скопировать их на другие серверы MetaFrame в ферме. В разделе Printer Management в Citrix Management Console есть подзаголовок Drivers. Щелкните правой кнопкой мыши значок Drivers, выберите из контекстного меню Auto-replication.

Сначала вам необходимо выбрать из списка платформу. Операционные системы Windows 2000 и Windows NT 4.0 используют разные драйверы, и репликация неправильных драйверов может причинить вред серверу MetaFrame. В списке будут перечислены только ОС, найденные в ферме. Поэтому если вы используете только Win2K, вы можете не беспокоиться.

Выбрав ОС, щелкните Add для добавления нового драйвера для репликации.

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

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


Затем выберите драйвер. На картинке у нас только одна опция, поскольку универсальный драйвер PCL4 автоматически устанавливается на любой сервер MetaFrame с FR1, а серверы, не лицензировавшие FR1, не могут его использовать. Выберите этот драйвер и он появится в правой панели. Если вы хотите, чтобы этот драйвер перезаписал любые существующие версии драйверов, которые могут быть установлены на других серверах MetaFrame, установите опцию Overwrite existing drivers в нижнем левом углу диалогового окна. Выбрав все драйверы, щелните OK для возврата в окно Auto-replication. Щелкните OK, когда закончите добавлять драйверы.

Теперь надо решить, когда делать репликацию.

Мы уже говорили о хранилище данных в Главе 3. Как вы помните, хранилище данных включает записи для всех объектов в ферме серверов. Среди этих объектов есть индивидуальные серверы, драйверы принтеров и драйверы принтеров на индивидуальных серверах. Другими словами, добавляя один драйвер принтера на некоторый новый сервер в ферме, вы добавляете в хранилище три записи. Установка трех драйверов принтеров на пяти существующих серверах MetaFrame добавляет восемнадцать записей - плюс записи для самих серверов. Чем больше хранилище данных, тем дольше времени требуется службе IMA для запуска и тем больше требуется времени для загрузки серверов MetaFrame. Большое хранилище данных также увеличивает время и полосу пропускания, требуемые для его репликации.

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

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

В третьих, если вы прекращаете использовать принтер, деинсталлируйте его драйвер и удалите его запись в системном реестре (HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\WindowsNTx86\Drivers\Version-3\; найдите там неиспользуемый драйвер). После этого перезагрузите сервер. Этот процесс удалит драйвер более тщательно, чем простая его деинсталляция.

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

Наконец, если у вас установлен FR1, максимально используйте Универсальный Драйвер. Как я уже говорил, Универсальный Драйвер во всех случаях скорее всего не заменит специфичные драйверы Windows . Однако, это хороший основной драйвер для черно-белой печати низкого разрешения, и его наличие может облегчить хранилище данных фермы, особенно если он используется для поддержки клиентских принтеров, автоматически отображаемых в сеансах ICA.

Вы также должны принять во внимание время, требуемое для репликации драйверов принтеров - это делается независимо от стандартного трафика IMA. В небольших фермах эта репликация почти не занимает времени. Согласно Citrix, в ферме с 50 серверов с небольшой пользовательской и сетевой загрузкой, подсистема репликации драйверов принтеров может обработать около 50 репликаций в минуту. Даже в большой ферме из 500 серверов, подсистема репликации может обработать около 20 записей в минуту, пока серверы MetaFrame и сеть не слишком загружены. Если сервер MetaFrame, поставляющий драйверы, становится слишком занятым, подсистема репликации драйверов принтеров замедляет скорость репликации. Поэтому для репликации выбирайте время, когда сеть не слишком загружена. Для запуска репликации перейдите в раздел Printer Management, щелкните на значок шестеренки с тремя стрелками.



Хотите посмотреть на процесс репликации? Если вы выберите драйвер в разделе Drivers в Printer Management, в правой панели появится список серверов, на которых установлен этот драйвер. Есть также утилита qprinter, которая позволяет наблюдать за репликацией с комадной строки.

Использование совместимости драйверов

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

Щелкните правой кнопкой на значке Drivers, выберите Compatibility. Появится окно:



Выберите платформу сервера. Если вы используете Windows 2000, то это уже сделано за вас. Затем решите на счет структуры черного списка: разрешить только драйверы из списка или разрешить любые драйверы, кроме находящихся в списке. Щелкните кнопку Add и введите имя драйвера, добавляемого в список.

Отображение несовпадающих имен драйверов

Чтобы работало отображение принтера в сеансах ICA, необходимо, чтобы драйверы на клиенте и на сервере имели одинаковые имена. Это не проблема, если клиент и сервер выполняют Windows 2000, но не будет корректно работать, например, с Windows 98. Те, кто использует Terminal Services без MetaFrame, должны редактировать файл информации о принтере вручную, говоря серверу: "Эй, если я говорю это имя драйвера, то подразумеваю вот это имя". В MetaFrame XP вам нужно сделать то же самое, но настройка производится в Citrix Management Console.

Для отображения имен драйверов, войдите в раздел Drivers раздела Printer Management. На вкладке Drivers щелкните правой кнопкой мыши на установленном драйвере и выберите из меню Mapping. Щелкните Add и введите имена драйверов на клиенте и на сервере.

Назначение принтеров пользователям

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

Для ассоциирования принтера с пользователем, откройте вкладку Printers. Щелкните правой кнопкой на установленном принтере и выберите Auto-Creation. (Кнопка Add List of Names видна только в том случае, если у вас установлен FR1; это же относится к NDS)





Это диалоговое окно работает подобно большинству остальных. Чтобы добавить принтер для использования группы в домене или на сервере, дважды щелкните значок домена или сервера, чтобы отобразить все группы. Чтобы показывать отдельных пользователей, выберите флажок Show Users. Вы должны добавить пользователей или группы в текстовое поле Configured Accounts; для этого нажмите Add..., которая становится доступной при выборе группы или индивидуальной учетной записи из списка. Добавленные пользователи или группы появятся в поле Configured Accounts. Для пользователей FR1 видна кнопка Add List of Names. Она служит для того, чтобы добавлять пользователей, не требуя знания, в какой группе они находятся. Когда вы нажимаете эту кнопку, то открываете окно. Вводите имена в допустимом формате (domainname\username для доментов NT 4.0; username@domainname.com для доментов Win2K; ndstree\account для NDS). Чтобы убедиться, что вы правильно ввели имя, нажмите кнопку Check Names. Citrix Management Console удостоверится, что вы правильно отформатировали имя учетной записи, а затем сверится с базой данных домена или дерева каталогов и сообщит вам, прошли ли проверку имена.

Закончив, нажмите OK для возврата в окно Auto-Creation Settings выбранного принтера. Имена добавленных пользователей будут отображаться в диалоге Add List of Names. Когда вы нажмете OK, принтер будет назначен выбранным вами пользователям и группам.

Вы можете добавить пользователей из раскрывающегося списка и из Add List of Names - они не отменяют друг друга.

Копирование параметров настройки автосоздания

Если вы настроили параметры создания для одного принтера и хотите сделать то же для другого, то не обязательно начинать с нуля. Вы можете скопировать параметры настройки автосоздания с одного принтера на другой. На вкладке Printers щелкните правой кнопкой мыши принтер, который вы сконфигурировали, и выберите из меню Copy Auto-Creation Settings. В открывшемся диалоговом окне выберите принтеры, на которые вы хотите скопировать настройки, и затем нажмите OK.

Автосоздание принтеров в DOS и WinCE



По умолчанию, клиентские принтеры Win32 автоматически отображаются в любых сеансах ICA, инициированных с этого компьютера, а доступность принтеров и драйверов клиентам зависит от севера. Сеансы, инициированные от клиентов DOS и WinCE, другие - ICA не будет автоматически использовать никакие принтеры, локальные по отношению к компьютеру клиента. Однако, вы можете создать отображения вручную.

Для автоматического создания клиентских принтеров, щелкните правой кнопкой мыши Printers в Citrix Management Console, и выберите из контекстного меню Client Printers для открытия окна, подобного этому:



Как видно, здесь пока нет ручного отображения принтера. Для его создания, щелкните кнопку Add для открытия диалога:



В этом диалоге вы даете имя устройству клиента и его принтеру и, что более важно, выбираете необходимый драйвер и любое отображение имен драйверов. Кроме того, DOS и WinCE требуют явного указания портов. Закончив, щелкните OK для возврата в окно Client Printers. Когда в следующий раз пользователь, использующий клиента с именем, которое вы здесь указали, запустит сеанс ICA, его клиентский принтер будет отображен в его сеансе.

Вы можете менять способ назначения принтеров, щелкнув на значке Printer Management и выбрав Properties.

Большинство этих параметров настройки является довольно очевидными. Вы видите настройки по умолчанию: автоматическое создание клиентских принтеров при входе в систему (и, следовательно, установка соответствующих драйверов на сервере MetaFrame, если их там еще нет), взять настройки доступности принтера из свойств соединения, устанавливать Универсальный Драйвер принтера, доступный с FR1, если другой драйвер недоступен. Одна из моих любимых настроек здесь остоит в том, чтобы заставить клиентские принтеры использовать Универсальный Драйвер принтера на сервере. Это устраняет любые проблемы из-за плохих драйверов, и кроме того предотвращает засорение хранилища данных.

Еще одна очевидная установка - флажок наверху окна: Auto-create client printers when user logs on (Автосоздание клиентских принтеров при входе пользователя). Уберите его и вы не будете беспокоиться об остальных опциях. (Пользователи не будут способны печатать на свои локальные принтеры из своих сеансов ICA, но это не всегда необходимо.)



Уменьшение полосы пропускания для клиентских заданий по выводу на печать

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

Чтобы ограничить количество полосы пропускания, которую могут использовать задания по выводу на печать, перейдите к вкладке Bandwidth. По умолчанию все серверы MetaFrame разрешают заданиям по выводу на печать на клиентские принтеры использовать неограниченную полосу пропускания.

Для сужения полосы пропускания для некоторого принтера (например, зарезервированного для пользователей, подключающихся через модемное соединение 56К), щелкните правой кнопкой на значке сервера и выберите Edit . Откроется диалоговое окно, в котором вы можете установить ограничение:

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



После щелчка OK вы вернетесь на закладку Bandwidth, где в колонке Bandwidth Limit будет стоять введенное вами значение.

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

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

Резюме

Несмотря на повсеместное использование электронной почты и Web, безбумажных офисов пока не бывает. Нравится нам или нет, но мы должны поддерживать печать. В этой главе вы узнали о том, как MetaFrame XP может облегчить печать, о распространение драйверов принтеров, об ограничении полосы пропускания и об универсальном драйвере принтера, доступном в FR1.

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

  

Репликация хранилища данных


MetaFrame XP поддерживает распределенные базы данных для хранилищ данных, поддерживаемые в SQL Server и Oracle, но не в Access. Citrix рекомендует, чтобы вы поддерживали одновременно только одно хранилище данных, но в некоторых случаях репликация хранилища может улучшить работу фермы, когда оно становится узким местом из-за слишком многих запросов чтения. В среде локальной сети использование репликации базы данных может уменьшить время запуска службы IMA и улучшить отклик серверов в больших фермах. В глобальной сети репликация хранилища данных может препятствовать возникновению тайм-аутов службы IMA при операциях записи.

MetaFrame XP должен быть уверен в непротиворечивости данных в нескольких базах данных, поэтому он использует механизм двухфазной фиксации - т.е. сначала пришет в основную базу данных, потом дает базе данных реплицировать эти данные, и после репликации получает подтверждение. Эту функциональность вы можете настроить в SQL Server и Oracle.

Чтобы использовать SQL Server для поддержки распределенной базы данных, Citrix рекомендует использовать модель Immediate Updating Subscriber, описанную в документации SQL Server. Для установки распределенной среды для существующей фермы MetaFrame XP, настройте Publisher (SQL Server, который держит хранилищеv данных), Distributor и Subscribers (удаленные сайты) на использованиеSQL Server Enterprise Manage, а затем выполните команду

dsmaint publishsqlds

на существующем сервере фермы. Этот шаг создает статьи, публикуемые на текущем SQL Server Publisher. И наконец, сконфигурируйте удаленные сайты, для подписки на опубликованные статьи, которые вы создали на предыдущем этапе.

Чтобы использовать Oracle для распределенных баз данных, все участвующие базы данных должны выполнять Oracle в режиме MTS/Shared (а не в режиме Dedicated), а все серверы MetaFrame XP, соединяющиеся с хранилищем данных в прямом режиме, должны иметь SQL*Net версией 2 или Net8. Установите базу данных фермы сначала на главном сайте, затем сконфигурируйте репликацию на snapshot сайтах, настроив их на репликацию всех объектов, содержащихся в пользовательской схеме хранилища данных. Если производительность сайта реплицированной базы данных значительно меньше, то проверьте, что успешно скопировались все индексы для пользовательской схемы MetaFrame XP, а не только объекты.

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

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



Режим установки и исполнения


Терминальный сервер имеет два режима: Режим Установки (Install Mode) для установки приложений, и Режим исполнения (Execute Mode) для выполнения приложений. Каждый раз, когда вы устанавливаете приложение на терминальном сервере Win2K, вы должны гарантировать, что сервер находится в Режиме Установки, чтобы все параметры настройки смогли быть распределены пользователям, которые будут выполнять это приложение после его установки.

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

Когда сеанс находится в Режиме Установки, все записи системного реестра, создаваемые в этом сеансе, помещаются в теневой раздел реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install. Любые изменения, которые приложение вносит в HKEY_CURRENT_USER или HKEY_LOCAL_MACHINE, копируются в подключ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Terminal Server\InstallVMachine. Когда инсталляция завершается, вы переключаете сервер в Режим Исполнения, т.е. нормальное состояние терминального сервера. В этом режиме, когда пользователь запускает приложение, если оно пытается читать раздел реестра HKEY_CURRENT_USER, которого не существует, Terminal Services ищет отсутствующий ключ в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install. Если ключ там найден, Terminal Services скопирует его и подключи в соответствущий раздел в HKEY_CURRENT_USER, а также скопирует любые файлы INI или DLL в домашний каталог пользователя. Для пользователей без домашних каталогов файлы будут скопированы в их персональные папки в %rootdrive%\Username.Domain. Другими словами, если сервер находится в режиме установки, сервер делает основные машинные настройки для установленного приложения. При переводе его в режим исполнения, он сервер читает эти машинные настройки и применяет их на уровне пользователей. Однако, эти настройки из теневого раздела не копируются повторно каждый раз, когда кто-то запускает приложение. Они копируются только в том случае, если не существуют в HKEY_CURRENT_USER.

И как же нам перевести сервер в режим установки? Есть два способа. Запуск Add/Remove Programs для запуска приложений на сервере MetaFrame автоматически переводит сервер в режим установки. Запуск программы установки типа SETUP.EXE предупреждает сервер об установке приложения и вызывает его протест - сервер будет требовать, чтобы вы воспользовались Add/Remove Programs.

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

Если вы используете Add/Remove Programs, но инсталляция не содержит программы SETUP.EXE, вам необходимо раскрыть All Programs, чтобы показать все исполняемые файлы инсталляции.

Загвоздка состоит в том, что инсталляция некоторых программ требует перезагрузки . Иногда приложения даже не спрашивают об этом. И тем не менее вам все равно нужно перевести сервер в Режим Установки, чтобы сделать окончательные настройки приложения. Поэтому Win2K позволяет вам перевести терминальный сервер в Режим Установки, используя утилиту командной строки change user, которая имеет три варианта:


/execute - переводит сервер в режим исполнения

/install - переводит сервер в режим инсталляции

/query - запрос текущего режима:

Другими словами, вам не обязательно использовать Add/Remove Programs. Просто перед запуском программы установки выполните change user /install

а после завершения установки выполните change user /execute

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

Выполнение программы установки в то время, как сервер находится в Режиме Установки, будет работать для многих приложений, но не для всех. Например, вы вероятно знаете, чтобы установить Microsoft Office 2000, вы не можете использовать однопользовательскую программу установки, вместо этого вы должны использовать файл MST, входящий в состав программного обеспечения.

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


я сделал обзор трех разновидностей


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



   

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



  

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


  

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



  

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


  

В этой главе мы обсудили защиту серверов MetaFrame и аудит доступа к ним. Поскольку серверы MetaFrame должны предоставить пользователям локальный доступ к серверу, ибо этот сервер является их рабочей станцией, эта тема требует тщательного рассмотрения. В я буду говорить об особенностях MetaFrame XPe - тех, которые идут отдельно от основной части MetaFrame XP, а именно Installation Manager и Resource Manager. Даже если у вас нет MetaFrame XPe, вы можете найти эту главу полезной для того, чтобы понять, как расширенная версия MetaFrame XP может упростить управление серверами MetaFrame.



  

В этой главе мы наконец- то обратили внимание на пользователей MetaFrame XPe, рассмотрев особенности уровня предприятия, включая Installation Manager, Network Manager и Resource Manager. Эта глава завершает книгу. Как вы видели, MetaFrame предлагает много инструментов управления со стороны сервера и возможностей со стороны клиента; гораздо больше, чем Windows Terminal Services, даже в его самом последнем воплощении. Я надеюсь, что вам понравилась книга и вы нашли ее полезной.



   

Save


. Инструмент ICA Client Update Configuration создаст новую базу данных в новом месте.

После того, как предоставили общий доступ к папке с базой данных клиентов, перейдите к серверу MetaFrame, на котором вы хотите использовать это базу. Из меню Database выберите



Сервер-член или Контроллер Домена?


Хотя я уже не раз говорил, но все-таки повторюсь: не устанавливайте Terminal Services в режиме сервера приложений на контроллере домена. Во-первых, заданные по умолчанию разрешения для входа в систему не будут позволять членам группы Domain Users использовать терминальный сервер, если вы не дадите им права локального входа. Во-вторых, что более важно, сервер приложений потребляет много ресурсов процессора. Поэтому устанавливать терминалы на контроллере домена можно только в совсем крохотных сетях. Не стоит перегружать сервер функциями аутентификации, т.к. он и так занят поддержкой пользовательских приложений и данных. Единственный случай, когда стоит рассмотреть возможность создания сервера прилдожений на контроллере домена - это если у вас есть изолированный домен, поддерживающий очень небольшое число удаленных пользователей, но даже тогда я предложил бы использовать сервер-член не в домене.

Вернемся немного к лицензированию. Как я уже говорил в Главе 2, вам потребуются лицензии на подключения к MetaFrame XP и TSCAL. Если ваши серверы MetaFrame входят в домен Win2K, серверы лицензирования Terminal Services, которые могут быть находиться отдельно от серверов MetaFrame, должны находиться на контроллерах домена. Если они являются частю домена NT 4.0 или рабочей группы, то сервер лицензирования будет находиться на сервере-члене..



Сетевые платы


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



Shadow Taskbar


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


Для наблюдения сеанса пользователя выберите его имя из левого списка и щелкните Add для помещения его в колонку Shadowed

Users. Вы можете выбрать несколько сеансов ICA, но этот выбор будет работать только для текущих сеансов. Если ни один пользователь не зарегистрировался на серере MetaFrame через ICA (RDP не считается), список пользователей будет пустым. И хотя в диалоге видны серверы и опубликованные приложения, теневые сеансы применяются только к пользователям.

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

Citrix Connection Configuration

Citrix Connection Configuration содержит все настройки соединений ICA и RDP. Она очень похожа на утилиту Terminal Services Administration, просто организована по-другому. Щелкните на эту иконку, и появится диалоговое окно со списком протоколов. Для редактирования настроек дважды щелкните на значок соединения или щелкните правой кнопкой и выберите из контектного меню Properties.


Эта утилита также перечисляет настройки для RDP. Для каждого сетевого протокола, для которого вы установили поддержку ICA, будет виден значок ICA Например, если вы установили поддержку ICA только поверх TCP/IP, то увидите только “ica-tcp”. Если вы установили поддержку ICA поверх NetBEUI или IPX/SPX, то эти соединения ICA будут видны в разных строках. Если вы используете ICA поверх нескольких сетевых протоколов, убедитесь, что редактируете правильное соединение.

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

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




Большинство параметров настройки в этом диалоговом окне довольно очевидны после того, как вы узнаете, где их найти. Но давайте сделаем краткую экскурсию. Параметры настройки Входа в систему (Logon Settings) определяют, разрешено ли соединение - если вы отключаете ICA-TCP, то пользователи не могут зарегистрироваться в сеансе ICA, если они используют TCP/IP в качестве сетевого протокола. Параметры настройки времени ожидания (Timeout Settings) определяют, как долго активное, разъединенное, или неактивное соединение должно оставаться в этом состоянии перед тем, как сервер MetaFrame его закроет. Установка Security определяет используемый уровень шифрования. Текущий клиент ICA использует алгоритм шифрования RC5 от RSA Data Security, поддерживая 40, 56, 128 бит, а также 128-битную защиту только для входа в систему. Чем больше бит, тем больше безпасность и меньше производительность. Вот почему использование 128 бит для подключений через модем является не очень хорошей идеей.

Игнорируйте интерактивную справку для Security, которая скажет вам, что опция Required Encryption может иметь значения только "Да" и "Нет" для шифрование подключения. Это ошибка.

Не редактируйте параметры настройки AutoLogon, если вы не хотите, чтобы любой, кто использует выбранное соединение, использовал для входа одну и ту же пользовательскую учетную запись - эти параметры настройки обеспечивают имя, пароль и домен для автоматического входа в систему. Настройки Initial Program позволяют Вам определить приложение, которое будет запускаться сразу после входа. Это приложение не будет опубликованным приложением; оно будет выполняться с рабочего стола. Однако, оно будет единственным приложением, выполняющимся на этом рабочем столе, и если пользователь закроет приложение, сеанс завершится. User Profile Overrides позволяет запретить использование обоев, выбранных пользователем (это может сэкономить на полосе пропускания). Наконец, внизу этого диалогового окна, вы можете определить, что должно быть сделано при разрыве соединения: следует ли разъединить сеанс или завершить его; можно ли к разъединенному сеансу подключаться с любой машины или только с той, с которой этот сеанс был инициирован; разрешается ли затенение, и должен ли человек, сеанс которого контролируется, явно разрешить это затенение и надо ли его об этом извещать..


Системные аппаратные требования


Вероятно, вы знаете аппаратные требования к WTS и Win2K. Согласно Microsoft, для WTS вам необходим сервер с процессором Pentium, 32 МБ оперативной памяти, жесткий диск не менее 128 МБ. Для Win2K Server или или Advanced Server требуется процессор Pentium 133MHz, 256 МБ оперативной памяти и жесткий диск 2GB. В дополнение к этим требованиям для ОС, Citrix рекомендует, чтобы вы резервировали дисковое пространство для стандартной инсталляции MetaFrame XP (85 МБ без программного обеспечения Клиентов ICA, 285 МБ вместе с клиентами), 20 МБ дискового пространства для службы NFuse, если она вам нужна, и 64 МБ оперативной памяти для служб MetaFrame XP, включая IMA.

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



Сколько нужно памяти?


Как я уже говорил, память склонна быть узким местом на сервере MetaFrame. Мало того, что вы должны поддерживать приложения в памяти, вы также должны поддерживать данные, которые эти приложения используют. Объем необходимой вам памяти зависит от того, используют ли люди Notepad для редактирования текстовых файлов, или запускают САПР или сложные бухгалтерские программы.

Согласно Citrix, вы должны планировать 16 МБ плюс по 4 МБ для каждого пользователя (запускающего единственное приложение, не считая копирования/вставки между приложениями), или по 8 МБ для каждого профессионального пользователя (запускающего три или более приложений, большой обмен данных). Однако, эти оценки слишком низкие. Лучше всего запустить пилотную систему, чтобы увидеть, как сервер MetaFrame справляется с несколькими типичными пользователями. Память никогда не бывает лишней. Планируйте возможное добавление памяти в будущем. Другими словами, не заполняйте сразу все слоты маленькими модулями памяти; устанавливайте большие модули и оставьте часть слотов свободными.

При расчете количества RAM, необходимого на сервере MetaFrame, не забудьте принять во внимание Citrix Management Console, если вы планируете управлять ею локально. Citrix выбрал Java из-за ее платформонезависимости, а отнюдь не из-за эффективного использования памяти. Я расскажу о требованиях к программному обеспечению и оборудованию для Citrix Management Console немного позже, а пока скушайте пилюлю: Citrix рекомендует минимум 64 МБ RAM только для поддержки Citrix Management Console, не говоря уже о чем-то еще.

Использование Java для Citrix Management Console было предназначено для того, чтобы позволить администраторам MetaFrame for Windows и MetaFrame for UNIX использовать единую консоль. Действительность же оказалась весьма печальной, ибо консоль на базе Java является настоящим "пожирателем" памяти, и требует ее тем больше, чем больше объектов в вашей ферме. На формуе iForum 2001 я узнал, что Citrix работает над оснасткой для MMC, чтобы работа консоли потребляла меньше памяти. Выполнение Citrix Management Console на удаленном компьютере, который не является сервером MetaFrame, является неплохой идеей.



Сколько нужно серверов?


Консолидация серверов недавно гневно осуждалась в некоторых кругах, но это не относится к серверам MetaFrame. Для этого есть много серьезных оснований. Меньшее количество серверов требует меньшего места, меньшего охлаждения и меньше лицензий (эта также не относится к MetaFrame XP, который лицензируется только на соединения, а больше относится к лицензированию Win2K Server). Однако, меньшее количество серверов также приводит к удорожанию добавления новых возможностей и приводят к большим негативным последствиям в случае выхода сервера из строя. Допустим, у вас есть два 4-процессорных сервера MetaFrame. Когда один из них ломается, то у вас остается лишь половина общей вычислительной мощности. Если же у вас четыре 2-процессорных сервера, то вы имеете то же самое число процессоров, обслуживающих пользователей, но потеря одного сервера уменьшает вычислительные возможности всего на четверть, а не на половину. Кроме того, при этом облегчается модернизация серверов.

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



Скорость Процессора


Сначала подумайте о процессоре. Сегодня доступны процессоры 2ГГц, но эта цифра говорит только об одном аспекте - как быстро он может выполнять индивидуальные команды. При всех прочих равных условиях, больше Гц означает более быстрый чип, но не дайте себя ослепить скоростью, не учитывая размер кэша процессора. Если вы выбираете между действительно быстрым процессором с небольшим кэшем и менее быстрым процессором с большим объемом кэша, всегда склоняйтесь к большему объему кэша. Давайте вкратце рассмотрим понятия кэша, чтобы понять почему.

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

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

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

Ключевым моментом здесь является то, что более быстрый чип не обязательно означает больший кэш. Например, процессоры Pentium 4 могут внутренне работать со скоростью 2ГГц, но имеют меньший кэш, чем Pentium III Xeon. Поэтому Pentium 4 может работать быстрее чем Xeon, но требует больше времени для сбора информации и поэтому замедляется из-за времени, требуемого для получения данных из памяти. Разница в скорости между 700МГц и 1.4ГГц на самом деле не так велика, чтобы уравновесить недостаточный размер кэша.

А как насчет числа процессоров? В многопользовательской среде, сервер будет пытаться делать несколько операций одновременно. Несколько процессоров означают, что конвейер каждого из процессоров будет короче, поэтому многопроцессорные системы являются в большинстве случаев хорошим выбором. Однако, не скорость центрального процессора самое узкое место на серверах MetaFrame, а оперативная память (RAM). 32-разрядные ОС типа Win2K могут адресовать до 4Гб RAM, поэтому в 4-процессорной системе легко может возникнуть нехватка оперативной памяти.

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

Обычно все приложения имеют одинаковый доступ к центральному процессору, в зависимости от приоритета их процесса. Начиная с FR1 для MetaFrame XP, вы можете назначить приложениям приоритет, определяя их доступ к процессору и таким образом предотвращая поедания циклов CPU интенсивно использующими его приложениями. Подробнее об этом я расскажу в .



Соглашения об именах


Прежде всего, и наиболее очевидно, что серверы MetaFrame XP должны быть сконфигурированы для работы в смешанном режиме. Иначе, даже если имена ферм MetaFrame XP и MetaFrame 1.8 совпадают, эти две фермы будут независимы друг от друга. Серверы MetaFrame XP, работающие в "родном" режиме, не используют службу ICA Browser, поэтому они не могут совместно использовать информацию с серверами MetaFrame 1.8. Если серверы MetaFrame XP работают в смешанном режиме, они должны быть в ферме, которая имеет то же имя, что и ферма серверов MetaFrame 1.8.

Если серверы MetaFrame XP работают в смешанном режиме, используйте команду qserver на серверах MetaFrame 1.8 и MetaFrame XP для отображения информации о браузерах ICA.



Сохранение отчета в файл


Если вы хотите сохранить отчет утилиты auditlog для последующего прочтения, вы можете сохранить его в файл. Auditlog поддерживает несколько способов. Для простой записи отчета указите опцию /write:: auditlog /write:\path and filename

где path - имя UNC или отображенного диска для местоположения файла. (Не забудьте указать расширение .txt, это текстовый файл). Будьте внимательными при сохранении файла в правильном месте. Если вы не укажите маршрут, auditlog не предупредит вас, что не смог сохранить файл. Сохраненный файл будет выглядеть приблизительно так: User, Logon Type, Logon Date, Logon Time, Logoff Type, Logoff Date, Logoff Time, Connection Time Administrator: Logon, 3/29/2002 17:47 , Logoff, 3/29/2002 17:48 ,00:01:08 Administrator: Logon, 4/8/2002 12:38 , Logoff, 4/8/2002 12:40 ,00:01:16 Administrator: Logon, 4/8/2002 12:43 , Logoff, 4/8/2002 12:44 ,00:01:17 Scott: Logon, 4/8/2002 12:41 , Logoff, 4/8/2002 12:44 , 00:03:19 ChristaA: Logon, 3/27/2002 20:54 , Logoff, 3/27/2002 20:54 ,00:00:02 ChristaA: Logon, 3/29/2002 17:56 , Logoff, 3/29/2002 17:56 ,00:00:00 ChristaA: Logon, 4/8/2002 12:37 , CurTm, 4/8/2002 13:26 ,00:49:26

Если вы хотите вручную редактировать файл, то можете сделать отчет в файл с разделительными запятыми, который вы можете затем импортировать в Excel. Чего вы не можете сделать - это создать отчет, который использует фильтры типа /time или username, поэтому отчет будет содержать все пользовательские подключения.

Если вы хотите отфильтровать сохраненные журналы событий, вы можете сделать это с опцией /eventlog, но вы должны будете сохранить журнал с опцией /clear. (Auditlog не может открыть сохраненный журнал, если вы не сохранили его с опцией /clear - возможно потому, что журнал Security log, от которого зависит сохраненный файл, все еще открыт во время использования опции /write). Чтобы очистить текущий файл auditlog и сохранить его в файл, введите команду auditlog /clear:path and filename

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

Хотя вы не обязаны сохранять журнал в файл при использовании /clear, я настоятельно рекомендую это делать. Поскольку журнал сохраняется в текстовом виде, он не будет занимать много места, но при очистке журнал исчезает и нет никакого способа его вернуть; журнал Security log также очищается. После того, как вы очищаете журнал, вы не сможете сделать никакого исторического анализа событий, не используя /eventlog для загрузки сохраненного файла.

Для загрузки сохраненного ранее файла журнала и применения к нему фильтров, используте опцию /eventlog с именем сохраненного файла журнала. Например: auditlog /eventlog:path and filename

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

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

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



Соображения об автоматизированной установке


Установка MetaFrame XP с CD-ROM имеет одно преимущество: допуская, что у вас есть только один CD-ROM, это ограничение препятствует вам одновременно добавлять множество серверов в вашу сеть. Для избежания проблем Citrix рекомендует, чтобы вы были осторожны при автоматизации развертывания множества серверов одновременно.

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

Есть еще вопрос выбора коллектора данных. Когда вы автоматизируете инсталляцию серверов в новую зону в ферме, сначала установите один сервер, затем в Citrix Management Console установите сервер как "Most Preferred". Тогда новые серверы, присоединяющиеся к зоне, не будут конкурировать друг с другом, чтобы стать коллектором данных зоны. Вы не должны делать этого, если ваша ферма имеет единственную зону, потому что первый сервер, который присоединится к первой зоне в ферме автоматически становится Most Preferred.



Соображения по поводу скорости памяти


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

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

Обычная DRAM является асинхронной, т.е. она не зависит от системных часов. Весьма упрощенно, доступ к данным в DRAM работает приблизительно так: менеджер памяти, который знает соответствие виртуальных адресов и физического местоположения памяти, сообщает контроллеру памяти, к какому физическому адресу памяти надо обратиться. Затем контроллер памяти определяет, в каких чипах содержится этот адрес и определяет местонахождение чипов. Менеджер памяти заставляет чипы выдать данные в шину данных, откуда процессор или другое устройство, которое затребовало эти данные, могут их взять. Время, требуемое для завершения этого процесса, называется времением доступа к памяти, подобно времени доступа к жесткому диску. В асинхронной DRAM время доступа считается в наносекундах (ns), или биллионных долях секунды; большинство DRAM имеют время доступа от 50 до 70ns. Чем меньше, тем лучше, но даже 60ns RAM работает на частоте 33MHz, тогда как системная плата сервера может работать на частоте 100MHz.

Причина столь медленного доступа заключается в том, что DRAM не только требуется некоторое время для поиска места в физической памяти, но также и то, что она сбрасыает содержимое памяти в шину памяти под одному блоку за цикл, затем возвращается к поиску следующего куска данных - вместо того, чтобы найти данные и получить их за одну операцию. Тип DRAM, называемый EDO, ускоряет процесс, давая обычной DRAM помощника для поиска следующей части посылаемых в шину данных, чтобы данные были уже готовы к тому моменту, когда DRAM может их послать. Но даже память EDO намного медленнее, чем системная плата. Медленная память, которая не может справляться с запросами процессора, приводит к холостым циклам, когда когда процессор ничего не делает, а лишь ждет данных. Это состояние называется состоянием ожидания (wait states). В идеале вы должны иметь как можно меньше состояний ожиданий, потому что это время простоя процессора. Системная плата работает на 100MHz, а процессор может быть в 10 раз быстрее, поэтому у вас все равно будут циклы ожидания, но основная идея сводится к их уменьшению.

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


Покупая SDRAM, удостоверьтесь, что она подходит к вашей системной плате. Некоторый SDRAM предназначены для 100MHz или даже выше, а некоторые предназначены для более медленных частот (66Mhz).

SDRAM для поиска первого фрагмента физической памяти требует столько же времени, сколько DRAM. Однако, как только найдена отправная точка, с которой нужно взять данные, SDRAM может сразу прочитать несколько блоков этой памяти, вместо того чтобы найти одну часть данных, передать ее в шину, потом найти следующую и т.д. Эта способность значительно уменьшает время доступа к памяти. SDRAM часто имеют время доступа 12, 10 или даже 7 наносекунд. Эти числа могут ввести в заблуждение, т.к. не всегда относятся к фактическому времени доступа, а к максимальной скорости, с которой модуль SDRAM может передвать данные на шину. Это время не включает время, требуемое для нахождения первого блока памяти. SDRAM с номинальной скоростью 7ns не в десять раз быстрее чем DRAM с номинальной скоростью 70ns, он быстрее только после того, как найдет отправную точку.

Существует несколько различных видов SDRAM. Сверьтесь с вашим поставщиком аппаратуры, чтобы узнать, какая лучше всего подходит для ваших серверов MetaFrame.

Но даже SDRAM больше не чемпион. Rambus DRAM (RDRAM) имеет рекордную скорость около 800МГц, а будущая технология, nDRAM, как предполагается, будет поддерживать скорость передачи данных 1.6ГГц. Вам не обязательно ставить на свои серверы самую быструю в мире RAM, просто неплохо знать о доступных вариантах.



Если вы применяете FR1 отдельно к инсталляции MetaFrame XP, то можете также написать сценарий его инсталляции, используя файл unattendedtemplate.txt. Это файл имеет тот же формат, как основной сценарий установки MetaFrame XP. Вы просто должны согласиться с лицензионным соглашением при установке FR1, можете указать модифицировать Клиентов ICA (в таком случае вы должны указать путь к обновленным файлам Клиента ICA; я рекомендую скопировать их в сетевую папку с инсталляцией, чтобы не бегать вокруг с CD-ROM), и указать необходимость перезагрузки сервера.: [License Agreement] Accept=No

[Client CD] UpdateClients=No ClientCDPath=

[Reboot] RebootAutomatically=Yes


Создание сценария инсталляции MetaFrame


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

Книга Windows 2000 Automated Deployments and Remote Management (Sybex, 2001) объясняет, как использовать автоматические инсталляционные сценарии и RIS для развертывания Win2K с Terminal Services в режиме Application Server. Автоматизация полного развертывания можетдействительно сэкономить некоторое время - вы даже можете инициировать автоматическую установку MetaFrame XP из сценария инсталляции Win2K.

Чтобы запустить подготовленную инсталляцию MetaFrame XP, вам нужно создать сценарий. К счастью, Citrix облегчила всем жизнь, предоставив пример инсталляционного сценария на CD-ROM MetaFrame XP.



Создание соединений ICA к рабочему столу сервера


После того, как вы раздали всем клиентов ICA, теперь вы готовы к созданию соединений с серверами MetaFrame. Независимо от того, какой клиент ОС вы используете - DOS, Linux, Win32, Macintosh или любой другой - вы должны указать некоторую информацию для создания прямого соединения с сервером MetaFrame. Я буду использовать клиента Win2K Pro, чтобы иллюстрировать процесс соединения.

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

Citrix Program Neighborhood содержит инструменты, необходимые для соединения с сервером MetaFrame. При первом его запуске вы видите диалоговое окно, предалагающее выбрать набор приложений по умолчанию. Если бы мы уже опубликовали приложения, то не беспоколились бы об этой подсказке, но прямо сейчас мы просто соединяемся с рабочим столом сервера MetaFrame. Если вы видите это диалоговое окно, нажмите



Создание соединений ICA на клиенте


Терминалы Windows почти наверняка будут идти с предустановленным клиентом ICA. Я говорю "почти наверняка" потому, что каждый терминал Windows, с которым я работал последние 5 лет, шел с поддержкой ICA..

К сожалению, если клиент ICA предварительно не установлен на ПК, вам необходимо инсталлировать его. Для этого есть три способа:

Установка по сети

Установка с диска или CD-ROM

Установка из броузера

Помимо этих способов, для клиентов Win2K Pro можно создать файл .MSI и установить его как часть автоматической инсталляции, или, для клиентов Win2K или Windows XP, сделать его частью Групповой Политики для пользователя или компьютера.

Если вы установили FR1, то уже имеете .MSI файл для клиента ICA.

Выбор способа установки зависит от обстоятельств: как вы хотите предоставлять приложения, какие операционные системы клиентов вы должны поддерживать, удобно ли пользователям проходить через процесс инсталляции и доступна ли сеть. Например, выбор в случае поддержки клиентов Win98 без использования NFuse (скорее всего это будет сетевая инсталляция, через папку общего доступа ica32) отличается от выбора, если ваши клиенты используют Win2K и вы уже создали Групповые Политики для настройки их операционной среды, и отличается от выбора, который вы сделаете для поддержки клиентов Macintosh и Linux. Возможные варианты перечислены в таблице:

Опция установки Зависимость от ОС Требует наличия сети Требует вмешательства пользователя Подключение к приложению
Установка через сеть Нет Да Да Все (Program Neighborhood, броузер, прямое подключение к серверу)
Инсталляция через Web Нет Да Да (ограничено) Все (Program Neighborhood, броузер, прямое подключение к серверу)
Windows Installer Package Да (Win32)

Нет, но с сетью намного проще

Нет

Все (Program Neighborhood, броузер, прямое подключение к серверу)

Floppy/CD-ROM Нет Нет Да

Все (Program Neighborhood, броузер, прямое подключение к серверу)

Group Policy Installation Да (Win2K и Windows XP)

Да

Нет

Все (Program Neighborhood, броузер, прямое подключение к серверу)



SpeedScreen Latency Reduction Manager


Под SpeedScreen Latency Reduction (SLR) подразумевается две разных технологии: локальное эхо текста и обратная реакция на мышь. Локальное эхо текста ускоряет отображение вводимого текста на устройстве клиента, оно дает пользователю ощущение отсутствия задержек в сети. По умолчанию, эта особенность SLR заблокирована для всех приложений, но ее при необходимости можно включить для всех или для индивидуальных приложений. Обратная реакция на щелчки мыши обеспечивает визуальную реакцию на щелчки мыши. Когда пользователь нажимает кнопку мыши, клиент ICA немедленно изменяет указатель мыши, обозначая, что ввод пользователя обрабатывается в фоновом режиме. После обработки щелчка мыши на сервере, клиент возвращает предыдущую форму курсора. Эта особенность SLR по умолчанию включена для всех приложений и может при необходимости быть изменена для всех или для индивидуальных приложений.

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

ICA Client Distribution Wizard

ICA Client Distribution представляет собой средство для обновления текущей базы данных файлов клиентов ICA. Используйте этот мастер для обеспечения загрузки последних версий клиентов ICA в системе, используя CD-ROM, поставляемый с MetaFrame XP.

Citrix SSL Relay Configuration Tool

Приложения, опубликованные с помощью MetaFrame для веб-браузеров, поддерживают Secure Sockets Layer (SSL). Используйте этот инструмент для настройки текущих параметров SSL - таких,как поддерживаемый уровень шифрования.

Ну, вот и все про ICA Administrator Toolbar. Теперь займемся второй группой средств администрирования, содержащихся в Citrix Management Console.

Навигация в Citrix Management Console

Одно из существенных улучшений в MetaFrame XP состоит в консолидации нескольких инструментов управления в Citrix Management Console. Вместо того, чтобы использовать один инструмент для лицензирования, другой - для администрирования сервера и т.д., вы используете единый инструмент для управления всем - серверами, пользователями, приложениями, принтерами. Этим инструментом является Citrix Management Console, написанная на Java.


Почему Java вместо оснастки для Microsoft Management Console (MMC)? Совместимость. Citrix также производит MetaFrame для Unix. Хотя MetaFrame XP для Unix пока еще не выпущен, использование Java для консоли управления будет подразумевать, что вы сможете управлять серверами MetaFrame для Unix и Windows используя один и тот же интерфейс.

Помимо того, что Citrix Management Console обеспечивает единый интерфейс для всех средств управления сервером, вы можете также использовать ее на компьютере Windows, не являющимся терминальным сервером - даже на рабочей станции. Если вы посмотрите CD-ROM установки, вы увидите что можете выбрать помимо установки MetaFrame XP установку консоли управления. Если вы устанавливаете консоль на компьютер, вы можете с него управлять терминальными серверами, не используя лицензию ICA или терминальную лицензию (TSCAL), даже если вы запускаете консоль на Windows OS, не содержащей TSCAL. (Это управление ограничено только MetaFrame, вы не можете управлять таким образом RDP. Кроме того, вы не можете иметь доступа к другим средствам управления, отсутствующим в Консоли, например, ICA Client Configuration). Хотя в документации Citrix говорится, что консоль будет работать только на NT и Win2K и не упоминает Windows 9x, я успешно установил и использовал консоль на Win98. Единственный недостаток консоли состоит в том, что подобно многим приложениям Java, она довольно медленная. Но не настолько медленная, чтобы стать непригодной.

Способность удаленно управлять сервером MetaFrame, не регистрируясь на терминальном сервере - большее преимущество, чем может показаться вначале. Всякий раз, когда вы соединяетесь с терминальным сервером Windows, вы назначаете лицензию Windows TSCAL на компьютер, с которого вы подключаетесь, если этот компьютер уже не содержит встроенную TS CAL. Лицензии TS не зависят от протокола - использование ICA вместо RDP все равно приводит к использованию TSCAL. С тех пор как TSCAL более или менее постоянно назначены на компьютер, удаленное администрирование терминального сервера может потенциально серьезно влиять на число доступных TSCAL. Так как Citrix Management Console соединяется с терминальным сервером минуя терминальный сеанс, она избегает этой проблемы.



Для соединения с сервером, в меню Start выбирите Programs, Citrix, Citrix Management Console. После запуска консоли укажите сервер, с которым вы хотите соединиться, введите имя человека, уполномоченного регистрироваться на терминальном сервере, укажите домен и пароль. Вы зарегистрируетесь в ферме; и все ее ресурсы станут доступны, не только тото сервер, с которым вы соединились.



В этой книге я буду часто ссылаться на Citrix Management Console. Сейчас сделаем краткий обзор ее разных разделов. Подробнее о том что и как будет разъяснено в последующих главах.

Applications

Раздел Applications консоли эквивалентен PAM в ранних версиях MetaFrame - вы используете раздел Applications для публикации приложений, т.е. делая их индивидуальными соединениями. При щелчке правой кнопкой на значке Applications появляется контекстное меню, из которого вы можете запустить мастер публикации (Application Publishing Wizard). При помощи мастера вы можете выбрать публикацию индивидуального приложения или рабочего стола. После публикации имя приложения становится видимым в консоли.

После публикации приложения, любые настройки в нем делаются из консоли - будь то копирование приложения, создание файлов .ica или .html (для публикации для Web-браузеров), удаление приложения, переименование или использование балансировки загрузки.

Citrix Administrators

Инструмент Citrix Administrators используется для добавления учетных записей пользователей в список уполномоченных использовать Citrix Management Console. Консоль могут использовать только явно уполномоченные на это пользователи - независимо от членства в группах. Это право не дается автоматически. Даже учетная запись Администратора будет заблокирована, если ее не добавить. В процессе установки MetaFrame вам предлагается указать имя пользователя, уполномоченного использовать консоль. Не забудьте это имя, потому что при каждом запуске консоли вам необходимо вводить это имя. (Необходимость каждый раз регистрироваться в консоли - сущая напасть. Однако, это означает, что вы можете установить консоль на машине клиента, которая является открытой для разных людей, в том числе для тех, кому не разрешено управлять серверами MetaFrame).

Licenses



Мы уже обсуждали стоимость лицензирования MetaFrame XP. Вы используете инструмент Licenses для добавления лицензий и их активации. Инструмент Licenses содержит три вкладки.. На вкладке Connection перечислены все наборы лицензий на соединения, на вкладке Product перечислены лицензии на продукт, а на закладке License Numbers перечислены все установленные лицензии независимо от типа.

Load Evaluators

MetaFrame 1.8 поддерживает распределение (балансировку) нагрузки при помощи дополнительного компонента Load Balancing. Помимо того, что распределение нагрузки в MetaFrame XP содержит значительно больше возможностей, чем в Terminal Services, MetaFrame XP имеет больше параметров балансировки, чем в предыдущих версиях. Ползунки ушли в прошлое, теперь нужно вводить абсолютные значения или проценты. MetaFrame XP использует т.н. оценщики нагрузки (load evaluators), т.е. набор правил распределения нагрузки. Вместо того, чтобы просто следить за загрузкой процессора, использованием памяти и числом одновремененных соединений, MetaFrame XP поддерживает правила, предназначенные для обнаружения других узких мест на сервере:



Оценщик Описание
Application User Load Это правило ограничивает количество экземпляров некоторого приложения, которое может быть запущено на сервере. Используйте это правило для ограничения ресурсоемких приложений.
Context Switches
Win2K может работать в одном из двух режимов: непривилегированный (пользовательский) режим и привилегированный режим (режим ядра). В непривилегированном режиме все процессы защищены друг от друга ; в привилегированном режиме все процессы используют единое пространство памяти. Изменение режимов называется "переключением контекста". Вы можете ограничить число соединений с терминальным сервером согласно количеству переключений контекста в каждую секунду.

CPU load При применении это правила MetaFrame XP откажет в регистрации, если CPU загружен более 90% времени и сообщает серверу об освобождении менее 10% времени.

Disk Data I/O Измеряет частоту записи чтения и записи на диск Disk Operations Измеряет число операций чтения и записи на диск в секунду. Как и в случае в Disk Data I/O, это правило относится ко всем дискам на терминальном сервере. IP Range Разрешает или отвергает соединение с серверам или приложением из указанного диапазона адресов. License Threshold Следит за числом лицензий (объединенных или назначенных), которые используются на специфическом сервере. Назначенные лицензии относятся к индивидуальному серверу; объединенные лицензии совместно используются всеми серверами в ферме. Memory Usage Сообщает процент от памяти, используемой сервером. Page Fault Следит за скоростью, с которой сервер обращается файлу подкачки за данными, которые были перемещены из оперативной памяти в файл подкачки. Page Swap Контролирует скорость, с которой сервер перемещает данные из памяти на жесткий диск. Scheduling Позволяет Вам выбирать время дня или день недели, когда сервер или приложение будут недоступны. Это правило не предназначено, чтобы использоваться самостоятельно и автоматически не отключает уже подключенных пользователей. Server User Load Следит за числом соединений и отказывает новым подключениям при достижении верхнего порога.

MetaFrame XP идет с двумя наборами оценщиков: Default и Advanced. Если Вы устанавливаете MetaFrame XP в "родном" режиме (т.е. у вас только серверы MetaFrame XP), то он будет использовать оценщик Advanced, который будет замерять частоту подкачек, использование памяти и процессора. Если вы установили сервер в редиме своместимости с MetaFrame 1.8 (подробнее об этом я расскажу позднее), он будет использовать оценщик Default, который измеряет лишь текущие подключения к серверу MetaFrame. Вы можете создать своего собственного оценщика, щелкнув правой кнопкой в окне оценщиков и выбрав из контекстного меню Actions -> New. В качестве альтернативы вы можете скопировать существующий оценщик и отредактировать его копию, но вы не можете редактировать встроенных оценщиков. Вы можете прикрепить к серверу одновременно только одного оценщика.

Printer Management



Давайте сразу скажем правду - печть в среде терминального сервера становится настоящей головной болью, когда вы попробуете поддерживать принтеры клиента. Вкратце печать в среде терминального сервера работает приблизительно так: задание по выводу на печать генерируется на терминальном сервере, который создает буферный файл (spool file), который затем переадресуется на принтер клиента. Для этого переназначения необходимо наличие драйверов принтера как на клиенте, так и на сервере. Citrix не решил все проблемы, связанные с печатью, но начиная с MetaFrame XP компания занялась двумя проблемами: управление драйверами принтеров и уменьшением потребления полосы пропускания при печати. Мы обсудим печать в , сечас же сделаем беглый обзор средств, которые вы можете использовать для управления печатью.

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

Упрвление полосой пропускания весьма полезно, поскольку печать может "подвесить" терминальный сеанс при большом трафике. Терминальные сеансы не используют большую полосу пропускания, в отличе от заданий печати. В медленных соединениях постоянная печать может препятствовать использованию терминальных сеансов пользователями, пока задание направляется на принтер клиента. По умолчанию, MetaFrame XP не ограничивает полосу пропускания для печти, но если вы зайдете в Printer Management, выберите закладку Bandwidth, дважды щелкните на имени сервера, то можете установить ограничение полосы пропускания:

Servers

Наконец, раздел Servers в консоли предоставляет вам управление индивидуальными серверами в ферме. Эта часть во многом аналогична Citrix Server Administration в ранних версиях MetaFrame. Как видно на следующей картинке, в этом разделе вы можете просмотреть информацию о текущих пользовательских соединениях, правилах распределения нагрузки, доступных принтерах и установленных драйверах, текщих процессах, установленных лицензиях:





При использовании XPe этот раздел содержит дополнительные закладки для особенностей, доступных только в этой версии XP. Приведенная картинка взята c сервера, выполняющего XPa - это можно заметить по присутствию Load Manager Monitor.

Утилиты командной строки MetaFrame XP

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

Команда Описание
altaddr
Определяет альтернативный адрес IP сервера

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

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

change client

Отображает, обновляет или меняет отображение устройств Клиента ICA для дисков, принтеров и портов клиента.

chfarm

Перемещает сервер MetaFrame XP из текущей фермы в другую или новую ферму.

clicense

Добавляет, удаляет, или позволяет просмотреть лицензии Citrix для выбранной фермы.

cltprint

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

ctxxmlss

Изменяет номер порта службы XML (по умолчанию 80). Начальное значение настраивается во время инсталляции MetaFrame.

dsmaint

Конфигурирует хранилище данных IMA или создает резервную копию хранилища (если используется Access).

icaport

Конфигурирует номер порта TCP/IP, используемый для сеансов ICA (по умолчанию 1494) или восстанавливает значение по умолчанию.

query (server, process, sessions, users, и т.д..)

Позволяет Вам просматривать информацию о фермах серверов, процессах, серверах, сеансах ICA и пользователях. twconfig

Настраивает параметры экрана ICA для текущего сервера (не для всей фермы; для этого вы должны использовать Citrix Management Console).


SQL Server


Использование SQL Server требует, чтобы на каждом сервере MetaFrame, который будет иметь прямое соединение с хранилищем, была установлен драйвер ODBC для Microsoft SQL Server версии 3.70.08.20 или позже. Эти драйверы устанавливаются на серверы Win2K, но если вы используете WTS, то будете должны загрузить MDAC 2.6 с .

Установка MDAC модифицирует механизмы базы данных на WTS, поэтому если вы устанавливаете обновленный MDAC на сервере приложений WTS, выполняющем службу лицензирования Terminal Services, то сначала остановите эту службу. После установки MDAC очистите журнал событий и затем перезапустите сервер перед установкой MetaFrame XP.

Независимо от того, используете вы WTS или Win2K для MetaFrame, вам следует подумать о масштабировании:

Планируйте не менее 20 МБ дискового пространства для каждых 100 серверов - и даже больше, если ваша ферма содержит много публикуемых приложений.

Citrix рекомендует, чтобы вы установили для временной базы данных опцию Auto Grow на разделе размером не менее 1GB свободного пространства (рекомендуется 4GB, если ферма большая, со многими драйверами принтеров), чтобы обеспечить достаточность дискового пространства для базы данных и последующего роста вместе с фермой.

Динамические диски в Windos 2000 позволяют вам создавать тома, простирающиеся на несколько физических дисков. Хотя это уменьшит проблему нехватки дискового пространства, дополнительное время, требуемое для поиска на нескольких физических дисках, будет влиять на производительность. Современные диски достаточно велики, чтобы разместить хранилище данных, поэтому возьмите диск с достаточно большим разделом.

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

Установите опцию "Truncate log on Checkpoint", чтобы держать размер лога под контролем..

При использовании SQL Server в реплицируемой среде, убедитесь, что используете одну и ту же учетную запись пользователя на каждом SQL Server.

Каждая ферма MetaFrame XP требует выделенной базы данных. Однако, несколько баз данных могут выполняться на одном сервере SQL Server.



Тип системной шины


ISA или PCI? На самом деле это не вопрос. Хотя теоретически вы можете использовать ISA (которую, впрочем, уже не так легко найти), не делайте этого. Она слишком медленная, чтобы использовать на сервере. PCI и никаких вопросов.



Тонкая настройка групповых политик


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

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

Для применения групповой политики зайдите в контроллер домена, щелкните правой кнопкой мыши на OU или домене, для которого вы хотите установить политику, и выберите из контекстного меню Properties. На вкладке Group Policy нажмите New для создания новой записи, или Edit для редактирования политики, включенной в этот GPO. Закончив, примените политику. По умолчанию, политика обновляется каждые 90 минут, но вы можете изменить это значение или просто перезагрузить сервер, чтобы сделать обновление системы. Вы также можете немедленно обновить параметры настройки групповой политики, используя команду secedit. Чтобы обновить групповую политику для пользователей, введите

secedit /refreshpolicy user_policy

Для обновления групповых политик, применяемых к компьютеру, введите

secedit /refreshpolicy machine_policy

Чтобы повторно применить групповую политику даже если не было никаких изменений, добавьте к любой команде опцию /enforce.

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



Управление доступом клиентов к серверу MetaFrame


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

Отключение сквозной аутентификации

Мы обсуждали сквозную аутентификацию в Главе 6. Как говорилось, сквозная аутентификация представляет брешь в защите, потому что вы разрешаете автоматический вход к ресурсам домена. Будучи разрешенным, этот автоматический вход возможен только для того, кто уже имеет некоторую степень доступа к домену, но некоторые приложения или данные, которые могут быть доступны на сервере MetaFrame, не доступны через стандартный вход в домен. В дополнение к очевидным соображениям защиты, связанным со сквозной аутентификацией, существует еще одна не столь очевидная проблема. Когда вы разрешаете сквозную аутентификацию, при входе запускается процесс ssonsvr.exe и берет имя текущего пользователя, домен и пароль. Соединения, настроенные на использование сквозной аутентификации, берут информацию для входа в систему от этой службы. Пользователь, который имеет право Debug Programs (расширенное право) может использовать отладчик, чтобы просмотреть эту информацию в текстовом виде. Пока пользователи осторожны при выходе, эта настройка не опасна, но не стоит сохранять информацию о пароле в текстовом виде в незащищенном файле. Если эта потенциальная уязвимость является для вас проблемой, вы можете совсем отключить сквозную аутентификацию: откройте Program Neighborhood, выберите из меню Tools, ICA Settings. На закладке General сбросьте флажок Pass-Through Authentication.

Ладно, думаете вы, а если кто-то полезет в настройки и снова включит сквозную аутентификацию? Тогда вы можете удалить файлы ssoncom.exe, ssonstub.dll, и ssonsvr.exe, находящиеся в каталоге Program Files\Citrix\ICA Client. Без этих файлов сквозная аутентификация работать не будет.

Использование шифрования


Текущая версия клиента ICA поддерживает шифрование, и Citrix рекомендует его использовать для защиты сеансов ICA, чтобы предотвратить перехват пакетов. Для принудительного использования минимального уровня шифрования вам нужно изменить настройки ICA. В утилите Citrix Connection Configuration дважды щелкните на протоколе ICA, чтобы открыть диалоговое окно свойств соединения. Щелкните кнопку Advanced и откроется окно дополнительных настроек:



Как видно, в этом окне вы можете настроить параметры протокола, не полагаясь на настройки в свойствах пользователя. Раздел Security мы хотим настроить на уровне протокола. Выберите из списка требуемый уровень шифрования, и клиент ICA будет принужден его использовать. Для шифрования всей информации сеанса вам необходимо использовать шифрование RC5 (40 бит) или выше. Шифрование RC5 (128 бит) использует полное шифрование сеанса по 128-битному алгоритму RC5. Однако, там есть еще выбор RC5 128-Bit Logon Only, который обеспечивает 128-битное шифрование только процесса входа, а затем выполняет сеанс без сильного шифрования.

Ограничение доступа к дискам сервера MetaFrame

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

Использование NTFS

Инсталлируйте MetaFrame на раздел NTFS. В сущности, весь сервер должен быть отформатирован с NTFS. Это позволяет использовать не только такие достоинства NTFS, как шифрование, квотирование, компрессия и пр., но и локальные права доступа, тогда как FAT и FAT32 поддерживают только сетевые разрешения.

Поскольку любой, кто использует сервер MetaFrame, имеет локальный доступ к нему, вам необходимы локальные разрешения для блокировки среды. Кроме того, если вы инсталлируете MetaFrame на раздел NTFS, то защищается каталог Program Files\Citrix\Independent

Management Architecture. К этому каталогу имеют доступ только локальные администраторы и SYSTEM.

Устанавливайте MetaFrame на готовый раздел NTFS. Если вы установите MetaFrame на FAT или FAT32, а потом сконвертируете раздел в NTFS, то это даст группе Everyone полный доступ ко всем частям раздела (поскольку FAT и FAT32 не поддерживают локальных разрешений). Хотя вы можете вручную установить разрешения, гораздо проще и надежнее установить на "родной" раздел NTFS.


Управление драйверами принтеров


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

Однако, не стоит оставлять установку драйверов на самотек. Во-первых, слишком нудно вручную устанавливать соединения с принтерами на всех серверах MetaFrame. Во вторых, ручная установка всех драйверов дает меньше возможностей управления над выбором драйвера, чем вам вероятно хочется, особенно это касается автоматически установленным клиентским драйверам. Давайте побеседуем о том, как скопировать драйверы с одного сервера на несколько серверов (с помощью Replicate Drivers) и как контролировать, какие драйверы надо устанавливать (с помощью Driver Compatibility ).



Управление фермами и зонами


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

Используйте зоны для более эффективного сбора и распределения данных фермы. Если в вашей ферме много серверов MetaFrame и вы ищите способ визуально организовать их для упрощения управления, вы можете для серверов создать папки. Щелкните правой кнопкой на значке Servers в Ctrix Management Console и выберите из меню New Folder. Папки могут содержать как индивидуальные серверы, так и другие папки, но не увлекайтесь слишком вложенными папками, иначе вам трудно будет найти нужные серверы.

Изменение имени зоны

Если вы хотите сменить имя текущей зоны, щелкните на значке фермы поравой кнопкой и выберите из меню Properties, а затем выберите закладку Zones.

На этом рисунке имя зоны - "Red Zone", а имя коллектора -"Gamma". Для переименования зоны выделите ее - тогда активируется кнопка Rename Zone. Щелкните на ней и введите новое имя.

Перемещение сервера в существующую зону

Допустим, что вы установили ферму MetaFrame с нестандартным именем зоны. При инсталляции следующего сервера в ферму, вы указываете программе установки использовать то имя зоны, которое она хочет. Вместо того, чтобы определить текущую зону, установка помещает в сервер в зону с именем, основанным на адресе IP сервера (поэтому все серверы в одной подсети оказываются в одной зоне).Если вы хотите, чтобы оба сервера оказались в одной зоне, вам следует один из них перенести.

Для этого откройте вкладку Zones и выберите имя зоны, содержащей нужный перемещаемый сервер. После этого активируется кнопка Move Servers. Щелкните ее и (если установлен FR1) появится сообщение, что после изменении имени зоны необходимо перезагрузить сервер. После выбора Yes откроется дислоговое окно, в котором вы можете выбрать зону, в которую хотите перенести сервер. Щелкните значок со стрелкой для отображения всех доступных ферм. Если ферма содержит только две зоны, то у вас вообще не будет выбора - просто щелкните OK для перемещения выбранного сервера в другую зону.


Если у вас нет FR1, то сообщения, напоминающего о перезагрузке, не появится. Тем не менее вам все равно необходимо перезагрузить сервер.

Если зона стала пустой, то вам необходимо ее удалить - вы не можете иметь зону без серверов. Выберите пустую зону и щелкните кнопку Remove Zone. Подтвердите удаление.

Не волнуйтесь - вы не сможете случайно удалить не ту зону и серверы в ней. Вы можете удалить только пустую зону.

Добавление новой зоны

Для создания новой зоны и перемещения сервера из одной зоны в другую, щелкните кнопку New Zone и введите ее имя. Перед тем, как вы покините вкладку, вы должны поместить в зону как минимум один сервер. Зоны не могут быть пустыми.

Выбор коллектора данных

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

Сначала щелкните правой кнопкой на сервере, который вы хотите сделать коллектором данных или щелкните Set Preference. Убедитесь, что для желаемого коллектора данных выбрана опция Most Preferred.



Эта установка сделает новый сервер хорошим кандидатом для предстоящих выборов нового коллектора даных, если текущий коллектор будет остановлен, но пока не делает новый сервер новым коллектором. Для этого выберите текущий коллектор данных и сделайте его предпочтительность меньше, чем у будущего коллектора. Щелкните OK и выйдите из вкладки Zones.

Пока оригинальный коллектор данных все еще отображается как коллектор данных для зоны. Чтобы обновить ваши параметры настройки зоны, найдите значок сервера в левой области окна Citrix Management Console, щелкните правой кнопкой мыши на нем, выберите из контекстного меню Refresh. Когда вы снова откроете окно свойств фермы , то увидите, теперь коллектором данных является надлежащий сервер. Вы можете быть в этом уверены, поскольку что коллектор данных зоны всегда показывается в скобках рядом с именем зоны.

Перемещение сервера в другую ферму



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

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

CHFARM

Чтобы переместить сервер, запустите утилиту chfarm, находящуюся на CD-ROM инсталляции MetaFrame XP или в каталоге %systemroot%\system32\citrix\IMA. Появится диалоговое окно, предупреждающее вас о том, что вы собираетесь переместить сервер в новую ферму, и требующее подтверждение. Нажмите Yes, и у вас запросят местоположение установочных файлов. Выберите нужный каталог на CDROM или в сети и щелкните OK.

Вы увидите другое предупреждающее сообщение от том, что не сможете отменить изменения и при отмене вам придется повторно установить MetaFrame. Если вы уверены, нажмите Yes. Chfarm остановит службу IMA. Затем запустится мастер, который подозрительно похож на мастер инсталляции. Вас проведут через этап инсталляции, в котором вы выбираете создание новой фермы или присоединение к существующей, а также создаете прямое или косвенное соединение с хранилищем данных. По завершении chfarm перезапустит службу IMA, но вы должны перезагрузить сервер, чтобы изменения вступили в силу.

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

Частью установки MetaFrame XP является создание учетной записи администратора Citrix. Когда вы создаете новую ферму используя chfarm, вы проходите сокращенную версию установки, которая не позволяет вам создать эту учетную запись. Поэтому MetaFrame делает это за вас, создавая учетную запись администратора, основываясь на имени локального администратора.

Удаление сервера из Фермы

Для удаления сервера из фермы щелкните правой кнопкой мыши на сервере и выберите Remove Server from Farm. Предупреждающее сообщение скажет вам, что вы должны деинсталлировать MetaFrame с сервера при его удалении из фермы и спросит, хотите ли вы продолжить. Нажмите Yes, и сервер исчезнет. Вообще говоря, вы вряд ли будете насовсем удалять сервер, если собираетесь еще на нем использовать MetaFrame. Если вы всего лишь хотите переместить сервер в другую ферму, используйте команду chfarm.


Управление сеансами ICA


Мы обсудили, как предоставить пользователю клиента ICA и как его подключить к серверу MetaFrame. Я хотел бы завершить это главу обсуждением основной информации об управлении сеансами ICA.. Большая часть инструментов управления сенасами ICA находятся в Citrix Management Console. Вы можете контролировать опубликованные приложения и рабочие столы (но не содержание), дважды щелкая их значки в разделе Applications, контролировать все сеансы на индивидуальных серверах, щелкая значки Servers и выбирая вкладку Users. Выберите индивидуальный сервер и вы получите информацию о лицензиях, процессах, принтерах, управлении нагрузкой, сеансах, пользователях. Вообще говоря, вы будете использовать эти инструменты чтобы получить три категории информации:

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

Информация о сеансах - идентификатор сеанса, его состояние, продолжительность, а также информация о компьютере клиента (адрес IP, версия RDP и т.п.)

Информация о процессах - идентификатор процесса и исполняемые файлы (образы), с которыми ассоциированы эти процессы

Win2K and NT имеют дело не с приложениями, а с процессами, наборами серверных ресурсов с минимум одним исполняемым компонентом. Процессы ассоциируются с образом, или именем приложения. Для нашей цели процессы, образы и приложения в значительной степени эквивалентны. Citrix и Microsoft используют понятие процесс вместо приложение потому, что часто необходимо ссылаться на идентификатор процесса, а не на приложение.

В следующем примере я покажу, как использовать Citrix Management Console для поиска приложений, выполняющихся в ферме, как устанавливать теневые сеансы, как закрывать приложения пользователей без завершения их сеансов ICA.

Получение информации о пользователях и процессах

В интересах поддержания морального духа коллектива (и потому что начальник любит игры), вы оставили пасьянс FreeCell на сервере MetaFrame. Однако, пользователям не разрешается играть в рабочее время, а только в обеденный перерыв. Чтобы определить, кто раскладывает псьянс в рабочие часы, вам нужно найти тех, кто зарегистрирован на серверах MetaFrame в ферме и какие процессы выполняются в их сеансах. Для этого вы можете использовать Citrix Management Console и командную строку. Использование этих инструментов зависит от того, что вы хотите найти - специфического пользователя, запустившего пасьянс, или определить, запущен ли вообще пасьянс где-то в ферме.

Чтобы определить конкретного играющего пользователя, щелкните значок Servers в Citrix Management Console и выберите вкладку Users.

Вы можете легко определить, какие компьютеры выполняют опубликованные приложения - имя приложения отображается в колонке Application. Однако, вряд ли вы опубликовали FreeCell и поэтому не можете сказать, какие приложения работают на рабочих столах. Для получения полного списка из GUI, выберите значок сервера, к которому подключены компьютеры (в колонке Server) и выберите значок сервера в разделе Servers. Вкладка Processes покажет все выполняющиеся в данный момент процессы, отсортированные по имени пользователя, имени образа и идентификатору сеанса. Щелкните на заголовке колонки для смены сортировки.


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

Вы получите приблизительно такой результат: USERNAME SESSIONNAME ID PID IMAGE christaa 3 2812 explorer.exe christaa 3 2880 winpppoverether christaa 3 2888 icabar.exe christaa id 5 5 1036 explorer.exe christaa id 5 5 3076 winpppoverether christaa id 5 5 2060 icabar.exe christaa ica-tcp#18 6 1884 notepad.exe christaa id 5 5 2040 mspaint.exe

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

query process /server:termserv ChristaA

Вы не можете сделать всей фермы серверов, только индивидуальные серверы. Однако, этим способом вы можете увидеть несколько сеансов.

Если я хочу узнать, кто запустил специфический процесс , то запускаю команду query process немного иначе. Вместо того, чтобы указать в качестве параметра имя пользователя, я указываю имя образа, ассоциированного с процессом. Например: query process freecell.exe

Я получу полный список пользователей на запрашиваемом сервере, которые выполняют приложение, идентификатор процесса, связанный с каждым экземпляром процесса, а также идентификатор сеанса: USERNAME SESSIONNAME ID PID IMAGE administrator console 0 1268 freecell.exe administrator 3 2356 freecell.exe scott 4 2504 freecell.exe


Управление серверами


Вы не можете управлять серверами или опубликованными приложениями одними и теми же утилитами. При установке MetaFrame XP вы могли заметить некоторые инструменты, которые вы раньше не использовали. Вы будете использовать их в смешанных фермах. Например, чтобы управлять приложениями на серверах MetaFrame 1.8 в смешанной ферме, вы будете использовать Published Application Manager на сервере MetaFrame XP. Вообще говоря, эти инструменты не будут работать с серверами MetaFrame XP. Для управления серверами MetaFrame XP или для настройки и управления принтерами в ферме используйте Citrix Management Console.

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

Во-первых, если вы планируете использовать распределение нагрузки для опубликованного приложения по серверам MetaFrame XP и MetaFrame 1.8, вы должны опубликовать приложение сначала на сервере MetaFrame 1.8, затем добавить приложение (с тем же самым публикуемым именем) на серверы MetaFrame XP, используя Citrix Management Console. Если вы добавите приложения сначала в Citrix Management Console, то они уже будут существовать в хранилище данных, и вы не сможете добавить их посредством Published Application Manager. Во-вторых, если вы изменяете опубликованные приложения с помощью Published Application Manager, установленного на сервере MetaFrame XP, вы не можете изменить те же самые приложения с помощью Published Application Manager, установленного на сервере MetaFrame 1.8. В третьих, Citrix не рекомендует изменять приложения в ферме, если вы планируете миграцию серверов - приложения не могут мигрировать должным образом, если были изменены. Наконец, опубликованные приложения на мигрированных серверах будут все еще видны в Published Application Manager до тех пор, пока не будут удалены вручную.

Ферма должна работать в смешанном режиме только на время миграции, но не в промышленной среде. Использование смешанного режима усложняет управление и увеличивает сетевой трафик. Если вы планируете запускать MetaFrame XP в смешанном режиме, то учтите, что будете ограничены со стороны MetaFrame 1.8.



Установка базы данных по умолчанию для других серверов MetaFrame


База данных клиентов ICA обычно находится только на одном сервере, на котором устновлена. Если вы хотите упростить обновления клиентов ICA, можете сделать один из серверов сервером базы данных клиентов ICA для других серверов MetaFrame. Единственная загвоздка состоит в количестве одновременных обновлений, которые один сервер может обработать - если установлен лимит 15, то это общий лимит 15 обновлений, а не для одного сервера. Также не стоит делать сервер базы данных клиентов ICA на сервере MetaFrame, подключенном к медленной сети - вы можете замедлить обновления клиента ICA .

База данных обновлений клиентов обычно находится на сервере MetaFrame в %SystemRoot%\Ica\ClientDB\dbconfig.ini . Чтобы использовать эту базу данных для других серверов MetaFrame, сделайте к этой папке общий доступ..

Вы можете переместить базу данных обновления клиентов в другое место. Для этого в ICA Client Update Configurationв из меню Database выберите



Установка через сеть


Чтобы позволить пользователям устанавливать поддержку ICA через сеть, вам нужно предоставть совместный доступ к папке, в которой находятся инсталляционные файлы. папку, в которой клиентские файлы установки сохранены. Это удобно, поскольку они находятся в той же самой (скрытой) папке, что и файлы клиента RDP: %systemroot %\system32\clients. В этой папке найдите каталог ICA и продоставьте к нему общий доступ через сеть.

Чтобы сделать эти файлы доступными, не обеспечивая даже ограниченный доступ к системному каталогу, скопируйте содержимое \system32\clients\ica в другое менее уязвимое место. Также дайте доступ только к тем файлам, которые нужны. Если вы поддерживаете только компьютеры Win32, то предоставьте доступ только к папке \ica32 внутри папки \ica.

Когда вы сделаете свой выбор и нажмете



Установка через Web


Вам не обязательно использовать NFuse для установки клиента ICA через Веб. Скорее, вы можете сделать это частью обычного взаимодействия пользователя с сетью, возможно, поместив ссылку на инсталляцию ICA на домашней странице компании в офисной интрасети. Как вы увидите, вы можете использовать этот метод для установки как полной, так и сокращенной версии клиента ICA, используемой для отображения приложения в Web-браузере. У кого установлен FR1, также могут для их клиентов Win32 использовать Program Neighborhood Agent, создавая ссылки на приложения, опубликованных через NFuse на клиентских рабочих столах. FR1 идет с файлом MSI для Program Neighborhood Agent.

Инсталляция через Web - самый простой метод для клиента и одновременно самый гибкий: этот метод будет работать с любым поддерживаемым броузером. Для администратора этот процесс немного более хлопотный, потому что вы должны будете подготовить веб-страницу с инсталляционными файлами Клиента ICA. Чтобы создать сайт загрузки клиентов одного языка, выполните следующие шаги: на веб-сервере создайте каталог для файлов инсталляции, например, \icainstall. Возьмите CD NFuse-ROM (который входит в поставку MetaFrame XP) и скопируйте содержимое папки \webinst в \icainstall, включая все подкаталоги.

Я предложил использовать CD-ROM для удобства, но самые последние версии клиентов всегда находятся на веб-сайте Citrix http://www.citrix.com/download. См. далее инструкции, как использовать эти файлы для обновления вашей базы данных клиентов ICA.

Из папки на CD-ROM или \icaweb в %systemroot %\system32\c\ients\ica на сервере MetaFrame, скопируйте содержимое каталога для соответствующего языка (например, \en, если вы устанавливаете поддержку английской версии клиента). Где-нибудь на странице, которую будут видеть пользователи ICA , опубликуйте ссылку на setup.htm.

После того, как вы сделали все это, инсталляция со стороны пользователей будет протекать так: Щелкните по ссылке на setup.htm. Предполагая, что вы не редактировали Web-страницу, setup.htm появится клиенту в таком виде:


В данном случае Setup рекомендует установить клиента ICA Win32 (жирная ссылка), поскольку эта страница отображается на клиенте, выполняющем Win2K Pro. Подразумевая, что клиент следует пожеланиям (остальные опции перечислены в раскрывающемся списке Other Platforms), ему будет представлен экран с выбором установить либо полного клиента (ica32.exe), либо сокращенного веб-клиента (ica32t.exe), который меньше по размеру, но полезен для тех, кто может запускать приложения только из веб-браузера. Пользователь должен щелкнуть соответствующую кнопку. Если клиент использует Netscape, он может загрузить исполняемый файл и запустить его вручную; если он использует IE, он может запустить выполняемый файл или загрузить для установки после отключения.

Независимо от того, откуда вы запустили файл - из браузера или автономно - появится экран с вопросом, хотите ли вы доверять содержимому от Citrix. Щелкните Yes и программа установки начнет копировать файлы на компьютер, а затем предложит установить Citrix ICA Web Client. Здесь необходимо ответить Yes. После принятия EULA, программа установки будет копировать файлы в фоновом режиме, не задавая больше вопросов.

Создание файлов .MSI

Если вы для распротсранения клиентов хотите использовать групповые политики, вы можете использовать программу WinINSTALL, входящую в состав Win2K, для создания необходимого файла .MSI (если вы не установили FR1, то не имеете файл MSI, предложенный Citrix). WinINSTALL по умолчанию не инсталлируется. Найдите на инсталляционном CDROM в папке \valueadd\3rdparty\mgmt\winstle файл swiadmle.msi и запустите его. Я не буду здесь приводить подробные инструкции, но основная идея состоит в следующем: вы запускаете WinINSTALL на компьютере, который будет образцом, устанавливаете приложение, которое хотите собрать в пакет, запускаете WinINSTALL еще раз, чтобы сделать "снимок" системы после установки приложения на компьютер. Программа сохранит изменения, сделанные в реестре, в файл .MSI, который вы можете запустить на другом компьютере Win32 для установки. Для любого клиента, использующего Win2K или Windows XP, вы можете использовать групповые политики Win2K для развертывания этих клиентов.

Если вы выбрали этот метод развертывания, я рекомендую использовать компьютерно-ориентированные политики. Доступ к MetaFrame может лицензироваться на базе соединений (per-connection), но требует не только лицензии ICA, но и Win2K TSCAL. TSCAL лизензируются на компьютеры (per-computer). Покомпьютерное развертывание клиентов ICA позволяет избежать случайной выдачи TSCAL компьютеру, который не будет их использовать.


Установка MetaFrame XP


Для установки MetaFrame XP, вскройте картонную упаковку с MetaFrame XP и найдите CD-ROM "MetaFrame XP". Вставьте его в привод, после запуска появится окно инсталляции. Щелкните кнопку MetaFrame XP Setup.

Помимо диска с MetaFrame XP, в дистрибутиве также содержатся другие диски - один для добавления поддержки NFuse, и еще один с клиентами ICA. MetaFrame XPe содержит три дополнительных CD-ROM: System Monitoring and Analysis, Application Packaging and Delivery, и Network Management.

Вы также можете загрузить MetaFrame XP самых последних выпусков с FTP-сайта citrix:

Подготовка

Дальнейшие действия зависят от того, устанавливаете ли вы MetaFrame XP на новую машину, или делаете обновление предыдущей версии. Если у вас уже установлена предыдущая версия MetaFrame, то появится диалоговое окно, сообщающее о наличии предыдущей версии и запрашивающее продолжение. Если вы последовали предыдущим рекомендациям и отключили пользователей, то все в порядке. Если есть установленный MetaFrame XP, вас предупредят, что все, кто подключен к серверу и использует Citrix Management Console, будут отключены. Щелкните Yes. С этого места начинается процесс, общий для новой инсталляции и обновления:

1. Согласитесь с лицензионным соглашением. Мы уже обсуждали лицензирование в главе 1. Основные моменты:

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

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

Вам необходимы разные лицензии для подключения к MetaFrame XPs, XPa и XPe.

Вы можете сделать одну резервную копию инсталляционного CD-ROM.

Компоненты MetaFrame XPe должны быть установлены только на сервер с установленным MetaFrame XPe, за исключением пакета Citrix Installer.

Вам необходимы Microsoft CAL и TSCAL для подключения к серверу MetaFrame

2. Закройте все работающие приложения и щелкните Next для начала установки MetaFrame XP. Эта процедура доступна только при новой инсталляции MetaFrame XP, а не при обновлении или переустановке.


3. После щелчка Next, программа установки начнет процесс настройки доступа к хранилищу данных.

4. На следующем экране вы должны выбрать - создать новую ферму или присоединиться к существующей. Внимательно делайте выбор; для изменения фермы после установки вам необходимо будет использовать утилиту CHFARM.



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

Создание новой фермы

Если вы создаете новую ферму, то должны создать новое хранилище данных для нее. Поэтому на следующем этапе вы должны выбрать, какую базу данных использовать - Access или SQL на отдельном сервере:

.

Затем вам нужно выбрать имя для зоны. Имя зоны по умолчанию основывается на идентификаторе подсети сервера MetaFrame. Но вы можете указать здесь другое имя, сбросив флажок "Use Default Zone Name" и введя новое имя. Впоследствии вы можете переименовать зону без всяких побочных эффектов (подробнее об управлении зонами см. ). Вам следует обратить внимание на то, к какой ферме нужно присоединить сервер, поскольку все серверы в той же зоне будут иметь один коллектор данных. По этой причине схема именования зон по умолчанию помещает все серверы одной подсети в одну зону. Если вы инсталлируете сервер для последующего клонирования, используйте имя зоны по умолчанию. Однако, если вы инсталлируете серверы в разные подсети в пределах одной зоны, то наоборот, не используйте имя по умолчанию, поскольку идентификатор сети определяет имя зоны по умолчанию. Если вы выбрали "Use Default Zone Name", то фермы в разных подсетях будут в разных зонах.

Далее укажите имя новой фермы. Имя фермы может содержать до 32 символов, включая пробелы. После щелчка на Next, появится окно, предупреждающее, что для переноса сервера в другую ферму вам нужно будет использовать утилиты CHFARM или DSMAINT. После щелчка на Next, программа установки начнет создавать хранилище данных для новой фермы. Этот процесс может занять несколько минут.

Присоединение к существующей ферме



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



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

При выборе косвенного доступа (indirect) вам следует указать имя сервера, к которому следует подключиться.



Это сервер должен быть доступен во время инсталляции MetaFrame, иначе вы не сможете продолжить. Вы также должны указать номер порта, который должна использовать служба IMA. По умолчанию служба IMA использует порт 2512.

Изменение порта IMA

Обычно использование порта 2512 для службы IMA не доставляет никаких проблем. Если же вам необходимо его изменить, то отредактируйте в реестре сервера значение ImaPort в ключе HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMA.

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

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

После успешного создания соединения с промежуточным сервером, программа установки покажет вам имя сервера и номер порта, предлагая их подтвердить. После того, как вы щелкните Next, вы уже не сможете вернуться назад, и в случае смены фермы вам придется использовать утилиты командной строки. Щелкните Next, и программа установки задумается на некоторое время, устанавливая соединение с хранилищем данных.

Создание сетевых соединений

Хранилище данных настроено и мы переходим к следующему этапу - настройке сети.





Сначала выберите сетевые протоколы, для которых вы хотите установить поддержку ICA. Вам доступны TCP/IP, IPX, SPX и NetBIOS. Для выбора доступны только уже установленные протоколы. По умолчанию выбран только TCP/IP, выбор остальных вы должны сделать сами. Если вы заранее не установили протокол, который хотите использовать с ICA, то не можете остановиться посреди инсталляции и установить протокол, но можете добавить поддержку другого сетевого протокола позже.

Закончив выбор, щелкните Next.

Затем вам представится возможность настроить MetaFrame для работы через модем. Если вы ранее использовали апплет Phone and Modem Options в панели управления для настройки параметров Telephony API (TAPI), программа установки это обнаружит. В противном случае щелкните кнопку Add Modems для запуска апплета Phone and Modem Options, где вы можете ввести код области и прочие настройки телефонии.

Если вы не хотите сейчас настраивать модем, то можете сделать это позже с помощью апплета Phone and Modems в панели управления.

Следующим шагом вам нужно настроить теневые сеансы (Shadowing). В предыдущих версиях MetaFrame эта настройка не содержала много опций. Теперь это не так.



Вы можете разрешить теневые сеансы на этом сервере или совсем запретить. (Это относится только к ICA, а не к RDP).

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

Про запрещение теневых сеансов все ясно. Давайте рассмотрим опции ограничения теневых сеансов. Здесь MetaFrame XP не имеет способа делегировать полномочия, поэтому ограничения будут применяться для всех.

К привыкшим к терминологии Microsoft Terminal Services может странно звучать фраза "Вы имеет право на теневые сеансы, но не можете использовать дистанционное управление", потому что в RDP средства управления теневыми сеансами называют дистанционным управлением (remote control). Однако, в MetaFrame дистанционное управление является только одним из аспектов теневых сеансов. Если вы отключаете дистанционное управление, но разрешаете теневые сеансы, то в теневом сеансе можно только наблюдать за действиями пользователя, не вмешиваясь. Вы можете обуздать тех, кто попытается управлять пользовательскими сеансами, но тем самым ограничите возможности обучения и поддержки - вы всегда можете дойти до места, после которого вам надоест говорить "Нет, не эта кнопка, а та что слева. Да нет же, левее!".

Выбор второй опции, "Prohibit shadow connections without notification" ("Запретить теневые подключения без уведомления") означает, что вы не сможете управлять сеансом другого пользователя без его разрешения. Для службы поддержки или в целях обучения эта опция подходит лучше всего. Единственный случай, когда она будет мешать - если вы предполагаете, что кто-то использует сервер MetaFrame неподобающим образом и хотите посмотреть, чем там заняты пользователи.

Опция регистрации теневых сеансов - новая в MetaFrame XP. В журнале событий Win2K регистрируются попытки установления теневых сеансов, как успешные, так и неудачные..



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

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


Установка приложений на сервере MetaFrame XP


Установка приложений на сервере MetaFrame XP - одна из немногих вещей, которая работает одинаково независимо от того, используете вы MetaFrame или Win2K Terminal Services. По этой причине я собираюсь немного поговорить о терминальных серверах, поскольку эта информация относится не только к серверам MetaFrame.



Установка с дискеты или CD-ROM


Если вы читали , то знаете, что я не рекомендую установку с дискеты или CD-ROM. Одна из основых причин использования серверных вычислений состоит в том, чтобы вам как можно меньше приходилось касаться компьютеров клиентов. При установке клиентов с гибкого диска или CD-ROM вам придется возвращаться к управлению индивидуальными рабочими столами клиентов, особенно в случае установки с гибких дисков, поскольку ICA Client Creator требует трех дискет для установки клиента Win32. Единственная реальная причина для использования гибкого диска или CD-ROM состоит в том, что компьютер клиента может не иметь надежного сетевого соединения. Но даже в этом случае, как они собираются соединяться с сервером MetaFrame? Если клиентские компьютеры еще не находятся в их конечном местоположении, вы можете подключить их к сети и к серверу, содержащем инсталляцию клиента ICA.

Если вы вынуждены использовать локальные носители, процедура установки не отличается от процедуры установки через сеть, за исключением местоположения инсталляционных файлов. На CD-ROM они спрятаны несколько глубже, чем на сервере, и находятся в каталоге (для клиентов Win32) \icainst\en\ica32\disks\disk1. Папка \en содержит папки для всех поддерживаемых Клиентов ICA - выберите правильную папку для той ОС, на которую вы устанавливаете клиента. По завершении инсталляции вы должны будете перезапустить клиентский компьютер.



Установка уровня выпуска для сервера


Если вы устанавливаете FR1 для MetaFrame XP, то должны дать возможность на каждом сервере сделать доступными особенности FR1 . Для этого откройте раздел Servers в Citrix Management Console. На каждом сервере, на котором вы установили FR1, щелкните правой кнопкой мыши и выберите из контекстного меню Set Feature Release Level . После этого откроется диалоговое окно Set Feature Release Level со списком уровней выпуска (в нашем случае это None или Feature Release 1). Выберите соответствующую опцию и щелкните OK, не забывая о том, что вы будете должны иметь лицензию FR1 для каждого сервера, который его использует.

Все серверы в той же папке появятся на вкладке Contents раздела Servers в Citrix Management Console. Вы можете установить уровень выпуска для нескльких серверов одновременно, нажав Ctrl и щелкая по ним на вкладке Contents, а затем выбирав из контекстного меню Server, Set Feature Release Level. Этот процесс работает только на вкладке Contents.



Установка заплаты лицензирование для Win2K


Если вы используете Win2K Terminal Services, установите заплату на все ваши серверы лицензирования и терминальные серверы. Эта заплата решает две проблемы с лицензированием терминального сервера Windows. Во-первых, после установки этой заплаты клиенты получат лицензию только после успешной регистрации на терминальном сервере, а не после установления соединения и появления экрана регистрации в домене. Во-вторых, заплата позволит неиспользованным лицензиям через некоторое время вернуться в общий пул доступных лицензий. Обратите внимание, что эти изменения касаются только тех лицензий, которые выпущены после применения заплаты.

Если до этого вы не слишком задумывались о лицензировании терминального сервера Windows, то можете не понять, почему эта заплата так важна. Исторически лицензирование терминального сервера в Win2K в режиме сервера приложений работало так: при обращении к терминальному серверу с клиентского устройства, терминальный сервер проверял, имеет ли это устройство лицензию TSCAL, разрешающую подключение к терминальному серверу. Если лицензия TSCAL есть, клиент входит в систему. Если нет, то терминальный сервер обращается к серверу лицензирования и назначает TSCAL этому клиентскому устройству. Эта лицензия TSCAL навсегда сохраняется на жестком диске клиента. Сервер лицензирования ассоциирует эту TSCAL с клиентом, удаляет ее из пула доступных лицензий и перемещает ее в пул выданных лицензий. Пока все идет хорошо.

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



Включение аудита в Win2K


Auditlog зависит от Security log, видимого в Win2K Event Viewer. Поэтому прежде чем вы можете использовать auditlog, вы должны разрешить аудит Win2K, который управляется через групповую политику. Для разрешения аудита для OU серверов MetaFrame, в Directory Users and Computers щелкните правой кнопкой мыши OU, выберите из контекстного меню Properties, выбирите вкладку Group Policy и добавьте новый GPO с именем Auditing, как показано на рисунке.

Теперь, когда у вас есть GPO, вам следует добавить политику. Щелкните Edit для открытия окна редактора политик и найдите раздел Auditing.

Если вы дважды щелкните на политике для определения ее настроек, то откроется окно:

Хотя обычно не используют аудит успешных подключений, это поможет отслеживать пользовательские сеансы. Установите оба флажка Success и Failure и щелкните OK, выйдите из редактора политик и обновите политики, примененные к OU.

Если вы не используете домен Win2K, вы все равно можете включить аудит серверов. В панели управления откройте апплет Administrative Tools, откройте Local Computer Policy и найдите в разделе Local Policies политику Audit Policy:

Теперь аудит настроен и вы можете использовать утилиту auditlog. Мы начнем с получения полного списка всей активности входа на сервере MetaFrame, введя команду auditlog без параметров: auditlog

DOMAIN\USERNAME EVENT TIME REDROOM\Administrator Logon OK 4/8/2002 12:43 REDROOM\Scott Logon OK 4/8/2002 12:41 REDROOM\Bill Logon Fail 4/8/2002 12:41 Reason: Unknown user name or bad password REDROOM\Administrator Logoff 4/8/2002 12:40 REDROOM\Administrator Logon OK 4/8/2002 12:38 REDROOM\ChristaA Logon OK 4/8/2002 12:37 REDROOM\ChristaA Logoff 3/29/2002 17:56 REDROOM\ChristaA Logon OK 3/29/2002 17:56 REDROOM\Administrator Logoff 3/29/2002 17:48 REDROOM\Administrator Logon OK 3/29/2002 17:47 REDROOM\ChristaA Logoff 3/27/2002 20:54 REDROOM\ChristaA Logon OK 3/27/2002 20:54

Как видно, запуск auditlog без параметров дает вывод всех подключений и разъединений от сервера MetaFrame. (Я использую термин "разъединения" намеренно; в этом режиме auditlog не различает между выходами из системы и разъединением - оба показываются здесь как выходы из системы.). Для небольшого числа записей этот вывод приемлим, но месяцы аудита на сильно используемом сервере MetaFrame привели бы к созданию слишком большого файла, который сложно быстро просмотреть, да и информация организована не очень хорошо, чтобы прочесть много записей. Утилита имеет несколько опций, которые вы можете использовать для фильтрации или расширения записей:

Опция Описание
/AFTER:mm/dd/yy
< Сообщения об активности только после указанной даты. /ALL Работает подобно /AFTER, но урезает отчет, включая активность до указанной даты. /CLEAR:filename Очищает журнал событий и сохраняет старый журнал в файл с указанным именем. /DETAIL Обеспечивает подробный отчет о всей активности (не используется совместно с /TIME). Использует для ввода файл с укаазнным именем. /FAIL Сообщения только о неудачных входах в систему и причине неудачи. /TIME Разбивает отчет по пользователям, указывая время входа и выхода, а также суммарное время, которое каждый пользователь провел на сервере MetaFrame (не используется совместно с /FAIL или /DETAIL).. /WRITE:filename Сохраняет вывод в текстовый файл с указанным именем. Можно указывать имена UNC и отображенный диски.
Активность входа в систему/выхода из системы и типы соединений для всех учетных записей (не используется совместно с /FAIL).
/BEFORE:mm/dd/yy
/EVENTLOG:filename
session Судя по смыслу, позволяет сделать отчет по сеансам, но я не нашел идентификатор или имя сеанса, которые бы работали с утилитой. Ни session ID, ни имя сеанса не дали никакого вывода.
username Имя пользователя, для которого следует получить отчет. Отчет будет включать все сеансы указанного пользователя. Работает как для успешных, так и неудачных попыток входа.
Вы можете комбинировать большинство опций. Например, для получения отчета о времени работы некоторого пользователя введите команду

auditlog /time username

Расширение информации аудита

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

Опция /all заставляет перечислять все соединения с сервером MetaFrame, включая непользовательские, например, от NT AUTHORITY. События NT Authority\Anonymous Logon вглядят так, словно кто-то пытался прорваться на ваш сервер, но это всего лишь фиксация успешных входов (Event ID 540 ) и выходов (Event ID 538). Опция /all также перечисляет типы подключений и разъединений, поэтому вы можете использовать эту опцию для сбора детальной информации о том, как учетные записи соединяются и разъединяются от сервера MetaFrame.

Честно говоря, указание /all является излишним. Что вас в действительности интересует? Сколько времени пользователи проводят на сервере MetaFrame? Для этого используйте опцию /time. Например, команда auditlog /time



выдаст отчет, напоминающий следующий: User: ChristaA Logon: 3/27/2002 20:54 Logoff: 3/27/2002 20:54 Total: 00:00:02 Logon: 3/29/2002 17:56 Logoff: 3/29/2002 17:56 Total: 00:00:00 Logon: 4/8/2002 12:37 CurTm: 4/9/2002 10:20 Total: 21:42:39 Logon: 4/8/2002 14:37 CurTm: 4/9/2002 10:20 Total: 19:42:34 Total logon time: 41:25:15

User: Administrator Logon: 3/29/2002 17:47 Logoff: 3/29/2002 17:48 Total: 00:01:08 Logon: 4/8/2002 12:38 Logoff: 4/8/2002 12:40 Total: 00:01:16 Logon: 4/8/2002 12:43 Logoff: 4/8/2002 12:44 Total: 00:01:17 Logon: 4/8/2002 14:33 Logoff: 4/8/2002 14:35 Total: 00:02:04 Total logon time: 00:05:45

User: Scott Logon: 4/8/2002 12:41 Logoff: 4/8/2002 12:44 Total: 00:03:19 Total logon time: 00:03:19

/time прекрасно работает с именами пользователей, так что вы можете собрать информацию о времени для только определенных имен пользователей. Порядок не имеет значение - команда auditlog /time username

дает тот же результат, что и команда auditlog username /time


Вкратце о масштабировании сервера


Резюмируя вышесказанное, сделаем быстрый обзор нашего сервера:

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

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

Диски - используйте диски SCSI, а не IDE. Если вы используете RAID (особенно RAID 5), используете аппаратный RAID с собственным встроенным процессором, не программный RAID в Win2K.

Сеть - используйте высокоскоростные сетевые карты. Хотя траффик ICA не использует большую полосу пропускания, но чем больше возможностей ICA вы используете (отображение принтеров, высокое разрешение, отображение дисков), тем больше требуется полосы пропускания. Рассмотрите вопрос установки отдельной карты только для обслуживания запросов ICA.

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

Число серверов - лучше использовать много небольших серверов, чем малое число больших серверов. Это позволит уменьшить влияние отказа одного из серверов и даст больше емкости для сети, диска и памяти. Подробнее об этом см. ниже



Выбор файловой системы


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

Во-первых, NTFS предназначена для защиты системы (т.е. позволяет устанавливать права доступа к локальным файлам), чего не позволяют FAT и FAT32. Сервер MetaFrame отличается от других серверов Win2K тем, что на нем работают разные пользователи. При таком доступе вам необходимо думать о безопасности сервера и обеспечить сервер файловой системой, поддерживающей разрешения для локальных файлов, а не только права доступа к файлам на общедоступных дисках, которые поддерживают FAT и FAT32 .

Во вторых, только тома NTFS поддерживают шифрование файлов в Win2K, квотирование дискового пространства, монтирование томов и сжатие данных. Если вы хотите использовать любую из этих особенностей в Win2K, то вам необходима NTFS.

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

Наконец, NTFS намного более эффективна чем FAT или FATS2 на больших томах. Вы можете использовать FAT только на томах не более 4GB, что означает деление современных дисков на большое количество разделов, причем с большим размером кластера. FAT32 в этом отношении лучше, чем FAT16, но все равно испытывает недостаток в других особенностях, которые делают NTFS ценной.

Если вы боитесь использовать NTFS на системном разделе потому, что не сможете прочитать его при загрузки с дискеты, не волнуйтесь. Win2K содержит инструмент, называмый Консолью Восстановления ( Recovery Console ), которую (после ввода пароля администратора) вы можете использовать для обращения к локальным томам, даже к томам NTFS. Консоль Восстановления также содержит некоторый набор утилит, которые вы можете использовать для ремонта поврежденного сервера.



Выбор приложений для MetaFrame


Не все приложения одинаково хорошо работают в среде терминального сервера.

Terminal Services работает лучше с приложениями Win32. Причина этого лежит в способе, которым Win2K выполняет приложения Win32 и Win16. Будучи 32-разрядной операционной системой, Windows 2000 не может самостоятельно выполнять приложения Win16. Вместо этого она создает виртуальную машину DOS (VDM), которая является 32-разрядным приложением и выполняет приложения Win16 внутри контекста этого VDM. Если приложения Win32, выполняющиеся обычно на Win2K, могут совместно использовать между собой файлы и структуры, то приложения, выполняющиеся в пределах VDM, не могут "видеть" друг друга для совместного использования файлов. Практический результат этого поведения, совместно с тем фактом, что трансляция 16-разрядных запросов к ОС в 32-разрядные запросы занимает некоторое время, означает, что приложения Win16 выполняются хуже, чем приложения Win32. Они будут работать (это хорошая новость), но будут использовать больше памяти и процессора, чем приложения Win32. Согласно Citrix, приложения Win16 на 20% больше нагружают процессор и на 25% больше требуют памяти..

Приложения DOS представляют другой вид проблемы. Фактически, они представляют два вида проблем. Во-первых, приложения DOS были написаны для однопользовательской однозадачной среды. Чтобы быть настолько чувствительными, насколько возможно, приложения DOS постоянно опрашивают буфер клавиатуры, ища предназначенный для них ввод. Это поведение означает, что приложение DOS, даже ничего не делая, расходует поразительное количество процессорного времени. Это потребление приемлемо в однопользовательской среде, но совершенно непримелимо, когда процессорное время должно быть разделено с дюжиной человек. Это потребление является проблемой не во всех приложениях DOS, но прежде чем вы развернете их на сервере MetaFrame, я строго рекомендую сначала проверить их на отдельном компьютере с запущенным System Monitor, чтобы увидеть, сколько процессорного времени они требуют.

WTS включает утилиту DOSKBD, которая изменяет опрос клавиатуры программы, чтобы улучшить производительность системы при выполнении приограмм DOS. По существу, DOSKBD помещает программу в "сон", если она опрашивает буфер клавиатуры слишком часто. Win32K не включают DOSKBD, а версия WTS не работает с Win2K Terminal Services, но вы можете использовать другой инструмент для настройки приложений DOS - TAME ()

Кроме того, приложения DOS с графическим интерфейсом для отображения используют точечные рисунки (bitmaps), а не графику Windows. Точечные рисунки требуют больше времени для загрузки клиенту, чем команды GDI, от этого страдает отклик сеанса. Приложения, отображающие точечные рисунки в среде терминального сервера, в лучшем случае ведут себя судорожно, и большей частью полностью непригодны, особенно на медленных соединениях. Хорошей новостью является то, что вам не стоит беспокоиться о людях, пробующих запустить на сервере MetaFrame игру Diablo II. Даже если бы вам удалось ее запустить, люди бы отбросили ее с отвращением еще до того, как первый экран закончит сползать вниз на их дисплее.

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

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

Другие проблемы, которые затронут приложение, функционирующее в среде MetaFrame, могут применяться к любому классу приложений, будь то Win32, Win16 или DOS. Некоторые из этих проблем могут быть выявлены, но иногда вам либо придется к изготовителю приложения за справкой, либо признать поражение и запускать приложение локально. Вероятные виновники включают:


Приложения, которые идентифицируют пользователя адресом IP или именем компьютера, а не именем пользователя. Адрес IP или имя компьютера, которое будет видеть приложение, выполняющееся на сервере MetaFrame - очевидно не клиента, а сервера MetaFrame, на котором это приложение выполняется.

Приложения, которые сохраняют пользовательские параметры настройки в HKEY_LOCAL_MACHINE и предлагают эти настройки каждому пользователю сервера MetaFrame. Хорошие приложения хранят свои параметры настройки в HKEY_CURRENT_USER.

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

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

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

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


Выбор типа базы данных


При установке MetaFrame XP вы должны выбрать тип базы данных, используемой для хранилища данных для вашей фермы серверов. Вы имеете три варианта: Microsoft Access, Microsoft SQL Server 7.0 SP2 или SQL Server 2000, а также Oracle - особенно OracleSi, (рекомендуется) версии 8.1.6; Oracle 7 (версия 7.3.4) или Oracle 8 (версия 8.0.6).

Хотя хранилище данных - это база данных ODBC, Citrix поддерживает не любые СУБД, поддерживающие ODBC, а только вышеперечисленные.



Выполнение миграции


Для миграции сервера MetaFrame 1.8 на MetaFrame XP, выполните следующие действия. Если вы использовали Installation Management Services Job для развертывания пакетов под MetaFrame 1.8 и хотите мигрировать эти пакеты, используйте утилиту im_app_upgrd.exe (в каталоге \support\debug\i386 на CD-ROM Installation Manager) до того, как запустите установку MetaFrame XP. Если для хранилища данных фермы вы используете SQL Server или Oracle, настройте сервер хранилища данных. Идентифицируйте текущий главный броузер ICA в ферме MetaFrame 1.8. Установите MetaFrame XP на другой сервер, отличный от главного браузера ICA. При запуске сервера MetaFrame XP в смешанном режиме, он выигрывает выборы главного браузера. Однако, если останавливаете главный броузер для обновления, то в любом случае инициируете выборы среди оставшихся серверов MetaFrame 1.8.

Родной режим Смешанный режим

Службы Program Neighborhood и ICA Browser по умолчанию заблокированы на всех серверах фермы.

Службы Program Neighborhood и ICA Browser по умолчанию разрешены на всех серверах фермы. Серверы MetaFrame XP всегда будут выигрывать выборы ICA Browser.

Серверы MetaFrame XP не используют информацию Program Neighborhood или ICA Browser совместно с серверами MetaFrame 1.8.

Серверы MetaFrame XP посылают информацию Program Neighborhood на серверы MetaFrame 1.8, которые имеют одинаковое имя фермы и находятся в одной подсети.

Серверы MetaFrame XP не посылают информацию Program Neighborhood всем серверам в ферме, а только на коллектор данных. Серверы MetaFrame XP совместно не используют динамическую информацию через службу ICA Browser. Вместо этого служба IMA уведомляет коллекторы о данных динамических изменениях.

Каждый сервер, выполняющий службу Program Neighborhood, поддерживает связь с каждым другим сервером с тем же именем фермы, чтобы совместно использовать данные Program Neighborhood. Серверы MetaFrame XP с тем же именем фермы, что и серверы MetaFrame 1.8, видны в Клиенте ICA как единый набор приложений.
Серверы связываются через службу IMA, а не UDP, и не могут "слышать" рассылки UDP.

Серверы MetaFrame XP отвечают на широковещательные рассылки UDP и Клиента ICA, а также генерируют трафик IMA. Лицензии на подключения MetaFrame XP не объединяются с серверами MetaFrame 1.8. Объединение лицензии доступно между серверами MetaFrame XP и MetaFrame 1 .8 в пределах одной подсети. Опубликованные приложения не могут использовать распределдение нагрузки среди серверов MetaFrame XP и MetaFrame 1.8.

Опубликованные приложения в том же самом прикладном наборе могут использовать распределение нагрузки среди серверов MetaFrame XP и MetaFrame 1.8, если они входят в одну ферму. Однако, MetaFrame XP имеет правила распределения нагрузки, отсутствующие в MetaFrame 1.8, и если вы опубликовали приложение с помощью Citrix Management Console в MetaFrame XP, то не можете публиковать приложение с тем же самым именем, используя Published Application Manager в MetaFrame 1.8 - приложение уже будет существовать в хранилище данных.

Вы можете использовать утилиту комадной строки query server для обнаружения сервера Citrix, выполняющий роль главного броузера. Для такого сервера рядом с его адресом будет стоять буква М. Еще раз, избегайте обновлять этот сервер первым при миграции на MetaFrame XP.

Server Transport Conns Free Total Network Address
-------------------- --------- ----------------- --------------------
TERMSERV* TCP/IP 0 0 0 10.0.0.7 M

Устанавливайте MetaFrame XP во время, когда никто не использет ферму серверов, чтобы последующие выборы не прервали ничью работу. При инсталляции создайте новую ферму IMA с тем же именем, что и существующая ферма MetaFrame 1.8, и, когда вам предложат, введите серийные номера и код продукта для ваших лицензий миграции. Этот сервер станет новым главным браузером ICA.

Выберите использовать сервер в смешанном режиме, затем завершите инсталляцию, как описано в этой главе. Когда будет предложено, выберите миграцию приложений. Убедитесь, что вы можете соединиться с сервером MetaFrame XP и проверьте журнал миграции (%systemroot%\System32; имя файла отображается во время установки), чтобы удостовериться, что все приложения были успешно перенесены. Установите MetaFrame XP на остальных серверах MetaFrame 1.8, выбирая присоединение их к существующей ферме.

После миграции всех серверов MetaFrame 1.8 на MetaFrame XP, измените режим работы в свойствах фермы в Citrix Management Console. Уберите флажок MetaFrame Interoperability на вкладке Interoperability. Это изменение останавливает совместное использование лицензий со шлюзами лицензий.


Выполнение подготовленной инсталляции


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

1. Если вы собираетесь устанавливать сервер с прямым доступом к хранилищу данных на базе SQL Server или Oracle, используйте ODBC Data Source Administrator для настройки файла MF20.DSN для соединения с сервером базы данных. Альтернативно вы можете создать этот файл в Notepad, используя следующий формат, и сохранить его под соответствующим именем:

[ODBC] DRIVER=SQL

ServerUID=SQL_USERNAME DATABASE=NAME_OF_DATABASE WSID=NAME_OF_MF_SERVER APP=Citrix IMA SERVER=NAME_OF_SQL_SERVER

2. Скопируйте содержимое CD-ROM с инсталляцией MetaFrame XP на сервер (не на сервер MetaFrame, а на один из серверов, включенных в сеть для копирования файлов). Предоставьте совместный сетевой доступ к папке с установочными файлами..

На CD-ROM находятся два файла сценария: один для установки MetaFrame XP на терминальном сервере WTS, а второй - для установки на терминальном сервере Win2K . Установка для WTS находится в каталоге \tse\mf, а установка для Win2K находится в w2k\mf.

3. Отредактируйте содержимое файла unattend.txt (файла ответа) для учета ваших потребностей, и разместите его на сетевом ресурсе.

4. Соединитесь с соответствующим сетевым ресурсом, и введите команду: setup /u:unattend.txt

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

Теперь разберемся с форматом файла сценария.



Windows Terminal Services


Давайте сначала обсудим лицензирование Windows Terminal Services. Для использования любого терминального сервера Windows, независимо от протокола отображения, используемого для соединения с этим сервером, компьютеру необходимо две лицензии - Лицензия на клиента (Client Access License, CAL) и Лицензия на доступ к терминальным службам (Terminal Services Client Access Licenses,TSCAL). Это очень важный момент. Многие думают, что использование MetaFrame означает, что вы должны заплатить только за лицензии MetaFrame, но это не совсем так. (Это неверное представление будет продолжаться недолго; терминальный сервер Windows через некоторое время прекратит принимать соединения , если вы не установите сервер лицензирования и лицензии). Кроме того, для терминальных служб Windows лицензирование осуществлятся "per-seat" (по месту), а не по подключениям или пользователям. Т.е. на каждой машине, которая будет соединяться с сервером MetaFrame, необходимо наличие отдельной TSCAL. Другие модели лицензирования не применимы для доступа к терминальному серверу Windows.

Лицензии TSCAL предназначены для входа в систему под именованными учетными записями пользователей в домене и выпускаются "на место" (per-seat). TSCAL продаются в розницу пакетами по 5 и 20 штук. Для Win2K розничная стоимость пакета из 5 лицензий составляет 749$, а обновление с WTS - 349$. Способ приобретения TSCAL определяет цену, которую вы за них заплатите. Если вы покупаете розничную лицензию, то покупаете Microsoft License Pack (MLP). MLP для TSCAL в Win2K включает в себя код лицензии и алфавитно-цифровой код из 25 символов, определяющий тип лицензии и количество (поэтому вы не сможете прикинуться, что у вас 20 лицензий, хотя вы купили всего 5). Вы можете установить MLP только один раз. Те, кто получает свои приложения через Microsoft Open License, могут купить заданное пользователем количество лицензий, после чего Microsoft выдаст Open License Authorization (разрешение на использование) и предоставит номера лицензий. Вы можете устанавливать такие лицензии любое число раз. Для больших организаций удобно соглашение Enterprise Agreement; оно аналогично предыдущему за исключением того, что пользователь вместо номеров Open License предоставляет свой номер Enrollment Agreement (регистрационный номер).

Win2K Terminal Services имеют дополнительный тип лицензии: Лицензия на соединение через Internet (Internet Connection License, ICL). Не беспокойтесь по поводу ICL. Эти лицензии, доступные только избранным клиентам Microsoft, разрешают до 200 одновременных анонимных соединений через Internet, не давая терминальному серверу использовать TSCAL. Поскольку эти лицензии могут испольовать только анонимные учетные записи при соединении с терминальным сервером через Internet, они бесполезны, если только вы не собираетесь предоставлять доступ к приложениям через Internet. Таким образом, я сконцентрируюсь здесь только на TSCAL.

Некоторые утверждают, что компьютеры Win2K Professional не нуждаются в TSCAL или идут с собственным TSCAL. Это не совсем так. Win2K Pro способен вытягивать лицензии из неограниченного пула на сервере лицензий Win2K Terminal Services, поэтому любая машина Win2K Pro, подключающаяся к терминалам Win2K, не расходует лицензии из установленных пакетов лицензий. Однако, вам все равно необходим сервер лицензий для использования Win2K TSCAL. Без сервера лицензирования, с помощью которого получаются неограниченные лицензии, клиенты Win2K Pro будут использовать временные лицензии, срок действия которых в конечном счете истечет.

Независимо от того, могут ли люди, соединяющиеся с терминальным сервером Win2K, использовать встроенные лицензии, или должны извлекать их из обычного пула лицензий, вы должны установить сервер лицензирования терминальных служб (Terminal Server Licensing). Выбор машины для сервера лицензий будет зависеть от конфигурации вашей сети. Если вы используете домены Win2K, сервер лицензии должен находиться на контроллере домена (DC), чтобы сервер лицензирования мог связаться с другими DC. Если ваша сеть организована как рабочая группа или домен NT, сервер лицензии может находиться на сервере-члене. Главное, в домене Win2K сервер лицензирования никогда не должен быть терминальным сервером, потому что и DC, и Terminal Services потребляют слишком много ресурсов, чтобы эффективно выполнять обе задачи одновременно. Однако, в рабочей группе или домене NT терминальный сервер может быть одновременно сервером лицензирования..

Что происходит, если вы не установили сервер лицензирования? Будет ли это препятствовать использованию терминального сервера? Не вполне. В этом случае будут выдаваться временные лицензии. Если клиентская машина без TSCAL пытается соединяться с терминальным сервером, а сервер лицензирования недоступен или не имеет установленных пакетов лицензий, терминальный сервер выдаст этой клиентской машине временную лицензию. Эта временная лицензия истечет через 90 дней, и машина больше не сможет соединиться с терминальным сервером.



Yes


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

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

[Data Store Configuration] CreateFarm=Yes DirectConnect=No ZoneName=

Действие CreateFarm DirectConnect Другие необходимые параметры настройки
Создание фермы с использованием Access Yes

No

[Farm Settings]

Создание фермы с использованием Oracle или SQL Server

Yes

Yes

[Direct Connect Settings]

[Farm Settings]

Присоединение к ферме, использующей Oracle или SQL Server для хранилища данных и прямое соединение No

Yes

[Direct Connect Settings]

Присеодинение к ферме, использующей Access

No

No

[Indirect Connect Settings] Присоединение к ферме, использующей Oracle или SQL Server для хранилища данных и косвенное соединение

No

No

[Indirect Connect Settings]

Вы должны будете работать только с разделом Direct Connect Settings для серверов с прямым подключением к хранилищу данных. Иначе установка будет игнорировать значения в этом разделе:

[Direct Connect Settings] DSNFilePath= UserName= Password=

Ключ DSNFilePath - это каталог, в котором вы сохранили файл .DSN, по умолчанию это %system root%\Program Files\Common Files\ODBC\Data Sources. Для ключа UserName укажите либо идентификатор входа базу данных, либо, при использовании аутентификации NT, идентификатор в виде domainname\username. Пароль очевиден, это единственная вещь, которая говорит сама за себя. Но имейте ввиду, что он не зашифрован и не отображается в виде звездочек. Это просто предостережение.


Пароль, который вы указываете в этом разделе, сохраняется открытым текстом. Защитите файл unattend.txt, как и скрипты инсталляции Win2K - они содержат чувствительную информацию.

Если вы используете опции Indirect Connect Settings, заполните следующий раздел. Если значения в разделе [Data Store Configuration] не относятся к косвенным соединениям, установка будет игнорировать значения в этом разделе: [Indirect Connect Settings] IndirectServerName= IndirectServerPort=2512 UserName= Password=

Если читали про ручную установку, то вам вероятно понятен этот раздел. Ключ IndirectServerName относится к имени сервера, который имеет прямое соединение с хранилищем данных. IndirectServerPort - заданное по умолчанию значение порта; редактируйте это значение только в том случае, если вы редактировали системный реестр сервера прямого подключения с целью указать новый порт, как объяснялось ранее в этой главе. Имя пользователя и пароль, которые здесь просят - это имя и пароль пользователя, уполномоченного администрировать ферму серверов. Как мы уже обсуждали, принадлежность к группе Administrators не разрешает автоматически этот уровень доступа. Вы должны указать домен учетной записи пользователя в значение UserName, используя формат domainname\username.

Раздел Farm Settings применяется только если вы создаете новую ферму на базе Access. В противном случае установка игнорирует этот раздел: [Farm Settings] FarmName=Farm InteroperabilityMode=No FarmAdministratorUsername=Administrator FarmAdministratorDomain=

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

Следующим шагом является настройка ICA для использования с сетевыми протоколами. Проставляйте значения Yes или No для нужных ключей. Если протокол еще не установлен на сервере MetaFrame, настройка работы ICA с таким протоклом работать не будет - Вы должны будете использовать Citrix Management Console для добавления этой поддержки после добавления протокола. Вы должны включить поддержку ICA хотя бы для одного сетевого протокола: [ICA Network Protocols] TCP=Yes IPX=Yes SPX=No NETBIOS=Yes



Автоматический инсталляционный сценарий пропускает TAPI и переходит сразу к правам на теневые сеансы. Я описал значения этих параметров настройки при прохождении через ручную инсталляцию. Здесь важным момментом является то, что если вы установите значение AllowShadowing = No, то программа установки проигнорирует остальные ключи. Учтите, вы всегда можете урезать права shadowing после установки, но не сможете их расширить, если изначально задали ограничения. Если решили все же применить ограничения, сделайте их одинаковыми для всей фермы, чтобы не столкнуться впоследствии со странными проблемами: [Shadowing Restrictions] AllowShadowing=Yes ProhibitRemoteControl=No ProhibitNotificationOff=No ProhibitLoggingOff=No

Теперь настало время для параметров настройки переназначения дисков. MetaFrame автоматически переназначает отображенные диски клиента (чтобы они не конфликтовали с именами дисков сервера), поэтому эти параметры настройки относятся только к переназначению дисков сервера. Значение NewDriveLetter используется только в том случае, если значение ReassignDriveLetters = Yes, и представляет собой начальное имя диска для переназначения (с последующим переназначением N, O, P и т.д.): [Drive Reassignment] ReassignDriveLetters=No NewDriveLetter=M

Следующий раздел позволяет вам определять, как вы хотите добавить поддержку XML в Program Neighborhood (который требуется для использования NFuse при публикации приложений). Как мы обсуждали ранее, вы можете совместно использовать заданный по умолчанию порт (80) с IIS, и при изменении этого порта необходима дополнительная настройка всех клиентов ICA, которые будут использовать NFuse. Поэтому лучше всего оставить эту установку в покое: [Citrix XML Service] ExtendIIS=No DedicatedPortNumber=80

Значение DedicatedPortNumber используется в том случае, если ExtendllS = No.

Если у вас установлен IIS 4.0 или более поздний (устанавливается по умолчанию вместе с Win2K), программа установки будет читать раздел NFuse для определения, нужно ли устанавливать NFuse. Если значение SetDefaultPage = Yes, то программа установки создаст страницу по умолчанию /citrix/metaframe/index.htm - вы не можете изменить здесь это значение: [NFuse] InstallNFuse=Yes SetDefaultPage=Yes



Раздел обновлений клиентов ICA позволяет вам устанавливать типичную инсталляцию клиентов ICA и заполнять базу данных обновлений (Client Update Database): [Update ICA Clients] UpdateСlients=No ClientPath=

Если вы прошли через ручную инсталляцию, то знаете, что мы почти закончили. Теперь вы можете указать серийные номера лицензий, 25-значные строки, указанные на внутренней части конверта CD-ROM. Так же, как вы могли использовать кнопку Add для установки нескольких пакетов лицензий для фермы серверов в процессе ручной инсталляции, Вы можете указать здесь любое количество кодов лицензий, используя следующий формат: [License Serial Numbers] XXXXX-XXXXX-XXXXX-XXXXX-XXXXX= YYYYY-YYYYY-YYYYY-YYYYY-YYYYY=

Если вы решили указать номера лицензий, программа установки может выяснить для вас код продукта. Серверу понадобится код продукта прежде, чем он сможет принимать соединения, поэтому сэкономьте немного времени на запуск Citrix Management Console и укажите его здесь: [MetaFrame Product Code] ProductCode=

Наконец, вы можете указать, должна ли программа установки автоматически перезагрузить сервер по ее завершении (это необходимо сделать, чтобы заставить заработать службу IMA) или подождать. По умолчанию программа установки перезагружает сервер; укажите значение No, если вам нужно сделать на сервере что-то еще перед его перезагрузкой: [Options] RebootOnFinish=Yes

Последняя опция применяется, только если вы обновляете предыдущую версию MetaFrame до MetaFrame XP. Если вы оставите значение Yes, программа установки проверит установленные приложения и поробует их мигрировать. В противном случае вы должны будете опубликовать приложения в Citrix Management Console: [Upgrade Settings] MigrateApplications=Yes

Объедините все эти части в указанном порядке в одное целое, сохраните в файл под именем unattend.txt, и вы получите сценарий автоматической инсталляции MetaFrame.


Защита серверов MetaFrame


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

Я собираюсь обсуждать использование групповых политик. Хотя я постараюсь дать обобщенную информацию для тех, кто не использовал групповые политики, они являются слишком сложной темой, чтобы уместиться на нескольких страницах. Дополнительную информацию вы можете найти в книге The Definitive Guide to Windows 2000 Group Policy, которая находится на сайте , а также Windows 2000: Group Policy, Profiles, and IntelliMirror (Sybex).



Завершение Приложений


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

Чтобы убить отдельное приложение из GUI, вернитесь на вкладку Processes. Найдите нужный процесс, щелкните правой кнопкой мыши и выберите Terminate. Citrix Management Console спросит, уверены ли вы, что хотите завершить выбранный процесс. Предполагая, что вы уверены, нажмите OK. Процесс исчезнет из сеанса пользователя. Если это было опубликованное приложение, сеанс завершится. Если это был процесс, запущенный с рабочего стола, то завершится только этот процесс.

Вы можете также завершать приложения с командной строки, используя команду tskill, но этот процесс более уязвим для возможной ошибки. Вы должны быть уверены, что выбрали правильный процесс перед выполнением этой команды. Синтаксис tskill следующий: tskill processid | processname [/SERVER:servername] [/ID:sessionid | /a] [/v]

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

Для завершения всех экземпляров FreeCell на текущем сервере, введите tskill freecell.exe /a

Чтобы убить отдельный экземпляр FreeCell, выясните идентификатор процесса, запустив query process или query user, а затем введите команду с указанием идентификатора процесса: tskill 1875

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

Если для query process необходимо указывать расширение, то tskill, наоборот, не будет работать, если вы укажите расширение. Поэтому вы должны использовать следующую последовательность команд:


query process tsquake.exe tskill tsquake

Управление пользовательскими сеансами

Скотт довольно убедительно утверждал, что он не собирался запускать пасьянс после обеда, но после того, как его запустил, не мог понять, как его закрыть. Перед тем, как закрыть FreeCell, возможно, стоит взять управление чужим сеансом на себя - это называется shadowing - и помочь Скотту закрыть FreeCell. Теневые сеансы позволяют вам получить тот же уровень управления, какой вы бы получили, зарегистрировавшись под тем пользователем. Хотя теоретически можно включить теневой сеанс как из Citrix Management Console, так и утилитой командной строки cshadow, я нашел GUI более надежным. Откройте вкладку Users, щелкните правой кнопкой мыши на имени пользователя и выберите из меню Shadow. Далее выберите комбинацию клавиш для включения теневого сеанса. Если пользователь должен дать разрешение на контроль его сеанса, вы увидите часики, пока пользователь не разрешит теневой сеанс.
Когда пользователь увидит сообщение о запросе теневого сеанса и нажимает ОК для разрешения, вы увидите рабочий стол того пользователя точно в таком виде, в каком он виден пользователю, но вы оба видите диалог внутри сеанса, который говорит, что вы находитесь в теневом сеансе и позволяет легко прекратить теневой сеанс.

Что будет, если пользователь откажет в теневом сеансе или не получит ваш запрос в течении минуты-двух? Если он отказал, то вы получите ошибку с кодом 7044 - запрос теневого сеанса отклонен. Я также видел код 2 (ресурс недоступен).

Теневой сеанс может быть создан только из сеанса ICA, но вы можете инициировать теневой сеанс из Citrix Management Console. Просто в этом случае у вас будет зарошено подтверждение.


Зоны, Хранилища данных и Коллекторы Данных


Если хранилище данных принадлежит ферме, целиком расположенной в единой высокоскоростной сети, то модифицирование серверов-членов в этой ферме не представляет больших проблем. Однако, MetaFrame XP спроектирован для поддержки ферм, которые могут распространяться на несколько зданий, городов и даже потенциально на несколько стран. Если ферма сильно рассредоточена, заполнение хранилища данных будет либо использовать большую полосу пропускания, либо хранилище данных будет содержать устаревшие данные (вероятно, оба варианта сразу). Чтобы поддерживать такие большие фермы, MetaFrame XP вводит понятие зон. Зоны являются физическими группировками серверов MetaFrame XP, каждая со своим собственным коллектором данных для сбора и распространения данных серверам-членам. Поскольку единственные компьютеры, совместно использующие информацию - это коллекторы данных, а они обмениваются информацией по протоколу TCP/IP, то становится возможным для нескольких серверов-членов иметь доступ к той же самой информации даже на относительно медленных соединениях. Вся информация, специфичная для зоны (например, используемые в настоящий момент приложения), совместно используется с остальной частью фермы посредством ее коллекторов данных. Вы должны делать резервную копию хранилища данных - если вы его потеряете, то потеряете всю информацию о всей ферме. Использование коллекторов данных межзональных коммуникаций делает географически распределенные фермы более практичными.

Ферма может иметь несколько зон, но всегда имеет минимум одну зону Когда вы устанавливаете MetaFrame, вам предлагается создать новую зону или присоединиться к существующей.

Обычно, зоны могут поддержать до 256 серверов-членов (хотя Citrix рекомендует, чтобы зона включала не более 100). Если ваша зона имеет более 256 серверов, вы можете изменить параметр в реестре на коллекторе данных: добавьте новый ключ HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\lMA\Runtime\MaxHostAddressCacheEntries, тип DWORD. Значение по умолчанию - 0x100 (256 десятичное). Вы можете его увеличить, но не больше 1-2, чем количество серверов, чтобы не тратить понапрасну ресурсы коллектора.