Зачем нужно перезагружать контроллеры домена раз в месяц

в 13:39, , рубрики: администрирование, Администрирование доменных имен, Блог компании RUVDS.com, домены, Серверное администрирование, метки:

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

Зачем нужно перезагружать контроллеры домена раз в месяц - 1

Active Directory предоставляет сервисы аутентификации и авторизации. Работоспособная среда  Active Directory позволяет эффективно работать другим службам.

Ранее в руководстве по проверке работоспособности Active Directory (Active Directory Health Check Server Tutorial)  мы рассмотрели  2 важных вопроса связанных с проверкой надлежащей работы службы каталогов: «Реплицированная топология Active Directory» и «Подсети не связанные с сайтами Active Directory". Мы рассказали о преимуществах использования сетевой топологии по сравнению с «ячеичной топологией», а также предложили скрипт в PowerShell, который вы можете использовать для получения информации о количестве сайтов, связанных по ссылке AD.

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

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

Перед тем как рассмотреть скрипт Power Shell для получения информации об аптайме контроллеров домена, давайте определимся с тем, зачем нам необходимо перезагружать контроллеры домена. Есть две веские причины, которые необходимо учитывать при принятии решения о перезагрузке. Рассмотрим их:

  1. Проблемы утечки памяти:  утечка памяти происходит при запуске  процесса Lsass.exe. Этот процесс осуществляется на контроллере домена и отвечает за предоставление сервисов идентификации клиентам Active Directory. Со временем утечка памяти может повлиять на работоспособность контроллеров домена. Масштабная утечка памяти может привести к неприемлемому временному отклику со стороны процесса  Lsass.exe и высокому потреблению памяти операционной системой. Для того чтобы справиться с проблемами утечки памяти рекомендуется периодически перезагружать доменные контроллеры.

    Несмотря на то, что в новых версиях операционных систем для серверов Windows Server 2012 R2 и Windows Server 2016 функция восстановления памяти  реализована автоматически, всё же  рекомендуется перезагружать доменные контроллеры, что в свою очередь может помочь решить проблемы утечки памяти, которые операционная система не может автоматически решить.

  2. Большинство обновлений для системы безопасности  требуют перезагрузки:  Важно отметить, что Windows  сервер и доменные контроллеры требуют регулярные патчи для установки пакетов обновлений и хотфиксов, а версии патчей системы безопасности должны быть совместимы на всех контроллерах домена. Новые патчи заменяют низкоуровневые Dll файлы в операционной системе, поэтому большинство обновлений систем безопасности требуют перезагрузки, после которой обновления будут успешно применены. Компания Майкрософт ежемесячно выпускает обновления системы безопасности и поэтому крайне важно перезагружать контроллеры, чтобы внести изменения.

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

Шаги:

Меняем ITDynamicPacks. Прописываем имя главного домена в AD forest name. Получаем перечень всех доменных контроллеров и главного домена Active Directory, прописав команду, указанную ниже, результат сохраняется в файле C:TempDCList.TXT file:    

DSQuery Server -o rdn > C:TempDCList.TXT

Копируем полный скрипт указанный ниже в файл PS1 и исполняем в PowerShell окне

$CurForestName="ITDynamicPacks.Net"
$TestCSVFile="C:TempDCUpTimeReport.CSV"
$GDCList="C:TempDCList.TXT"
$TotNo=0
$ItemCount=0
$TestText = "Please check result"
$TestStatus="Completed"
$SumVal = "NA"
$ErrorOrNot = "No"
$ThisString="Domain Controller, Up Time, Local Time, Time Zone, Days Not Rebooted, Status"
Add-Content "$TestCSVFile" $ThisString
$TodaysDate = Get-Date
Foreach ($ItemName in Get-Content "$GDCList")
	{
	$operatingSystem = Get-WmiObject Win32_OperatingSystem -ComputerName $ItemName
	IF ($Error.count -ne 0)
		{
		$ThisSTR = $ItemName+",Error Connecting"
		$ErrorOrNot = "Yes"
		Add-Content "$TestCSVFile" $ThisStr
		}
	else
		{
		$RTime=[Management.ManagementDateTimeConverter]::ToDateTime($operatingSystem.LastBootUpTime)
		$LocalTime=[Management.ManagementDateTimeConverter]::ToDateTime($operatingSystem.LocalDateTime)
		$CurTimeZone=$operatingSystem.CurrentTimeZone
		$StatusNow = ""
		$R = $RTime
		$Z = $TodaysDate
		$DayNotRebooted = (New-TimeSpan -Start $R -End $Z).Days
		IF ($DayNotRebooted -ge 30)
			{
			$StatusNow = "WARNING: Not rebooted since last 30 days"
			}
		$ThisStr=$ItemName+","+$RTime+","+$LocalTime+","+$CurTimeZone+","+$DayNotRebooted+","+$StatusNow
		Add-Content "$TestCSVFile" $ThisStr
		}
	}

Когда завершится исполнение скрипта по всем контроллерам домена, будет сформирован отчет в DCUpTimeReport.CSV файле в папке C:Temp folder как показано на следующем скриншоте:

Зачем нужно перезагружать контроллеры домена раз в месяц - 2

Как можно увидеть из отчета, скрипт даёт возможность получить информацию об аптайме каждого контроллера домена, указанную в  C:TempDCList.TXT файле. А отчет о том, сколько дней доменный контроллер не перезагружался можно увидеть в графе «Days Not Rebooted».

Приведенный выше скрипт является частью  «Теста контроллеров домена на аптайм»  Dynamic Pack,  который доступен для использования с Active Directory Health Profiler. Данный тест может быть проведен как для одного, так и для множества доменов AD и вы можете увидеть результаты теста  в консоли Active Directory Health Profiler как показано на скриншоте ниже:

Зачем нужно перезагружать контроллеры домена раз в месяц - 3

Вывод

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

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

Автор: RUVDS.com

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js