Cómo comprobar el estado del controlador de dominio
Los controladores de dominio son una parte vital de su red. Le permiten organizar su red y administrar sus usuarios, computadoras y otros recursos. Por eso es importante que compruebe periódicamente el estado de sus controladores de dominio. Pero, ¿cómo se hace eso y qué señales hay que buscar?
Especialmente cuando tiene varios controladores de dominio en ejecución, es importante vigilar la replicación entre los controladores de dominio.
En este artículo, explicaré cómo verificar el estado de los controladores de dominio y escribí un script que verificará automáticamente el estado de todos sus controladores de dominio.
Verificar el estado del controlador de dominio
Los controladores de dominio son la columna vertebral de su red. Cualquier problema con un controlador de dominio puede resultar en un problema en el que los usuarios ya no puedan iniciar sesión, y esa no es una buena manera de comenzar el día. Para detectar cualquier problema potencial, necesitaremos comprobar periódicamente el estado de nuestros controladores de dominio.
Sus servidores Windows vienen con un par de herramientas integradas que le permiten verificar el estado de sus controladores de dominio y Active Directory. La más importante es la herramienta DCDiag, que comprobará sus servidores en 21 puntos con la prueba predeterminada.
Para comprobar la replicación entre sus controladores de dominio, puede utilizar la herramienta RepAdmin. Esta herramienta le permite comprobar rápidamente si la replicación se está ejecutando sin errores. (También puedes probar la replicación con DCDiag, pero RepAdmin te brinda más información)
Si ejecuta estas dos herramientas con regularidad, podrá detectar rápidamente problemas potenciales.
Pero ejecutar estas herramientas manualmente cada semana para verificar el estado de su controlador de dominio realmente no funcionará. El resultado tampoco muestra de un vistazo ningún problema potencial.
Entonces creé un script de PowerShell que verificará el estado de todos sus controladores de dominio y Active Directory. Ejecutará todas las pruebas importantes, incluido DCDiag, y formateará bien los resultados en la consola, o puede exportarlos a un archivo HTML y enviarlos por correo electrónico.
El script comprueba las siguientes partes importantes:
DNS: ¿Están configurados correctamente los registros DNS y las direcciones del servidor DNS?
Latencia: comprueba la latencia de cada controlador de dominio.
Tiempo de actividad : lectura de la actualización del controlador de dominio
Dominio Roles: verificar que cada titular de FSMO sea accesible
Espacio libre: verifique el espacio libre en la unidad del sistema
-
Tamaño de la base de datos de AD: lee el tamaño de la base de datos de AD
Servicios: compruebe si todos los servicios importantes (13) están en funcionamiento
DCDiag : ejecuta las pruebas DCDiag predeterminadas
Replicación: comprueba el último intento de replicación, el éxito y el delta.
Compensación de hora NTP: comprueba si la compensación NTP no es demasiado grande
Comprobando DNS
Una de las primeras pruebas que estamos haciendo en el script es verificar la configuración de DNS. Queremos asegurarnos de que los registros DNS de cada controlador de dominio estén registrados en el DNS.
También queremos asegurarnos de que los servidores DNS en el adaptador de red estén configurados correctamente.
Latencia
La prueba de ping no sólo comprobará si se puede acceder al servidor, sino que también mostrará una advertencia si la latencia es demasiado alta. La latencia en una red local debe ser inferior a 10 ms, pero cuando tiene varios controladores de dominio en diferentes sitios, la latencia está bien siempre que sea inferior a 100 ms.
tiempo de actividad
El tiempo de actividad es más informativo, pero mostrará una advertencia cuando el servidor esté funcionando durante menos de 12 horas.
Roles de dominio
Para mantener sincronizada la información de su Active Directory en todos los controladores de dominio, existen 5 funciones FSMO. Para cada rol, sólo hay un maestro. En la mayoría de los casos, todas las funciones las realiza un controlador de dominio. Pero en algunos casos, es posible que haya dividido las funciones entre varios controladores de dominio.
Es importante que el servidor para cada uno de esos roles esté disponible. En el script, verificamos si los controladores de dominio tienen uno o más roles y verificamos si podemos comunicarnos con el servidor para los otros roles. Cuando uno está desconectado, se mostrará una alerta en la exportación.
Servicios
El controlador de dominio requiere un par de servicios para ejecutarse. Ahora estos también se comprueban de forma predeterminada con la prueba DCDiag. Pero para los informes es más fácil verificar los servicios por separado, por lo que podemos mostrar fácilmente los servicios que no se están ejecutando.
Se verifican los siguientes servicios:
Servicios de dominio de Active Directory
Servicios web de anuncios
Replicación DFS
cliente DHCP
Cliente DNS
Servidor DNS
Mensajería entre sitios
Centro de distribución de claves Kerberos
Inicio de sesión de red
Procedimiento de llamada remota
Servidor (servidor Lanman)
Gerente de Cuentas de Seguridad
Estación de trabajo (estación de trabajo Lanman)
Registro de eventos de Windows
Hora de Windows, estación de trabajo
DCDiag
El script ejecutará las pruebas DCDiag predeterminadas, excepto las pruebas de servicios. Si una de las comprobaciones falla, se le indicará cuál de las pruebas falló.
Replicación
Para una buena salud del controlador de dominio, es importante que la replicación entre sus controladores se ejecute sin problemas. Para monitorear esto, veremos tres métricas:
Último intento de replicación
Última replicación exitosa
Delta de replicación
El informe también mostrará el socio de replicación del servidor.
Desplazamiento de tiempo
Lo último que vamos a comprobar es la diferencia horaria entre los servidores. Esto debería ser dentro de más o menos un segundo. Si el desplazamiento es mayor, entonces puede tener problemas de replicación con sus otros controladores de dominio o problemas de autenticación en su red.
Script de estado del controlador de dominio
El script de PowerShell para verificar el estado de sus controladores de dominio le permite verificar fácil y periódicamente el estado de su Active Directory y sus servidores. Puede programar el script para que se ejecute cada semana y guardar los resultados en un archivo HTML. O puede ejecutar el script manualmente y ver los resultados directamente en la consola.
Puedes descargar la última versión del script aquí desde mi repositorio de GitHub.
Al comienzo del script, encontrará un par de configuraciones que puede configurar. Estos incluyen el nombre y la ubicación del archivo y el formato de salida deseado.
# Set variables
$reportDate = Get-Date -Format "dd-MM-yyyy"
$reportFileName = "LazyDCHealthCheck-$reportDate.html"
$reportPath = "c:\"
$outputToConsole = $true
$outputToHtml = $falseDeberá ejecutar el script en un controlador de dominio. Usar una PSSession no funciona porque generará errores cuando los scripts intenten conectarse a los otros controladores de dominio.
Cuando ejecute el script con la salida a la consola activada, obtendrá un resultado similar al siguiente (con suerte, con menos errores ?). El recuento de errores al final del script cuenta todos los errores de DCDiag como uno, por eso solo ve dos errores en el resumen del siguiente ejemplo.
También podemos exportar los resultados del estado del controlador de dominio a HTML. Puede hacer esto en dos formatos, según la cantidad de controladores de dominio en su red. Si solo tiene uno o dos controladores de dominio, cada controlador de dominio se enumerará verticalmente, lo que facilitará la visualización de los resultados en un correo electrónico, por ejemplo.
Pero si tiene más controladores de dominio, entonces es más fácil leer los resultados de la verificación de estado de Active Directory si aparecen listados horizontalmente.
Alrededor de la línea 551 del script, encontrará la declaración if a continuación. Esta declaración determina si obtiene la tabla horizontal o vertical. Puedes cambiar este número si prefieres la tabla horizontal o vertical.
if ($allDomainControllers.length -gt 2) {Terminando
Es importante comprobar periódicamente el estado de su controlador de dominio para detectar posibles problemas desde el principio. Este script verifica las partes más importantes de su servidor y Active Directory y le permite ver fácilmente el resultado en la consola PowerShell o en un informe HTML.
Asegúrese de consultar este artículo para leer más sobre la programación de tareas de PowerShell.
Si tiene alguna sugerencia para los scripts o encuentra algún error, hágamelo saber en los comentarios a continuación o aquí en GitHub.


