Глава 5: Конфигурирование Сервера MetaFrame

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

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

Если вы устанавливаете 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.

Активация и организация лицензий

Ферма сервера MetaFrame бесполезна без лицензий, так что давайте рассмотрим активацию лицензий и их назначение.

Активация Сервера

Как вы уже знаете из Главы 4, мы во время установки MetaFrame XP ввели номера лицензий для сервера и код продукта. Но мы пока не активировали их. Вы должны активировать сервер в течение 35 дней после установки MetaFrame, чтобы продолжить принимать соединения, поэтому давайте активируем первый сервер.

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

Если ваш сервер имеет оперативное соединение с Internet, активация лицензий сервера проста. Откройте Citrix Management Console (выберите Start, Programs, Citrix, Citrix Management Console). Вы увидите основное окно консоли. Введите учетные данные администратора Citrix и нажмите OK для входа в консоль.

После входа, щелкните в левой панели "Licenses", а в правой панели выберите "License Numbers".

Щелкните правой кнопкой мыши на выбранной лицензии и выберите из контектоного меню Activate. Появится диалог:

Щелкните кнопку Copy to Clipboard для копирования номера буфер обмена, и откройте в браузере сайт http://www.citrix.com/activate. Далее щелкните ссылку Citrix Activation System. Если вы уже зергистрированы в Citrix, введите ваше имя пользователя и пароль. Если вы новый пользователь, щелкните сслыку New User? и создайте новую учетную запись.

После входа вы увидите ссылку на Citrix Activation System. Щелкните ее. На следующей странице щелкните ссылку Activate Licenses. Введите ваш номер лицензии. Если вы скопировали его ранее в буфер обмена, вы можете просто нажать Ctrl+V для вставки номера в поле ввода. Щелкните Continue.

Введите информацию о реселлере и щелкните Continue или ссылку I can’t find my reseller. На экране появится список последних активированных лицензий и код активации. Введите этот код в Citrix Management Console (см. рисунок выше) и щелкните OK. Через пару секунд соедрджимое владки Licenses должно обновиться и показать, что лицензии активированы..

Вам также необходимо активировать лицензии на соединения ICA connection и лицензии FR1. Следуйте той же самой процедуре, предлагая мастеру активации разные номера лицензий.

Назначение лицензий серверу

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

  1. В разделе лицензий в Citrix Management Console выберите владку Connection и дважды щелкните на установленном пакете лицензий, чтобы открыть окно MetaFrame Connection Properties.

  2. Если вы щелкните New Assignment, вам будет выдан список доступных серверов фермы. Выберите сервер и щелкните Next для открытия окна License Assignement Wizard. Выберите в нем число лицензий, которое вы хотите назначить серверу, и щелкните Finish.

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

Если вы хотите увеличить или уменьшить номер лицензий, назначенных на сервер, выберите сервер и нажмите Change Assignment. В появившемся диалоговом окне вы можете увеличить или уменьшить число (в пределах общего количества доступных лицензий). Чтобы прекратить назначение лицензий на специфический сервер, выберите его и из спска и нажмите Drop Assignment. Информация на вкладке Connection в разделе лицензий Citrix Management Console отображает текущую информацию о назначении, включая номера назначенных и объединенных лицензий, также номера назначенных и объединенных лицензий, использующихся в данный момент.

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

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

Конфигурирование серверов и ферм MetaFrame

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

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

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

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

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

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

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

Опция Alternate caching method изменяет метод отображения пиксельных изображений (bitmaps). Обычно изображения в сеансах ICA строятся слева направо (а не сверху вниз). На высокоскоростных соединениях вы не заметите разницы, но при публикации насыщенных графикой приложений (попробуйте опубликовать игру) вы можете заметить процесс построения изображения. (RDP, кстати, строит изображения сверху вниз). Некоторые приложения, такие как Microsoft Internet Explorer (IE), получают преимущества от построения изображений слева направо. Если у вас нет серьезных причин менять эту настройку, оставьте ее включенной.

Опция Maximum memory to use for each session’s graphics определяет размер буфера, разрешенного для каждого сеанса. Возможные значения - от 150KB дo 7500KB. Размер буфера зависит от поддерживаемого разрешения и глубины цвета. Если вы используете сеансы в бесшовном (seamless) режиме, вам особенно следует учитывать разрешение экрана клиента. Бесшовный экран на компьютере, использующем разрешение 1600 х 1200, будет требовать больше памяти, чем бесшовный сеанс на компьютере 1024 х 768.

Для расчета количества памяти, требуемой для определенного разрешения и разрядности цвета, умножьте число пикселов в разрешении на число бит, необходимых для отображения каждого бита. Разрешение 1024 х 768 с 24-разрядным цветом требует 2304KB = ((1024 х 768) х 24) + 8 + 1024. Как вы можете видеть, вы не столкнетесь с серьезными проблемами, если не будете использовать очень высокие разрешения.

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

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

Следует ли действительно беспокоиться о параметрах настройки разрешения экрана ICA? Скорее всего, нет. Тех людей, которым эти параметры настройки важны, можно разделить на два класса: те, для кого важным параметром является полоса пропускания, и те, которые поддерживают высокопроизводительные рабочие станции, котрые при выполнении бесшовных сеансов могут использовать огромные объемы памяти для поддержки высокоцветных сеансов с разрешением 1600 х 1200. Используйте вышеприведенную формулу, чтобы выяснить, имеете ли вы достаточные размер буфера и полосу пропускания, чтобы поддерживать желаемые глубину цвета и разрешение. Наконец, если вы уверены, что не можете поддерживать большую глубину цвета, не трогайте эти параметры настройки, а только уменьшите глубину цвета для сеансов ICA. Некоторые приложения, особенно старые, будут прекрасно работать с 256 цветами.

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

Если вы установили FR1, то внизу экрана заметите опции Auto Reconnect. Опции автовосстановления соединения позволяют клиентам Win32, WinCE и Java ICA пытаться автоматически повторно соединяться, если они отключились в результате помех в линии. Вы можете включить или отключить Auto Reconnect для всей фермы; как вы можете видеть, по умолчанию эта опция влючена. Если вы включили регистрации. попыток автовосстановления, эта информация будет фиксироваться в системном журнале событий.

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


SNMP Settings

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

MetaFrame Settings

Вкладка MetaFrame Settings управляет тем, как серверы MetaFrame будут откликаться на входящие соединения ICA.

Варианты здесь более понятны, чем параметры настройки экрана ICA. Вопрос о том, должны ли коллекторы данных и серверы RAS отвечать на широковещательные сообщения Клиента ICA, зависят от того, насколько загружена ваша ферма и насколько загружена ваша полоса пропускания RAS. В маленькой ферме (согласно Citrix, маленькая ферма может содержать до 50 серверов), коллектор данных может отвечать на широковещательные сообщения Клиентам ICA, поскольку коллектор данных не слишком занят. Если коллектор данных загружен, или если вам кажется, что он поддерживает слишком много клиентов, чтобы хорошо справляться с этой задачей, вы можете запретить коллектору данных "слушать" любые запросы, кроме относящихся к этому серверу. Аналогично, сервер RAS также может быть занят поддержкой клиентов, соединяющихся через подключение RAS. Если Вы хотите резервировать серверы RAS для клиентов RAS, запретите серверу принимать входящие запросы. Если сервер не слишком занят, разрешите ему принимать широковещательные рассылки. Если вы хотите разрешить коллектору данных и серверу RAS "слышать" широковещательные запросы клиентов ICA, но не хотите их слишком перегружать, вы можете поместить их в группы серверов с более низким -приоритетом, как будет описано далее в этой главе.

Параметры настройки часового пояса клиента нужны в том случае, если вы поддерживаете клиентов, находящихся в других часовых поясах. Если вы плохо знакомы с серверными вычислениями, вы можете не понять, почему поддержка часовых поясов является хорошей идеей: клиенты, работающие в Новосибирске, но подключающиеся к серверам MetaFrame в Москве, должны использовать новосибирское время. Разница во времени может запутать пользователей, пытающихся определить дату почтового сообщения, время сохранения файла, особенно если используют комбинацию локальных и удаленных приложений. Если вы используете местное время для Клиентов ICA, они будут использовать свои локальные параметры настройки часового пояса. Единственный недостаток состоит в том, что ее поддерживают только клиенты WinCE и Win32.
Опция Disable local time estimation позволяет вам запретить Клиентам ICA, отличным от Windows, пытаться сообщить местное время, если они это делают некорректно.

Если вы не установили FR1, то не будете на этой вкладке видеть оставшиеся параметры настройки. XML Service Address Resolution позволяет серверу MetaFrame XP сообщать о Полностью Квалифицированном Имени Домена ( FQDN) Клиентам ICA версии 6.20.985 или позже. Чтобы использовать это установку, вы должны выполнять вашу ферму в "родном" режиме, потому что серверы MetaFrame 1.8 не поддерживают FQDN.

NDS Preferred Tree - это предпочтительное имя дерева NDS, используемое для обращения к учетным записям пользователей Novell NDS и аутентификации. FR1 поддерживает только одно дерево для фермы.

Одной из полезных возможностей в FR1 является то, что можно установить максимальное число параллельных соединений для одного пользователя, предотвращая создание пользователем множества сеансов. Для этого установите флажок в Maximum connections per user и введите число, представляющее собой максимальное число сеансов, разрешенных одному пользователю. Это установка относится только к сеансам ICA и не влияет на соединения RDP. Если пользователь превышает установленный лимит, то при попытке подключения к ферме он получит сообщение об ошибке, что сервер Citrix больше не принимает соединения. К сожалению, это сообщение не очень информативно, поэтому вы должны заранее пополнить им список возможных причин отказа в соединении для конечного пользователя.

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

Мы уже обсуждали параметры настройки на закладке Interoperability в Главе 4, когда говорили о миграции MetaFrame 1.8. Я буду обсуждать содержимое вкладки Zones немного позже. Пока обратимся к конфигурации сервера..

Параметры настройки Сервера

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

SNMP Settings

Здесь не стоит беспокоиться о настроках SNMP, кроме случая, если они отличаются от настроек фермы. Для переопределения настроек фермы, сбросьте флажок Use farm settings. Поскольку SNMP применяется только к MetaFrame XPe, мы поговорим об этом в Главе 9.

Information

Вкладка Information не позволяет вам изменять никакие параметры настройки, она лишь отображает текущую информацию о версии MetaFrame и Windows 2000 Server. Обратитесь к этой закладке из Citrix Management Console, чтобы проверить установленные последние сервисные пакеты для Win2K или MetaFrame XP, или чтобы увидеть код продукта сервера или информацию о верси.

ICA Settings

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

MetaFrame Settings

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

Если вы не установили FR1, первые три опции будут содержать Do NOT create… (я добавил ударение), а не Create. Я предполагаю, что вы установили FR1.

В основном, первые три опции управляют, на каких сетевых протоколах будет слушать сервер MetaFrame. Если вы создаете слушатель для UDP, он будет слушать всех клиентов, использующих сетевой протокол TCP/IP . Это поведение одинаково применяется и для IPX/SPX и NetBEUI. Однако, установка флажков не означает установку этих протоколов. Единственая опция, которая может привести вас в замешательство - это Server responds to ICA Client broadcast messages. Если вы включили ее, то сервер будет отвечать на широковещательные запросы клиентов ICA.

Хотя вы можете видеть порт, используемый службой Citrix XML для браузинга через TCP/IP+HTTP клиентами ICA, вы не можете изменить его на этой вкладке. Если вам нужно изменить это значение для некоторого сервера, вы мрожете использовать команду ctxxmlss. Введие с командной строки:

ctxxmlss /rnnn

где nnn - номер порта, используемый службой XML. (Если вы ошиблись и выбрали уже используемый порт, то получите сообщение об ошибке). Чтобы изменения вступили в силу, вам следует перезапустить службу XML или перезагрузить сервер. Эту команду могут выполнить только администраторы..

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

При установке 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.

Использование распределения нагрузки

Если у вас есть несколько серверов MetaFrame, то неплохо бы иметь способ равномерно распределять нагрузку на несколько серверов, чтобы облегчить работу ваших пользователей. Один из способов состоит в равномерном распределении пользователей по доступным серверам, назначая пользователей на определенный сервер. Хотя такой подход будет работать, он ограничен. Во-первых, он предполагает необходимость распределения пользователей по разным серверам MetaFrame. Это довольно сложно реализовать; вы должны оценить их использование до того, как вручную распределите пользователей - ведь один сервер может поддерживать 15 пользователей, а другой - 30. Во вторых, если вы добавляете больше серверов в ферму (или удаляете серверы из фермы), вы должны перестроить ваше распределение. Короче говоря, ручное назначение клиентов на серверы лучше оставить для маленьких ферм, которые не меняются часто и имеют стабильный набор пользователей. Если у вас большая ферма, вы можете подумать о том, как применить возможности управления нагрузкой MetaFrame XP, доступные в MetaFrame XPa и XPe.

В MetaFrame 1.8, управление нагрузкой было доступно в виде отдельного компонента, но теперь она входит в состав основного программного обеспечения двух версий MetaFrame XP. См. Главу 1 для полного описания особенностей различных версий MetaFrame XP.

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

Как Load Manager решает, где запустить сеанс ICA

При использовании распределения нагрузки с серверами или опубликованными приложениями, Load Manager должен подсоединить новые сеансы ICA к тому серверу, который в настоящее время меньше всего загружен в соответствии с примененными правилами. Давайте посмотрим, как работает этот процесс.

Для большинства правил распределения загрузки вы можете установить два порога: нижний порог, ниже которого сервер (или приложение) считается для Load Manager незагруженным, и верхний порог, выше которого Load Manager считает сервер перегруженным и более не управляет им, используя это правило. (Не все правила работают таким образом. Как вы увидите, вы можете установить такие правила, как время работы, максимальное число одновременных соединений или ограничения адресов IP).

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

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

Найдя серверы с самой низкой загрузкой, Load Manager выбирает одного из из них и возращает его адрес клиенту ICA, чтобы начать соединение.

Понимание встроенных оценщиков распределения нагрузки

MetaFrame XP идет с двумя встроенными оценщиками распределения нагрузки. Давайте рассмотрим их, чтобы помочь вам определить, стоит ли вам формировать собственные оценщики. Чтобы увидеть правила для любого оценщика, откройте вкладку Contents раздела Load Evaluators в Citrix Management Console, щелкните правой кнопкой мыши на значке оценщика и выберите из контекстного меню Load Evaluator Properties.

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

Заданный по умолчанию оценщик имеет только одно правило: Server User Load (пользовательская загрузка сервера). Это правило означает, что соединения Клиента ICA балансируются согласно числу пользователей на каждом сервере, и сервер откажет в соединении, если это число превысит 100. В пределах этого ограничения серверы будут принимать соединения как обычно..

Расширенный оценщик более сложен и включает три правила, а не одно: CPU Utilization, Memory Usage и Page Swaps. Согласно набору порогов, серверы с расширенным оценщиком, сообщают о предельной нагрузке при достижении любого из следющих условий: использование процессора превышает 90%; использовано более 90% виртуальной памяти (не физической); менеджер памяти сервера делает 100 или более операций подкачки в секунду. Сервер будет считаться незагруженным, пока истинны все следующие условия: загрузка процессора менее 10%; использовано менее 10% виртуальной памяти и виртуальный менеджер памяти не использует файл подкачки. Другими словами, очень маловероятно, что сервер, использующий расширенного оценщика, когда-либо сообщит, что он не загружен. Только одно правило - Memory Usage - будет этому препятствовать.

Хотя комментарий для расширенного оценщика говорит о том, что он также использует правило Context Switches (переключение контекстов), это правило находится в списке доступных правил, а не в списке назначенных.

Применение оценщиков

Для применения оценщика к серверу, откройте вкладку Usage Reports в разделе Load Evaluators. При первой установке распределения нагрузки, встроенный оценщик применяется ко всем серверам фермы.

Для изменения назначенного оценщика, щелкните правой кнопкой на сервере и выберите опцию Load Manage Server . Появится окно со списком прикрепленных к нему оценщиков:

Для назначения нового оценщика выберите его из списка и щелкните OK. После этого вы вернетесь во вкладку Usage Report, которая будет отображать новые оценщики.

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

Если вы публикуете на сервере приложения, вы можете применять оценщики не только к серверу, но и к приложению. Для этого откройте в консоли папку Applications, щелкните правой кнопкой мыши и выберите из меню Load Manage Application. Появится окно со списком доступных оценщиков. Выберите один из них и щелкните OK.

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

Для прекращения распределения нагрузки для приложения, установите оценщик <None>.

Создание собственных оценщиков

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

  1. Откройте вкладку Contents раздела Load Evaluators. Если вы еще не добавляли своих оценщиков, то увидите двух встроенных оценщиков: Default и Advanced.

  2. Щелкните правой кнопкой на Default и выберите из меню Duplicate Load Evaluator. Появится приблизительно такое окно:

    Щелкните Server User Load в панели Assigned Rules для отображения информации в нижней части окна.

  3. Введите имя для нового оценщика и необязательное описание.

  4. Ранее мы не могли изменить значение для Report full load when…. Однако, поскольку мы сделали дубликат правила, мы можем изменить это число. Введите число - в нашем примере это 50 - и щелкните OK. Окно закроется, а новый оценщик появится на вкладке Contents вместе с Default и Advanced. Теперь вы можете применить его к серверам и приложениям.

Вы также можете создать своего оценщика "с нуля". Это просто:

  1. Щелкните по любому оценщику правой кнопкой и выберите из меню New Load Evaluator

  2. Введите имя и необязательное описание нового оценщика

  3. В списке Available Rules (доступные правила) выберите правило и щелкните Add для добавления его в список Assigned Rules (назначенные правила).

  4. Выберите в списке Assigned Rules правило и установите для него пороги

Дальнейший процесс зависит от типа применяемого правила. Для серверных правил вы вводите значения для нижнего и верхнего порогов. Для других типов могут быть разные опции. Например, если вы создаете оценщик для фермы, уже имеющей несколько опубликованных приложений, то при выборе правила Application User Load и переноса его в список Assigned Rules появляется следующее окно:

Правило Application User Load работает аналогично Server User Load в оценщике Default, определяя максимальное число пользователей, запускающих одно приложение (именно пользователей, а не соединений. Один и тот же пользователь может несколько раз подключиться к приложению, но будет учтен только один раз. Т.е. вы не ограничиваете число экземпляров приложений, которые могут быть запущены одним пользователем).
Как видно на рисунке, список внизу экрана содержит список всех опубликованных приложений. Выберите одно из них - вы не можете использовать оценщик для более чем одного приложения - и введите нужное число соединений.

Если вы выбрали правило IP Range, то увидите следующее окно:

Назначение диапазонов IP немного напоминает указание диапазона на сервере DHCP. Выберите, хотите ли вы разрешить или запретить доступ и щелкните кнопку Add.

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

Последнее правило работает немного иначе, чем остальные. При выборе правила Scheduling открывается следующее окно:

Часы, когда разрешено использовать приложение, закрашены в зеленый цвет. Часы, когда запрещено - в белый. Load Manager подразумевает, что сотрудники вашей компании работают 7 дней в неделю, 8 часов в день. Для добавления часов, щелкайте по ним, пока они не станут зелеными, а для удаления щелкайте пока не станут белыми.

Так или иначе, после выбора правила, которое вы хотите применить (не более одного экземпляра каждого правила для одного оценщика), нажмите OK и теперь вы можете применить оценщика к серверам или приложениям. Как видно из таблицы, MetaFrame XP предлагает широкий спектр правил распределения нагрузки, которые вы можете объединить при создании собственного оценщика для любой ситуации.

 
Счетчик Описание

Предполагаемое использование

Application User Load

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

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

Context Switches

Вычисляет загрузку, основываясь на частоте переключения контекстов процессора. Переключение контекста происходит всякий раз, когда ОС переключается от одного процесса к другому. Допустимый диапазон для высоких и низких порогов - от 0 до 2147483647.

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

CPU Utilization

Вычисляет загрузку, основанную занятости процессора. Допустимый диапазон для высоких и низких порогов - от 0 до 100.

Лучше всего подходит для серверов, а не для приложений.

Disk Data I/O

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

Лучше всего подходит для серверов, а не для приложений.

Disk Operations

Вычисляет загрузку, основанную на количестве физических дисковых операций в секунду. Это правило аналогично Disk Data I/O, но учитывает число операций, которые делает диск, а не объем передаваемых данных..

Лучше всего подходит для серверов, а не для приложений.

IP Range

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

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

License Thresholds

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

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

Memory Usage

Позволяет вашему оценщику вычислять загрузку на основании использования памяти.

Лучше всего для серверов, а не приложений.

Page Faults

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

Лучше всего для серверов, а не приложений.

Page Swaps

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

Лучше всего для серверов, а не приложений.

Scheduling

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

Используйте это правило для серверов или приложений.

Server User Load

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

Лучше всего для серверов, а не приложений.

Итак, какие правила вам следует выбрать и какие пороги применить? Очевидно, ответ зависит от того, в чем вы больше всего заинтересованы. Если вы хотите препятствовать пользователям запускать много копий ресурсемкого приложения, то используйте правило Application User Load. Чтобы препятствовать подключаться к серверам со слабым процессором или малым количеством памяти, используйте правила CPU Usage или Memory Usage. При проектировании новых оценщиков думайте о том, как вы хотите распределить нагрузку.

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

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

 
Правило Load Manager

System Monitor Counter

Context Switches

Thread:Context Switches/sec
CPU Utilization

Processor: % Processor Time

Disk Data I/O

Physical Disk:Avg Disk Bytes/Transfer (but convert to KB before using)

Disk Operations

Physical Disk:%Disk Time

Memory Usage Memory: %Committed Bytes in Use
Page Faults

Memory:%Page Faults/sec

Page Swaps

Memory:%Page Writes/sec

Server User Load ServerServer Sessions

Наконец, после выбора правил для оценщиков, вспомните, как они применяются. Во-первых, правила с верхними и нижними порогами (например, использование памяти) будут сообщать процент от их верхнего погрога. Во-вторых, эти проценты изменятся постоянно, в зависимости от состояния сервера сразу после создания соединения ICA. Если ваши оценщики содержат правила, учитывающие значения, которые могут легко измениться (например, использование центрального процессора), сервер может принимать соединения в 8:00 утра и запретить в 8:02 из-за превышения верхнего порога, а затем снова разрешить в 8:05. В третьих, если пользователь начинает сеанс на некотором сервере и запускает бесшовное приложение Windows (я буду говорить об этом в Главе 6), то другие бесшовные приложения этого пользователя будут по возможности запущены с этого же сервера, чтобы уменьшить использование памяти и снизить риск повреждения профиля.

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

Переименование и удаление оценщиков

Вы можете переименовать или удалить только созданный вами оценщик. Щелкните на нем правой кнопкой, выберите из меню Load Evaluator Properties. Когда откроется окно свойств, введите новое имя и щелкните OK.

Вы также можете легко удалить оценщик. Щелкните по нему правой кнопкой и выберите из меню Delete Load Evaluator(s) (Для выбора нескольких оценщиков щелкайте по ним мышью, удерживая клавишу Ctrl). Или подсветите оценщик и щелкните Delete. Вы должны быть уверены в своих действиях. Кнопки Undo не предусмотрено.

Что происходит, когда оценщик запрещает доступ?

Большую часть времени ваши серверы вряд ли будут работать под полной загрузкой. Однако, когда все серверы достигают ее, вы можете столкнуться с ограничениями. Если кто-то не может подключиться к выбранному серверу из-за правил распределения нагрузки, ему выдается два сообщения об ошибке. Первое из их гласит "The systems was not able to acquire a Citrix Product License. The IMA Service may not be running. Please contact your System Administrator" ("Система не может получить лицензию продукта Citrix. Возможно, не работает служба IMA. Обратитесь к вашему системному администратору"). Когда пользователь, которому отказано в доступе, нажимает OK, то получает второе сообщение: "You do not have access to logon to this Session" (У вас нет прав доступа к этому сеансу).

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

Резюме

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

Глава4. Установка MetaFrame XP Содержание Глава 6: Предоставление доступа к приложениям на MetaFrame X