Поделиться через


максимальные ограничения и масштабируемость служб домен Active Directory

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

Максимальное количество объектов

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

Каждый контроллер домена Active Directory имеет уникальный идентификатор, характерный для отдельного контроллера домена. Эти идентификаторы, которые называются тегами различающихся имен (DNTs), являются уникальными значениями, которые не реплицируются или иначе видны другим контроллерам домена. Диапазон значений для DNTs составляет от 0 до 2 147 483 393 (231 минус 255). При удалении объекта новые объекты, создаваемые после этого, не могут использовать тот же DNT. Поэтому контроллеры домена ограничены созданием в рамках двух миллиардов объектов, которые также включают объекты, реплицируемые контроллером домена. Это ограничение применяется к агрегату всех объектов из всех секций, размещенных на контроллере домена, включая сетевой компьютер домена (NC), конфигурацию, схему и все секции каталогов приложений.

Существуют возможные способы обойти ограничение времени создания контроллера домена. Например, можно удалить объекты из домена, удалив их окончательно. Вы также можете установить новый контроллер домена, который реплицирует оставшиеся объекты из потенциального контроллера домена. Однако необходимо убедиться, что новый контроллер домена получает объекты через репликацию, и что вы не продвигаете его с помощью параметра Install from Media (IFM). Контроллеры домена, установленные с помощью IFM, наследуют значения DNT от контроллера домена, на основе резервного копирования IFM.

При достижении ограничения DNT в базе данных отображается следующее сообщение об ошибке:

Error: Add: Operations Error. <1> Server error: 000020EF: SvcErr: DSID-0208044C, problem 5012 (DIR_ERROR), data -1076.

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

$ossupported = $false
 
# max possible DNTs
$maxdnts = [System.Math]::Pow(2, 31) - 255
 
# connect rootDSE
$root = [ADSI]"LDAP://rootDSE"
 
# get operational attribute dsaVersionString
$root.RefreshCache("dsaVersionString")
 
# get version string usable in System.Version
$osverstring = $root.dsaVersionString[0].Substring(0, $root.dsaVersionString[0].IndexOf(" "))
 
try
{
    $osver = New-Object System.Version $osverstring
 
    # we need at least W2K12 DC to see the approximateHighestInternalObjectID exposed
    if ($osver.Major -gt 6)
    { $ossupported = $true }
 
    elseif ($osver.Major -eq 6)
    { $ossupported = ($osver.Minor -ge 2) }
}
 
catch
{ Write-Host "ERROR: Could not evaluate DC OsVer!"  }
 
if ($ossupported)
{
    # get operational attribute approximateHighestInternalObjectID
    $root.RefreshCache("approximateHighestInternalObjectID")
 
    Write-Host "Approx highest committed DNT: $($root.approximateHighestInternalObjectID[0])"
 
    Write-Host "DNTs left for new assignments: $($maxdnts - $root.approximateHighestInternalObjectID[0]) from $maxdnts"
}
 
else
{ Write-Host "approximateHighestInternalObjectID not exposed (DC OsVer: $osverstring)" }

Максимальное число идентификаторов безопасности

Максимальное количество идентификаторов безопасности, которые можно создать в течение всего времени существования контроллера домена, составляет 2 147 483 647 относительных идентификаторов (RID). Дополнительные сведения о выпуске и мониторинге идентификаторов RID см. в разделе "Управление выдачой RID".

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

Примечание.

ИДЕНТИФИКАТОРы назначаются в блоках 500 по умолчанию от контроллера домена, который содержит роль главного контроллера операций RID в каждом домене. При понижении контроллера домена неиспользуемые ИДЕНТИФИКАТОРы, первоначально выделенные контроллеру домена, не возвращаются в глобальный пул RID и становятся недоступными для использования в домене.

Windows Server начинает подготовку искусственного ограничения для выдачи RID, когда количество доступных идентификаторов RID достигает 90 процентов доступного глобального пространства RID. Когда количество доступных ИДЕНТИФИКАТОРов достигает одного процента этого ограничения, контроллеры домена, запрашивающие пулы RID, получают событие предупреждения Directory-Services-SAM 16656 в журнале событий системы.

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

Примечание.

База данных Active Directory не задает ограничения на количество объектов в контейнере, но устанавливает ограничения при работе со многими тысячами объектов. Корпорация Майкрософт настроит эти ограничения для предоставления определенного уровня доступности приложений или служб. Эти ограничения можно изменить, перенастроив параметры параметров фильтра в меню представления или изменив политики протокола LDAP. Дополнительные сведения см. в статье 315071 базы знаний.

Максимальное количество записей в списках дискреционных и контроль доступа безопасности

Это ограничение относится к тому, сколько записей можно использовать в списке управления доступом (DACL) или списке управления доступом безопасности (SACL) объекта Active Directory с помощью атрибута ntSecurityDescriptor. Само ограничение основано на ограничениях размера списка управления доступом (ACL), который составляет 64 K. Так как записи управления доступом (ACEs) могут отличаться по размеру из-за одного или нескольких глобальных уникальных идентификаторов (GUID), фактическое максимальное количество записей (SID) может быть от 1 100 до 1820. Дополнительные сведения см. в статье о том, как дескрипторы безопасности и контроль доступа списки работают.

Членство в группах для субъектов безопасности

Субъекты безопасности, такие как учетные записи пользователей, групп и компьютеров, могут быть членами не более 1015 групп. Это ограничение связано с тем, что маркер доступа, создаваемый для каждого субъекта безопасности, имеет ограничение размера, которое не влияет на то, как вы вложены группы. Дополнительные сведения см. в статье 328889 базы знаний.

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

Ограничения длины полного доменного имени

Полные доменные имена (FQDN) в Active Directory не могут превышать 64 символов в общей длине, включая дефисы и периоды. Это ограничение существует, так как интерфейсы программирования приложений Win32 (API) и объекты групповой политики ,хранящиеся в общей папке SYSVOL, определяют значение MAX_PATH как 260 символов. Дополнительные сведения см. в 909264 базы знаний.

Ограничения имени файла и пути

Физические файлы, используемые компонентами Active Directory, например SYSVOL, база данных (NTDS). DIT) и пути к файлам журнала ограничены MAX_PATH длиной 260 символов, как определено API Win32. При выборе места размещения файлов SYSVOL и базы данных во время установки Active Directory избегайте вложенных структур папок, которые делают полный путь к физическим файлам в Active Directory дольше 260 символов.

Другие ограничения длины имени

Следующие ограничения длины имен, описанные в 909264 базы знаний, также применяются к именам ресурсов и файлов в Active Directory:

  • Компьютеры и доменные имена NetBIOS могут содержать только 15 символов.

  • Имена узлов системы доменных имен (DNS) могут содержать только 24 символа.

  • Имена подразделений могут иметь длину только 64 символов.

Ограничения длины имен из схемы

Схема накладывает следующие ограничения по умолчанию для имен атрибутов для объектов Active Directory:

  • Отображаемые имена могут содержать только 256 символов, как описано в атрибуте отображаемого имени.

  • Общие имена могут содержать только 64 символов, как описано в атрибуте Common-Name.

  • Атрибут SAM-Account-Name может содержать только 256 символов в схеме. Однако по соображениям обратной совместимости ограничение Active Directory для пользователей составляет 20 символов. Дополнительные сведения см. в разделе "Атрибут SAM-Account-Name".

Ограничения длины имен для простых операций привязки LDAP

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

Error <49>: ldap_simple_bind_s() failed: Invalid Credentials
Server error: 80090308: LdapErr: DSID-0C0903AA, comment: AcceptSecurityContext error, data 57, v1771
Error 0x80090308 The token supplied to the function is invalid

Эту проблему можно избежать, убедив, что приложения, скрипты и служебные программы, пытающиеся привязаться к каталогу, используют безопасные привязки LDAP. Кроме того, можно попробовать уменьшить глубину структуры подразделения или длину имен подразделений. Например, следующее различающееся имя — 261 символов:

CN=BobKelly,OU=CorporateVicePresidents,OU=CorporateOfficers,OU=ViewOfPugetSoundOffices,OU=TopFloor,OU=Building1557,OU=CorporateCampus,OU=Redmond,OU=Washington,OU=NorthWestern,OU=UnitedStatesOfAmerica,OU=NorthAmerica,DC=BusinessGroup,DC=humongousinsurance,DC=com

Если сократить CorporateVicePresidentsCVPподразделение с именем to, различающееся имя BobKelly учетной записи пользователя теперь составляет только 242 символа и поэтому находится в пределах предела.

Максимальное количество примененных объектов групповой политики

Active Directory ограничивает количество объектов групповой политики, которые можно применить к учетной записи пользователя или компьютера до 999. Это ограничение не означает, что общее количество параметров политики в системе ограничено 999. Вместо этого один пользователь или компьютер не может обрабатывать более 999 объектов групповой политики. Это ограничение существует, чтобы предотвратить проблемы с производительностью, вызванные обработкой слишком большого количества объектов групповой политики одновременно.

Ограничения доверия

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

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

  • Когда клиент ищет путь доверия, поиск ограничен доверием, установленным непосредственно с доменом и довериями, которые транзитивны в лесу.

  • Предыдущее тестирование показывает, что увеличение времени выполнения операций, связанных с TDO, таких как проверка подлинности в доменах, заметно ухудшает производительность, если реализация Active Directory в организации содержит более 2400 TDOS.

Дополнительные сведения об ограничениях доверия см. в разделе "Практические ограничения доверия".

Максимальное количество учетных записей на транзакцию LDAP

При написании скриптов или разработки приложений, выполняющих транзакции LDAP, рекомендуется выполнять не более 5000 операций на транзакцию LDAP. Транзакция LDAP — это группа операций каталога, которые обрабатываются как одна единица, например добавление, удаление и изменение. Если вы выполняете более 5000 операций в одной транзакции LDAP, вы рискуете работать с ограничениями ресурсов и рабочим временем ожидания. При возникновении этой проблемы все операции в транзакции откатываются, что приводит к потере изменений, внесенных во время транзакции. Дополнительные сведения о структуре данных LDAP, которая фиксирует изменения, см. в разделе "Структура LDAPModA".

Для сред Active Directory Для Windows 2000 рекомендуется максимальное количество участников в группе — 5000. Эта рекомендация основана на количестве одновременных атомарных изменений, которые могут быть зафиксированы в одной транзакции базы данных.

Начиная с Windows Server 2003, возможность репликации дискретных изменений в связанные многозначные свойства была представлена в качестве технологии, называемой репликацией связанных значений (LVR). Чтобы включить LVR, необходимо увеличить функциональный уровень леса до по крайней мере промежуточного уровня Windows Server 2003. Увеличение функционального уровня леса изменяет способ хранения членства в группах (и других связанных многозначных атрибутов) в базе данных и репликации между контроллерами домена. Это позволяет превысить прежнее рекомендуемое ограничение в 5000 для Windows 2000 или Windows Server 2003 на уровне работы леса Windows 2000.

До сих пор тестирование в этой области пока не показало никаких новых рекомендуемых ограничений на количество членов группы или любого другого связанного многозначного атрибута. Сообщается, что рабочие среды превышают 4 миллиона членов, а тестирование масштабируемости Майкрософт достигло 500 миллионов членов.

Внимание

Повышение функционального уровня леса до промежуточного или более высокого уровня windows Server 2003 не изменяет способ хранения или репликации существующих членов группы. Для этого необходимо удалить элементы, которые были добавлены в группу, прежде чем уровень функциональности леса был увеличен до Windows Server 2003, а затем снова добавить их в соответствующие группы. Все члены группы, которые вы добавляете или удаляете после увеличения функционального уровня леса, будет включена LVR, даже если группа содержит других участников, которые не включены LVR. Дополнительные сведения о связанных атрибутах см. в разделе "Связанные атрибуты". Дополнительные сведения о процессе репликации см. в статье о работе модели репликации Active Directory.

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

Уровень функционирования домена Рекомендуемое максимальное количество доменов
Сервер Windows 2000 восемьсот
Windows Server 2003 1200
Windows Server 2025 3,000

Ограничение в 1200 для Windows Server 2003 является ограничением многозначных несоединенных атрибутов в Windows Server 2003. Дополнительные сведения см. в разделе "Максимальный размер записи базы данных" в разделе "Работа хранилища данных" (/previous-versions/windows/it-pro/windows-server-2003/cc772829(v=ws.10)).

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

Если вы ожидаете, что домен Active Directory в сети имеет более 1200 контроллеров домена, а эти контроллеры домена размещают зоны доменных имен, интегрированных с Active Directory (DNS), рекомендуется ознакомиться с 267855 базы знаний для планирования.

Максимальный рекомендуемый размер билета Kerberos составляет 48 000 байт. Размер билета можно задать, настроив значение MaxTokenSize REG_DWORD в реестре HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lsa\Kerberos\Parameters или с помощью групповой политики, как описано в 938118 базы знаний.

Примечание.

Максимально допустимое значение MaxTokenSize равно 65 535 байтам. Если вы используете Kerberos для управления ключами БЕЗОПАСНОСТИ IP (IPsec), ограничение составляет 65 536 байт. Однако из-за кодировки контекста проверки подлинности HTTP base64 рекомендуется не задать для записи реестра maxTokenSize значение, превышающее 48 000 байт. Начиная с Windows Server 2012 значение по умолчанию для записи реестра MaxTokenSize составляет 48 000 байт.

Дополнительные сведения о билетах Kerberos см. в дополнительных ресурсах для устранения неполадок Kerberos.

Максимальное число не связанных значений атрибутов

База данных Active Directory хранит не связанные значения атрибутов в связанном каталоге, который должен помещаться на страницу базы данных. В результате этого требования к размеру максимальный предел атрибутов, не связанных с связью, для объекта, который содержит только один атрибут, составляет 1200. В лесах Windows Server 2025 можно увеличить ограничение до 3000.

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

Дополнительные сведения об ограничении см . в статье сведений о базе данных AD, многие записи DNS с одним DNS-именем и ошибка репликации Active Directory 8304: максимальный размер объекта превышен.

Максимальный размер объектов Active Directory

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

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