Manage Replication Status

La joya de la corona, unos de los primeros y de los que, a pesar de poder ser mejorado, nunca he querido modificarlo, mas por cariño y añoranza de saber que al ser de los primero es tal y como es él.

Comprobamos el status de la replicación de los controladores de dominio, de múltiples dominios, parseando las líneas y detectando si hay o no errores en la replicación. En función a estos podemos definir el texto del mensaje de correo y a las cuentas a las cuales lo vamos a dirigir.

Simple, conciso y efectivo, en un solo bloque y creo que no es necesario explicarlo…

image

Y el resultado….. mejor que lo ejecutéis en vuestros dominios y evaluéis por vosotros mismo la calidad y cantidad de información de la que podéis disponer.

Mi recomendación, es que lo ejecutéis a través de una tarea programada cada 45 minutos.

Health Status AD

Una de mis últimas incorporaciones, ese maravillo listado que de vez en cuando nos piden y como entre uno y otro pasa tanto tiempo, apenas tenemos ganas de acordarnos como lo hicimos la ultima vez. Pues bien, aquí esta el Script que básicamente comprueba;

  1. Inactive User
  2. Inactive Computer
  3. User Created in Week
  4. Pass Never Expire

El script es multi funcional, permitiendo que añadáis cualquier tipo de informe extra que necesitéis en vuestro día a día.

Comencemos por las variables

image

Recopilemos la información de los controladores de dominio

image

Vamos preparando nuestro excel

image

Segunda “Hoja”

image

image

Tercera “Hoja”

image

image

Cuarta “Hoja”

image

Quinta “Hoja”

image

image

Encabezado, terminamos y cerramos nuestro excel.

image

Y como no, un clásico, lo enviamos por mail…

image

Y como muestra un botón…

image

En este si que acepto, comentarios, aportaciones, mejoras y sobre todo, la actualización a utilizar Excel 2013…

Health Check Status (RtP)

A quien no le ha ocurrido alguna vez que creyendo que ese servidor magnifico estaba listo para ser puesto en producción,  se ha llevado la decepción del siglo ya que al ponerlo en marcha el pobrecito del “server” disparaba alertas por todos lados.

Para evitar esto, lo señores del ITIL ( que son un conclave de viejos raquíticos y tristes) decidieron declinar la importancia de este proceso al “Release to Production” o vulgarmente puesta en producción.

Pues bien, yo he sufrido en mis carnes eso de “ponlo, ponlo en producción si nunca ha tenido ningún problema…”, para lo cual me he creado este script (un todo formado por partes de otros scripts) que es un vistazo inicial, nos da el “status” real de la maquina y genera un informe para que podamos aportar “pruebas” a la decisión de ponerlos en producción. Todavía en “fase de pruebas”, pero muy funcional en esta versión.

Claro, en HTML, multi-servidor, y muy, muy gráfico.

Como es costumbre comencemos por declarar las variables que vamos a utilizar.

image

Creamos el gráfico…

image

Comprobamos el Up Time de nuestro servidor

image

Comenzamos con la cabecera del informe y el CSS (estilo que no falte) (ojo que son varias partes)

image

image

Comprobemos el espacio del que dispone en los discos

image

Localizamos la información del Sistema

image

Comprobamos los servicios

image

Comprobamos el Event Log de la maquina

image

Creamos y guardamos el gráfico al mismo tiempo que Up Time

image

Y nos metemos en faena, cual Quijote tecnológico para detallar el informe

image

image

Informe listo, pues démosle al email

image

Si lo ejecutamos, servidor a servidor, podemos añadir el grafico al mensaje de correo con un adjunto más, si ejecutamos un bloque de servidores no, ya que a fecha de hoy no he conseguido solventar el problema de que solo me deja que la cadena de caracteres del adjunto no supere los 260 (pero estamos trabajando en ello)

El ansiado resultado (todavía me sigue dejando con la boca abierta)

image

Prometo terminarlo y hacer que sea muy muy gestionable…

Printer Status / Queue Status

Este es un problema relativamente “joven”, hasta hace poco tiempo no tenia que preocuparme del estado de los servidores de impresión ni del estado de las “colas”, pero ahora tengo un servidor de impresión crítico para el negocio y he generado este script que me muestra el estado del servidor y los trabajos que están en curso. Tengo una tarea programada que lo ejecuta cada hora y envía el reporte por correo electrónico.

Iniciamos las variables que necesitamos en nuestro script.

image

Comprobamos y generamos el fichero del reporte, y limpiamos los antiguos. En esta versión del script y por necesidades del servicio, acumulamos estos reportes en la carpeta de Report.

image

Escribimos el encabezado del informe que vamos a generar.

image

image

Creamos la primera fila con los títulos de los campos

image

Ahora comenzamos a comprobar el estado de las “colas” de nuestro servidor de impresión.

image

Una vez que obtenemos los datos, comprobamos el estado de la “cola” y determinamos el color que debería de tener …

image

Escribimos la fila con la información obtenida

image

Colocamos el pie del informe o en su defecto la leyenda que queramos indicar en función a los colores …

image

Enviamos el correo electrónico con el contenido del informe (reporte)…

image

La estructura que nos queda al final es la siguiente:

image

Check Disk Space for Multiple Server

No me digáis que nos habéis sufrido el “ataque loco” de esa aplicación que por la noches es capaz de fagocitar todo el espacio libre de los discos de nuestros servidores. Pues bien, yo me he generado un script que de manera gráfica me envía un mensaje de correo con el espacio disponible en los discos de los servidores.

Sencillo a la vez que sutil.

La primera parte del script, es de rigor, cargamos las variables que vamos a necesitar para controlar todo el proceso.

image

Leemos el contenido de nuestro fichero de servidores y limpiamos los informes antiguos, aunque en el caso que os muestro, se almacenan en la carpeta report para mantener un histórico de los mismos.

image

Generamos el diseño de nuestro formato de informe, en HTML

image

image

Creamos el formato de la tabla y escribimos las primeras columnas

image

Comenzamos a evaluar los espacios en disco de la lista de servidores que hemos leído inicialmente.

image

Una vez que disponemos de la información, escribimos la columna con los datos

image

Añadimos el “pie de página” con la leyenda de los colores que hemos utilizado.

image

Una vez que tenemos “toda”la información de nuestros servidores, comenzamos la generación y envío del correo electrónico.

image

Y la verdad es que el resultado, es digno

image

image

Como siempre, agradezco vuestros comentarios y/o aportaciones para mejorar el funcionamiento y/o rendimiento del script y espero que os sirva de ayuda.

Network Protocol Time (windows OS)

Desde hace bastante tiempo, siempre he sufrido los problemas ocasionados por la des sincronización horaria de las maquinas con OS Windows. Pues bien, hace poco he generado un script en PowerShell que me permite tener un control sobre la sincronización de los controladores de dominio y sobre mis dos servidores que utilizo para que sincronicen la hora con las fuentes externas.

Mi infraestructura esta diseñada de la siguiente manera;

– Dos DataCenter y en cada uno de ellos 2 servidores de sincronización de tiempos (NTP01 y NTP02) con 8 fuentes externas; 3 de un proveedor (en tres continentes diferenciados) y 5 de otro (en 5 continentes diferenciados)

El resto de los controladores de dominio de la organización, sincronizan la hora con estos dos servidores, en orden inverso; primero el 02 y segundo el 01. Inicialmente el controlador de dominio con el ROL de PDC es el que marca la hora para el resto de maquinas de la infraestructura.

El script se divide en las siguientes partes;

Definimos las variables del mensaje de correo electrónico

image

Comprobamos que los ficheros que tenemos de control y si existe el fichero que utilizamos para almacenar el contenido de la comprobación lo borramos. Aprovechamos para crear el fichero correspondiente a la comprobación.

image

A continuación cargamos la variable para realizar las comprobaciones de tiempo sobre las maquinas indicadas.

image

Ejecutamos el comando de comprobación de tiempos para cada servidor, cargamos el ficheros de datos inicial y parseamos el contenido al fichero final de reporte.

image

Una vez que completamos el contenido de los ficheros con la comprobación, evaluamos si cualquiera de ellos tenga un  delay superior o inferior a  10s con un offset superior a 250.

image

Si esto valores se superan o son iguales a los valores de la comprobación, enviamos el mensaje de correo electrónico. En este punto, también podemos ampliar el script con la ejecución del comando de sincronización horaria en aquellos servidores que sufren este desfase. Inicialmente, en esta primera versión del script, el scope solo es la comprobación de la correcta sincronización de los mismos.

image

Este script, almacena un reporte cada vez que es ejecutado en la ruta indicada. El formato de mi estructura para este y otros script es:

image

Así controlamos la sincronización de nuestros servidores. Como siempre, estoy abierto a cualquier tipo de comentarios o mejoras que se puedan implementar en el script, para mejorar el control de la sincronización de tiempos en los servidores.

Esos informes de mis Windows

How to launch the PAL tool

1. Ensure that the PAL tool and dependency components have been installed from http://www.codeplex.com/PAL .

2. Click Start, Run, and then PAL. This will launch the PAL wizard interface.

How to create a counter log file using PAL

Follow these steps to create a counter log .htm file once the PAL wizard has been launched. Note: This contains very specific counters instead of the full counter set that perfwiz uses, so you can choose how granular you would like to get.

1. Launch PAL.

2. Click the Threshold File Tab.

3. In the Threshold File Title drop down box, select the Threshold File Title version of your choice
clip_image001

4. Click the clip_image002

5. Save the settings to a .htm file. Follow the steps in the Exchange 2007 Perfwiz replacement steps at http://blogs.technet.com/mikelag/archive/2008/05/02/perfwiz-replacement-for-exchange-2007.aspx starting at step 4 to import this .htm file in to Performance monitor.
Note: This export feature only works on Windows 2003 servers since the ability to import htm files in Windows 2008 has changed. I will post an update on how to do this on Windows 2008 servers at a later time.

How to run the PAL wizard

1. Launch PAL. This will bring you to the Welcome Screen. Click Next

2. On the Counter Log tab, select a blg file of your choice. Click Next
clip_image003

3. Select the appropriate threshold file
clip_image001[1]

4. Answer any questions that are listed on that page. The answers to these questions are required so that during the processing of each performance file, we consume this information and pass this in to the tool for proper calculations. Click Next once finished.
clip_image004

5. On the Analysis Interval tab, select the interval that you would like to use. Note: The default of AUTO is recommended as that is the best performance option for running the tool. Any changes to this setting could cause the report generation process to be that much slower, but will allow you to get a little more granular if needed.
clip_image005
Click Next.

6. On the Output Options tab, you can select an Output Directory to store the PAL reports and what format you would like to use. Click Next once you have made your selections.
clip_image006

7. On the Queue tab, you will notice the parameters that will be passed in to the PAL tool for processing. Click Next if this satisfies your needs.
clip_image007

8. On the Execute tab, you can execute what you have just added to the queue or you could add more items to the queue for processing.
clip_image008

9. Click the clip_image009to execute the queued items.

This is a resource intensive application while these perfmon files are being parsed, so I would recommend using your fastest machine to run these reports on. Once PAL has completed processing the queued items, an IE window will open for each report in the queue.

I hope you have found this information useful and if you should have any questions regarding the tools usage, any possible problems that you may run in to or just suggestions to improve the tool, you can email paltool@microsoft.com

Happy reporting!!!