Модернизация будет иметь смысл для бизнеса, если вникнуть в детали

Иногда получается, что максимальный выигрыш в использовании программного продукта достигается за счет небольших, иногда простейших усовершенствований. В какой-то мере это относится и к Windows Server 2003. По сравнению с Windows 2000 Server изменения носят достаточно серьезный характер, так что затраты на планирование и тщательное внедрение вполне обоснованны. В частности, если в компании организован достаточно большой лес AD, внесение некоторых изменений в корпоративный каталог AD может оказать значительное влияние на всю организацию в целом. Несомненно, обновление инфраструктуры AD до Windows 2003 — мероприятие, требующее достаточной смелости, независимо от обещанных преимуществ. Часто перед выполнением подобной миграции требуется доказать руководству, что затраченные средства и усилия будут компенсированы достигнутыми улучшениями. К счастью, в случае Windows 2003 это нетрудно. После подготовки и защиты бизнес-проекта, в процессе детального планирования и подготовки обновления каталога AD, самое время рассмотреть и принять во внимание некоторые важные аспекты процесса, которые не получили достаточного освещения в предоставляемой Microsoft документации.

Доказательство необходимости обновления AD

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

Единое хранилище экземпляров. Эта особенность может сразу повлиять на инфраструктуру контроллеров больших доменов, но, несмотря на это, она не упоминается ни в одном разделе документации Microsoft, кроме статьи «How to upgrade Windows 2000 domain controllers to Windows Server 2003» («Обновление контроллеров домена Windows 2000 до версии Windows Server 2003»), http://support.microsoft.com/?kbid=325379. Эта функция представляет собой единое хранилище экземпляров объектов и позволяет сделать более эффективным применение операционной системой наследуемых разрешений к объектам.

В Windows 2000 при добавлении элемента управления доступом ACE (Access Control Entry) к контейнерному объекту AD с подчиненными объектами AD добавляет ACE ко всем объектам в данном контейнере. Поскольку при выполнении этой операции происходит небольшое увеличение размера дескриптора безопасности каждого объекта в контейнере, суммарный эффект может проявляться в заметном увеличении размеров файла Ntds.dit (файл, в котором реально содержится база данных AD). В худшем случае при обновлении элементов ACE к элементам верхнего уровня логической иерархии (так называемым головным элементам домена, domain heads) данное изменение будет унаследовано всеми дочерними элементами и объектами. Приведем простой пример: возьмем группу, в которую включены пользователи с правами администратора домена, и вместо добавления этой группы в группу Domain Admins явно предоставим ей права управления для DC=yourcompany,DC=com. Укажем применение сделанных разрешений для данного объекта и всех дочерних объектов. В результате произойдет увеличение объема базы данных Ntds.dit из-за того, что для каждого объекта в DC=yourcompany,DC=com потребуется небольшое увеличение места на диске для размещения объекта, и все эти увеличения будут суммированы.

Единое хранилище экземпляров объектов в Windows 2003 позволяет задействовать более эффективный механизм хранения разрешений доступа к объектам и обработки ссылок. В результате сокращаются требования к занимаемому объектами пространству и достигается увеличение свободного места в Ntds.dit. Более того, поскольку механизм единого хранилища экземпляра вступает в действие автоматически сразу после обновления контроллера домена Windows 2000 до версии Windows 2003, размер базы Ntds.dit может сразу сократиться до 40%. Кроме того, для высвобождения этого неиспользуемого пространства необходимо выполнить автономную дефрагментацию базы данных AD. Инструкции по выполнению автономной дефрагментации можно найти в документе Performing Offline Defragmentation of the Active Directory Database («Выполнение автономной дефрагментации базы данных AD») на сайте поддержки (http://support.microsoft.com/?kbid=232122). Конечно, уменьшение размера базы данных не приносит компании непосредственной прибыли, но более компактная, эффективная и быстрая новая база данных AD позволяет сократить требования к памяти и дисковому пространству. Возможно, это позволит избежать затрат на наращивание дисков для контроллеров домена.

Улучшение производительности. Усовершенствованная система управления памятью и адресации в Windows 2003 позволяет добиться значительного увеличения производительности контроллеров домена. В сущности, в основе работы контроллера домена лежит механизм баз данных, а наиболее действенным методом увеличения производительности базы данных является наращивание оперативной памяти. В Windows 2003 служба LSASS (Local Security Authority Subsystem Service), выполняющая обработку базы данных AD, настроена на максимизацию кэша для базы данных при любом объеме свободной виртуальной памяти для использования AD.

Это усовершенствование в подсистеме управления памятью гармонично сочетается с архитектурными изменениями в самой операционной системе. Windows 2003 является первой системой из семейства Windows, которая использует преимущества 64-разрядной адресации и набора инструкций процессора. Оптимизация требований к кэшу базы данных AD в сочетании с практически неограниченным адресным пространством (при использовании 64-разрядных процессоров) позволяет разместить в оперативной памяти всю базу данных AD целиком. Операции AD могут выполняться без обмена с диском даже на компьютерах с невысокой скоростью дисковых накопителей. Преимущества для бизнеса — повышение эффективности благодаря сокращению операций дискового ввода/вывода.

Усовершенствование синхронизации. Глобальный каталог GC (Global Catalog) содержит все объекты леса AD, но не хранит атрибуты для большинства объектов. Какие из атрибутов хранятся в GC, определяется описанием в разделе, называемом PAS (Partial Attribute Set, частичный набор атрибутов). Чтобы узнать, какие из атрибутов хранятся в PAS, достаточно запустить оснастку управления схемой Schema Management консоли управления MMC (Microsoft Management Console) и просмотреть атрибут displayName в списке атрибутов. Обратите внимание на свойства атрибута: в них содержится отмеченный галочкой параметр Replicate this attribute to the Global Catalog («Реплицировать данный атрибут в глобальный каталог«). В Windows 2000 изменение членства в PAS вызывает полную синхронизацию GC на каждом контроллере домена DC леса, на котором размещен GC. Если размер GC велик или же глобальный каталог хранится на многих контроллерах домена, то такая синхронизация вызывает значительную нагрузку на сервер и сеть и может повлиять на доступность GC для использующих его систем (например, Exchange 2000). В противоположность этому, репликация GC Windows 2003 заключается только в передаче изменений в PAS на другие серверы Windows 2003, нагрузка в данном случае незначительна. Если репликация вызывает заметные перегрузки в сети, возможно, следует приостановить требующие изменения PAS операции до обновления инфраструктуры DC сети до Windows 2003. Это позволит избежать полной синхронизации глобальных каталогов и, как следствие, возможных неожиданных потерь производительности и связанных с ними нарушений работы.

Усовершенствования Dfs. В Windows 2003 значительно изменена система Dfs. Во-первых, теперь на одном контроллере домена можно разместить несколько пространств имен Dfs, а не одно, как в Windows 2000. Это позволяет добиться экономии на аппаратном обеспечении, хотя обычно не является причиной обновления инфраструктуры AD.

Следует отметить, что в Windows 2003 Dfs поддерживает оценку стоимости затрат на использование ресурсов, механизм разумного (intelligent) выбора сервера Dfs, который можно описать таким образом: система определяет, что, если по каким-то причинам не удается получить доступ к ресурсу Dfs на данном сайте AD (или если таковой ресурс на сайте отсутствует), следует попытаться получить данный ресурс на ближайшем сайте в соответствии с топологией AD. Данное усовершенствование представляет собой значительное упрощение схемы поиска ресурсов в Dfs, которое еще не реализовано в службе поиска DC на клиенте XP.

Чтобы воспользоваться данным усовершенствованием Dfs, необходимо обновить все контроллеры домена до Windows 2003. Возможность строить более надежную и масштабируемую структуру пространства имен Dfs является веским основанием для перехода на Windows 2003.

Безопасность. Windows 2003 — первый из ключевых продуктов Microsoft, выпущенных после декларации курса на повышение надежности и безопасности. Конечно, Windows 2003 с этой точки зрения еще далека от идеала, но это все равно огромный шаг вперед по сравнению с Windows 2000. Одним из важных для заказчиков усовершенствований в системе безопасности является ограниченное делегирование прав — constrained delegation (в документации Microsoft используется и такое понятие, как доступность для делегирования — trusted for delegation). Делегирование прав представляет собой использование службы учетной записи пользователя или другой службы при получении необходимого доступа. В Windows 2000 такое делегирование организовано по принципу «все или ничего»: при указании делегирования прав некоторой учетной записи абсолютно все службы, подчиненные локальной учетной записи на целевом компьютере, становятся доступными для управления. Если в результате атаки скомпрометированной оказывается система, для которой разрешено делегирование прав, это делегирование может быть использовано для захвата других полномочий в системе. Ограниченное делегирование в Windows 2003 представляет собой усовершенствование применяемой в Windows 2000 системы делегирования, поскольку позволяет указать определенные службы, которые разрешено делегировать данной учетной записи. Ограниченное делегирование является очень важным усовершенствованием системы безопасности, которого с нетерпением ожидали многие разработчики.

Обновлять или устанавливать заново?

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

К сожалению, Microsoft не поясняет, в чем заключается отличие обновления системы от новой установки с точки зрения системы безопасности. Только тестирование системы покажет, что работает нормально, а что нуждается в исправлении. По моему опыту, одни приложения работают на вновь установленных системах и не работают при обновлении, другие — наоборот. В качестве обязательной меры рекомендую выполнить тестирование совместимости приложений с помощью режима winnt32/checkupgradeonly при установке, хотя это и не позволяет выявить тонкие различия в системах безопасности версий операционных систем, способные повлиять на работоспособность приложений. Другим недостатком новой установки DC по сравнению с обновлением является длительность процесса, а также необходимость выполнения большого количества операций вручную и постоянного внимания персонала. Даже при выборе автоматизированной установки необходимо вручную выполнить отзыв (demote) существующих контроллеров домена и глобальных каталогов с последующим созданием их с нуля и назначением. Все эти операции придется выполнять в нерабочее время, а также в удаленных офисах, что значительно увеличивает стоимость и сложность процесса.

В противоположность этому, процесс обновления прост и очевиден. После удаления приложений, несовместимых с Windows 2003 (например, инструменты из Windows 2000 Server Resource Kit и средства поддержки), и обновления таких приложений, как система резервного копирования и антивирус, следует запустить программу автоматического обновления Windows 2003. Данную операцию можно подготовить и запустить удаленно. Если все пройдет гладко, никакого вмешательства оператора не потребуется. Вы можете даже удаленно наблюдать за ходом обновления с помощью таких инструментов, как Sysinternals PsList (утилита доступна бесплатно на сайте www.sysinternals.com).

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

Репликация FRS

Перед началом обновления DC необходимо убедиться, что репликация AD настроена и выполняется правильно. Следует зарегистрироваться с правами администратора на входящем в лес AD сервере Windows 2003 и выполнить программу repadmin /replsummary /errorsonly (входит в состав средств поддержки) для получения краткого отчета об успешных и неудачных операциях репликации AD.

Затруднения могут возникнуть при определении правильности репликации службы SYSVOL File Replication Service (FRS). FRS поддерживает синхронизацию данных через набор разделяемых сетевых папок. FRS часто используется в связке с DFS для синхронизации сетевой информации. Одной из основных задач FRS является синхронизация общих сетевых папок SYSVOL на контроллерах доменов сети AD. Собственная копия SYSVOL, содержащая файлы групповых политик и сценарии регистрации в домене, имеется на каждом контроллере домена, и ее поддержание является необходимым условием нормального функционирования. Служба FRS отвечает за идентичность GPO и сценариев регистрации на всех контроллерах домена AD.

Учитывая важность поддержания правильности работы FRS и синхронизации SYSVOL для нормальной работы домена, просто удивительно, сколь многие организации пренебрегают мониторингом FRS. Это может объясняться сложностью FRS, отсутствием вразумительных сообщений в системном журнале и средств мониторинга FRS. Наконец, Windows 2003 предоставляет средства мониторинга FRS (хотя первые две проблемы остаются актуальными). С сайта Microsoft можно загрузить инструмент мониторинга и исправления FRS с длинным названием Ultrasound-Monitoring and Troubleshooting Tool for File Replication Service (http://www.microsoft.com/downloads/details.aspx? FamilyID=61acb9b9-c354-4f98-a823-24cc0da73b50&DisplayLang=en), предназначенный для активного мониторинга указанных администратором реплик FRS. Пакет управления службой репликации Microsoft Windows File Replication Service Management Pack для MOM (http://www.microsoft.com/downloads/details.aspx? FamilyID=4ddd3477-d903-429e-ae79-41bd69545ef4&DisplayLang=en) осуществляет мониторинг и сбор информации из базы данных ранее упомянутого Ultrasound в инфраструктуру MOM (следует иметь в виду, что для больших баз Ultrasound потребуется использование SQL Server). Настоятельно рекомендуется перед обновлением контроллеров домена до Windows 2003 установить кумулятивный пакет исправлений для FRS 815473, включающий множество отдельных исправлений. Более подробную информацию об исправлениях и загрузке можно найти в статье File Replication Service Does Not Log Errors on Sharing Violations («Служба репликации файлов не сохраняет в журнале записей о конфликтах совместного использования файлов»), http://support.microsoft.com/?kbid=815473.

Следует также использовать консоль управления групповыми политиками (GPMC, Group Policy Management Console) с пакетом исправлений SP1 (доступен для загрузки с http://www.microsoft.com/downloads/details.aspx? FamilyID=0a6d4c24-8cbd-4b35-9272-dd3cbfc81887&DisplayLang=en) для проверки настроек домена и объектов групповых политик контроллеров домена по умолчанию. Для версий Windows до пакета исправлений SP4 версии объекта групповых политик GPO домена по умолчанию в SYSVOL и в AD могут иметь существенные отличия, несмотря на то что они должны быть идентичными. Несовпадение GPO может быть вызвано накопившимися сбоями, которые могли происходить при синхронизации этих компонентов групповых политик. Подобные условия могли возникнуть в сетях с большим количеством контроллеров домена, поскольку по умолчанию каждый DC в домене постоянно пытается выполнить синхронизацию этих объектов AD и SYSVOL GPO. Исправление для данной ошибки, вошедшее, кстати, в состав Windows 2000 SP4, описано в статье Password policy is not updated when replication occurs from one domain controller to another domain controller — («Сбой обновления политики паролей при репликации между контроллерами домена»), http://support.microsoft.com/?kbid=326112. Оно заставляет контроллеры домена синхронизироваться только с главным контроллером домена (PDC), что позволяет упростить процедуру синхронизации, хотя требует больше времени для распространения изменений.

Совместимость приложений

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

В документации достаточно подробно рассмотрены проблемы совместимости со старыми версиями пользовательских операционных систем до Windows 2000 (Windows 95 и 98). При этом в документации отсутствуют сведения об операционных системах (не от Microsoft), в которых могут возникнуть неполадки из-за изменений протокола удаленного вызова процедур RPC в связи с подписью пакетов SMB (Server Message Block) и других изменений, касающихся построения более защищенной модели безопасности, используемой контроллерами домена Windows 2003. Инструментарий Microsoft Application Compatibility Toolkit помогает проанализировать приложения, исполняемые на клиентах Windows, но, к сожалению, он совершенно неприменим к другим операционным системам. Дополнительные сведения о Microsoft Application Compatibility Toolkit можно найти в http://www.microsoft.com/windowsserver2003/ compatible/appcompat.mspx.

Файловые серверы NAS. В сущности, NAS представляет собой большой шкаф с дисковыми накопителями и небольшой операционной системой, оптимизированной для эффективной работы с дисковыми накопителями и файлами. Такие системы широко используются, например, в инженерно-конструкторских подразделениях, где необходимо обеспечить доступ к огромному объему технических и технологических материалов и документации. Как правило, эти системы не поддерживают возможность аутентификации пользователей, выполняемой контроллером домена Windows 2000. Для обеспечения безопасной работы таких систем необходимо, чтобы администратор хранилища данных обновил операционные системы хранилища до последних версий (желательно совместимых с Windows 2003). Причем план обновления серверной инфраструктуры требует согласования с администраторами серверов подразделений.

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

Обычно все проблемы совместимости можно разделить на две группы — коммерческие приложения, которые давно не обновлялись, и приложения собственной разработки. Если повезет, с коммерческими приложениями проблем не будет, так как обычно можно найти обновления, совместимые с Windows 2003. Собственные разработки чаще всего создают наибольшие затруднения. Либо разработчик приложения уже уволился, а сотрудник, отвечающий за сопровождение, может и не иметь возможности перепрограммировать подсистему аутентификации пользователя в приложении. Если допустить, что проблемные приложения «проявились» сами после обновления, необходимо назначить (найти, обучить) сотрудника, который сможет решать проблемы аутентификации пользователей в Windows 2003 по мере их возникновения.

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

Рост объема дерева информации о каталоге на котроллерах домена Windows 2000

Но мы еще не выбрались из леса. До завершения обновления всех контроллеров домена до Windows 2003 вам по-прежнему лучше отложить выполнение некоторых операций над схемой AD. Так, например, при установке коммуникационного сервера Microsoft Live Communication Server (LCS) программа установки на определенном этапе выполняет добавление значительного числа служебных групп в ACL головных элементов домена леса. Если все контроллеры доменов уже переведены на Windows 2003, операция не создаст значительной нагрузки. Но если в системе остались контроллеры под Windows 2000, то из-за отсутствия функций единого хранилища ACE для этих контроллеров потребует добавления дополнительных дескрипторов безопасности к каждому объекту в домене. Это может потребовать значительного увеличения размеров баз Ntds.dit на контроллерах домена, работающих под Windows 2000. Иногда из-за отсутствия достаточного свободного дискового пространства контроллер домена попадает в цикл ошибка — перезагрузка — повторная ошибка. При установке системы LCS не следует пренебрегать предварительной проверкой в тестовом лесу, каталог AD которого имеет размеры, сопоставимые с главным производственным лесом.

Увидеть лес и деревья

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

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

В чем же выигрыш? Обновление инфраструктуры DC до Windows 2003 откроет новые возможности для клиентов компании и поможет повысить эффективность работы департамента ИТ. Пользователи почувствуют эффект благодаря изменениям Dfs, ограниченному делегированию полномочий и более быстрому внедрению приложений, ориентированных на использование AD, которые требуют изменений схемы. Подразделение ИТ оценит повышение производительности DC, более высокую защищенность и более эффективное использование полосы пропускания. А администраторов будет согревать сознание того, что во вверенном им лесу AD стало лучше жить.


Редактор журнала Windows IT Pro, старший системный инженер компании Intel, специализирующийся на проектировании корпоративных сетей на базе Windows 2000. spdeuby@winnetmag.com