Методология внедрения Microsoft Active Directory

Восстановление Active Directory

Показывать лекцию целиком

Цель лекции: Указать необходимость спланировать подготовку к отказам для возможности восстановления Active Directory.

Служба каталога Active Directory - это наиболее критическая сетевая служба, которая развернута в сети. Если инфраструктура Active Directory будет неудачной, пользователи сети будут чрезвычайно ограничены в своей работе в сети. Почти все сетевые службы в Microsoft Windows Server 2003 выполняют аутентификацию пользователей в Active Directory, прежде чем они получат доступ к какому-либо сетевому ресурсу. Поэтому надо заранее приготовиться к предотвращению отказов и восстановлению службы.

Подготовка к отказам

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

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

Перечисленные ниже процедуры являются критически важными .

  • Разработать последовательное создание резервной копии и восстановить управление контроллеров домена. Первый шаг в любом плане восстановления состоит в установке соответствующих аппаратных средств и программного обеспечения для поддержки создания резервных копий контроллеров домена; после этого рекомендуется создать и протестировать план резервирования и восстановления.
  • Развернуть контроллеры домена Active Directory с аппаратной избыточностью. Большинство серверов можно заказывать с некоторым уровнем аппаратной избыточности при небольшой дополнительной стоимости. Например, сервер с двойным источником питания, избыточными сетевыми картами и избыточной аппаратной системой жесткого диска должен быть стандартным оборудованием для контроллеров домена. Во многих больших компаниях аппаратная избыточность поднята на такой уровень, когда все контроллеры домена связаны с различными цепями питания и подключены к различным коммутаторам Ethernet или сетевым сегментам.
  • Хранение данных в Active Directory

    База данных Active Directory хранится в файле по имени Ntds.dit, который по умолчанию расположен в папке %systemroot%\NTDS, содержащей также следующие файлы :

  • Edb.chk - файл контрольных точек, который указывает, какие транзакции из журналов регистрации были записаны в базу данных Active Directory;
  • Edb.log - журнал регистрации текущих транзакций, имеющий фиксированную длину в 10 Мб;
  • Edbxxxxx.log. После того как Active Directory проработала некоторое время, могут появиться один или более журналов, у которых часть имени файла, обозначенная как ххххх, представляет собой увеличивающийся шестнадцатеричный порядковый номер. Эти журналы являются предшествующими журналами; всякий раз, когда текущий журнал заполнен, он переименовывается в следующий предшествующий журнал, и создается новый журнал Edb.log. Старые журналы автоматически удаляются по мере того, как изменения, представленные в журналах, переносятся в базу данных Active Directory. Каждый из этих журналов занимает 10 Мб;
  • Edbtemp.log - временный журнал, который используется тогда, когда заполнен текущий журнал (Edb.log). Новый журнал создается под именем Edbtemp.log, в нем хранятся все транзакции, а затем журнал Edb.log переименовывается в следующий предшествующий журнал. Далее журнал Edbtemp.log переименовывается в журнал Edb.log;
  • Res1.log и Res2.log - резервные журналы, которые используются только в ситуации, когда на жестком диске заканчивается свободное пространство. Если текущий журнал заполнен, а сервер не может создать новый журнал, потому что на жестком диске нет свободного пространства, сервер подавит любые транзакции Active Directory, находящиеся в настоящее время в памяти, использует место для резервных журналов, а затем завершит работу Active Directory. Размер каждого из этих журналов - 10 Мб.
  • Каждая модификация в базе данных Active Directory называется транзакцией. Транзакция может состоять из нескольких шагов. Например, когда пользователь перемещается из одной организационной единицы (OU) в другую, в OU-адресате должен быть создан новый объект, а в OU-источнике удален старый объект. Чтобы транзакция была закончена, оба шага должны быть выполнены; если один из шагов потерпит неудачу, вся транзакция должна получить откат, чтобы никакой шаг не был засчитан. Когда все шаги в транзакции выполнены, транзакция считается законченной. Используя модель транзакций, система Windows Server 2003 гарантирует, что база данных всегда остается в согласованном состоянии.

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

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

    Журналы транзакций не только улучшают работу контроллера домена, обеспечивая место для быстрой записи изменений, но и обеспечивают возможность восстановления данных в случае отказа сервера. Например, если было сделано изменение, относящееся к Active Directory, то оно записывается в журнал транзакций, а затем на страницу базы данных, находящуюся в памяти сервера. Если в этот момент сервер неожиданно выключается, то изменения не будут переданы из памяти сервера в базу данных. Когда контроллер домена будет перезапущен, он найдет в журнале все транзакции, которые еще не были переданы в базу данных. Затем эти изменения применятся к базе данных при запуске служб контроллера домена. В процессе этого восстановления используется файл контрольной точки. Файл контрольной точки является указателем на то, какие транзакции из имеющихся в журнале были переписаны в базу данных. В процессе восстановления контроллер домена читает файл контрольной точки, определяя, какие транзакции были переданы базе данных, а затем он добавляет в базу данных изменения, которые еще не были переданы. Использование журналов транзакций улучшает работу контроллеров домена и увеличивает возможность восстановления данных в случае неожиданного выключения сервера. Эти преимущества максимальны, если журнал транзакций и база данных расположены на отдельных жестких дисках.

    Служба Active Directory Windows Server 2003 сконфигурирована для циркулярной (circular) регистрации, и эта конфигурация не может быть изменена. При циркулярной регистрации сохраняются только те предшествующие журналы, содержащие транзакции, которые не были переписаны в базу данных. По мере передачи информации из предшествующего журнала в базу данных журнал удаляется. Циркулярная регистрация предотвращает потерю данных в случае сбоя на жестком диске контроллера домена, когда будет восстанавливаться база данных из резервной копии. Предположим, что выполняется резервное копирование Active Directory каждую ночь, но жесткий диск контроллера домена сломался в 17:00, после того как было сделано несколько сотен изменений в базе данных в течение дня. По мере выполнения изменений предшествующие журналы транзакций удалялись, поскольку информация из них передавалась в базу данных Active Directory. Когда будет восстановлена база данных к состоянию, соответствующему резервной копии предыдущей ночи, все изменения, которые были сделаны в течение дня, будут потеряны. Единственный способ предотвратить эту потерю данных состоит в развертывании по крайней мере двух контроллеров домена, которые реплицируют информацию друг другу в течение дня. Если произойдет сбой на одном из контроллеров домена, то можно будет восстановить на нем базу данных из резервной копии, а все изменения, сделанные в течение дня, будут скопированы на восстановленный сервер.

    Создание резервной копии Active Directory

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

    Данные системного состояния контроллера домена включают :

  • базу данных Active Directory и журналы транзакций;
  • системные файлы и файлы запуска, находящиеся под защитой Windows;
  • системный реестр контроллера домена;
  • всю зонную информацию DNS, интегрированную с Active Directory;
  • папку Sysvol;
  • базу данных регистрации классов СОМ+;
  • базу данных службы сертификатов (если контроллер домена является также сервером службы сертификатов);
  • информацию кластерной службы;
  • метакаталоги информационной Интернет-службы Microsoft (IIS) (если служба IIS установлена на компьютере).
  • Все эти компоненты должны копироваться и восстанавливаться целиком из-за их тесной интеграции. Например, если на сервере службы сертификатов был создан сертификат, который был назначен на объект Active Directory, то база данных службы сертификатов (содержащая запись о создании объекта) и объект Active Directory (содержащий запись о том, что сертификат назначен на объект) должны быть сохранены.

    Программы резервного копирования (backup) могут делать различные типы резервных копий, включая нормальные, добавочные, дифференцированные и т. д. Резервное копирование системного состояния контроллера домена всегда является нормальным копированием, когда все файлы, относящиеся к System State (Состояние системы), копируются и отмечаются как копируемые.

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

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

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

    Процесс восстановления

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

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

  • Первый вариант состоит в том, чтобы вообще не восстанавливать Active Directory на отказавшем сервере, а создать еще один контроллер домена, назначив другой сервер, на котором выполняется система Windows Server 2003, контроллером домена. Таким способом будут восстановлены функциональные возможности контроллера домена, а не служба Active Directory на определенном контроллере домена.
  • Второй вариант состоит в восстановлении отказавшего сервера и последующем восстановлении базы данных Active Directory на этом сервере. В этом случае будет выполнено восстановление при отсутствии полномочий (non-authoritative). При таком восстановлении база данных Active Directory восстанавливается на контроллере домена, а затем все изменения, сделанные к Active Directory после создания резервной копии, реплицируются на восстановленный контроллер домена.
  • Если планируется восстанавливать Active Directory, потому что кто-то удалил большое количество объектов из каталога, то необходимо восстановить базу данных Active Directory на одном из контроллеров домена, используя резервную копию, которая содержит удаленные объекты. Затем требуется сделать восстановление при наличии полномочий (authoritative), в процессе которого все восстановленные данные отмечаются так, чтобы они реплицировались на все другие контроллеры домена, перезаписывая удаленную информацию.

    Для восстановления Active Directory необходимо архивировать данные состояния службы , : реестр, базу данных регистрации СОМ+, системные загрузочные файлы и базу данных служб сертификации (если это сервер служб сертификации). При перезагрузке компьютера в режиме восстановления служб каталогов необходимо войти в систему с администраторскими правами, используя правильные имя и пароль учетной записи Security Accounts Manager. При этом нельзя использовать учетную запись администратора Active Directory, так как службы Active Directory отключены и нельзя их средствами проверить подлинность учетной записи. Для этого применяется база данных учетных записей SAM: пароль учетной записи SAM задается в процессе установки Active Directory.

    Краткие итоги

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

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

    Данные системного состояния контроллера домена включают:

  • базу данных Active Directory и журналы транзакций;
  • системные файлы и файлы запуска, находящиеся под защитой Windows;
  • системный реестр контроллера домена;
  • всю зонную информацию DNS, интегрированную с Active Directory;
  • папку Sysvol;
  • базу данных регистрации классов СОМ+;
  • базу данных службы сертификатов (если контроллер домена является также сервером службы сертификатов);
  • информацию кластерной службы;
  • метакаталоги информационной Интернет-службы Microsoft (IIS) (если служба IIS установлена на компьютере).
  • Все эти компоненты должны копироваться и восстанавливаться целиком из-за их тесной интеграции.

    Причины, из-за которых, возможно, придется восстанавливать Active Directory:

  • База данных станет непригодной для использования.
  • Удаление организационной единицы, содержащей несколько сотен учетных записей пользователей и групп.
  • Для восстановления Active Directory необходимо архивировать данные состояния службы: реестр, базу данных регистрации СОМ+, системные загрузочные файлы и базу данных служб сертификации (если это сервер служб сертификации).

    Вернуться к учебному плану