Hasta el día de hoy, todas las entradas que he hecho en este blog sobre ACT, muestran cómo aplicar determinado shim para solucionar algún problema de aplicaciones como la corrección de rutas o mentira sobre versión; sin embargo, ese no es el único propósito de ACT, así que deseo dedicar este artículo para mostrar algo muy útil en una organización: realizar inventario de aplicaciones instaladas de una forma fácil y rápida.
Requerimientos
1. Descargar el ADK para Windows 8.1 Update desde aquí:
http://www.microsoft.com/en-us/download/details.aspx?id=39982
Ver “Instalando ADK” abajo para las instrucciones de instalación.
*Nota: La descarga solo baja un pequeño cliente que sirve para bajar el contenido completo o instalarlo desde la web. Recomiendo bajar todo antes de instalar.
2. Servidor 2012 R2 que puede ser o no dedicado y que esté unido al dominio de la organización.
*Nota: No es estrictamente necesario que sea Server 2012 R2, pues el ADK funciona desde 2008, incluso en equipos cliente también.
2.1. Crear una carpeta en cualquier unidad llamada: ACTLogs.
3. Equipos cliente que estén unidos al dominio para tomar el inventario.
4. [Opcional] Descargar e instalar SQL Server 2012 Management Studio Express desde aquí:
https://www.microsoft.com/en-US/download/details.aspx?id=29062
Instalando ADK
Cuando descarguemos todo el contenido, pasamos los archivos de instalación al servidor destinado para el ACT, hacemos doble clic sobre el adksetup.exe y procedemos con los siguientes pasos:
1. En la página de Specify Location, escogemos la ruta donde deseamos instalar el ACT, preferiblemente en la que está predeterminada y clic en Next:
2. En la página Join the Customer Experience Improvement Program (CEIP), escoger si deseamos unirnos al programa y clic en Next:
3. En la página de License Agreement, clic en Accept:
4. En la página Select the features you want to install, seleccionamos: Application Compatibility Toolkit (ACT) y, en caso de no tener una base de datos implementada, SQL Server 2012 Express. Luego hacemos clic en Install:
*Nota: La base de datos se utiliza para guardar el inventario recolectado por el Application Compatibility Manager (ACM), incluido en el ACT.
5. En la última página del asistente, clic en el botón Close para terminar.
Instalando y Configurando ACM
En el Windows Server, buscamos Application Compatibility Manager, clic derecho y Ejecutar como administrador:
En la página de Welcome to the ACT configuration wizard, clic en Next:
En la página de Do you want to use this computer to run an ACT Log Processing Service?, dejamos la selección de Yes para que el servicio se instale en el mismo equipo y clic en el botón Next:
En la página de Configure your ACT Database Settings, escogemos (local)Settings y luego en el botón de Connect para realizar la conexión a la base de datos:
Una vez detectada, le ponemos el nombre de ACT a la base de datos y clic en Next:
En la página de Configure Your ACT Database Settings, clic en el botón Next para iniciar la configuración automática:
En la página de Configure Your Log File Location, hacemos clic en el botón Browse para seleccionar la carpeta ACTLogs creada en el requerimiento 2.1 y clic en Next:
En la página de Configure Your ACT Log Processing Service Account, dejamos la selección de Local System y clic en Next:
En la página Congratulations, clic en Finish para terminar:
Configurando el Data Collection Package
En la consola de Microsoft Application Compatibility Manager, clic en el menú File y seleccionamos New:
En la ventana de Create a data-collection package, clic en el botón de Invetory collection package para crear el paquete que se encargará de recolectar el inventario de aplicaciones en nuestros equipos:
En la página de Set up your inventory package, le damos un nombre a nuestro paquete y una etiqueta para diferenciarlo; después de esto, clic en el botón Create:
Posteriormente, escogemos una ruta donde queramos guardar el MSI que vamos a distribuir:
Clic en Finish para terminar.
Cerramos la consola del ACM.
Modificando permisos en ACTLogs
Antes de desplegar el paquete que hará el inventario, es necesario modificar unos permisos de seguridad sobre la carpeta ACTLogs creada en los requerimientos. Para esto, seguimos estos pasos:
1. Navegamos hasta la carpeta ACTLogs, clic derecho y Properties:
2. Vamos a la pestaña de Sharing y luego Advanced sharing:
3. Clic en el botón Permissions:
4. Clic en el botón Add, escogemos Domain Computers, aceptamos y luego asignamos permisos para cambiar:
5. Clic en OK dos veces y luego pasamos a la pestaña de Security.
6. Clic en el botón Edit:
7. Clic nuevamente en el botón de Add, buscamos Domain Computers, clic en OK y luego asignamos permisos de escritura:
8. Clic en OK y luego en Close para terminar.
Distribuyendo y probando
Nuestro último paso es lograr ejecutar el .MSI que nos creó el ACM en todos los equipos donde deseamos tener inventario de aplicaciones; lo podemos hacer a través de la red con alguna solución como directiva de grupo o bien manualmente en cada equipo.
El cliente reporta perfectamente tanto para equipos cliente, como para equipos servidor. Por ejemplo, estas son las aplicaciones que tengo instaladas en el equipos destinado para ACT:
Basta con ejecutar el ACT_Inventory.msi creado con una cuenta que tenga privilegios administrativos y lo único que veremos será un pequeño progreso.
Al abrir nuevamente la consola del ACM, vamos a la pestaña inferior izquierda de Analyze y en la pestaña de Windows 8.1 veremos información previa de lo que se recolectó:
Al hacer clic en el nodo de Applications, podremos ver todas las mismas aplicaciones pero en el inventario hecho por el cliente ACT_Inventory que creamos:
El inventario hecho en equipos Server 2012 R2 se verán en el mismo nodo de Windows 8.1. Si nos pasamos a la pestaña de Computers en el panel izquierdo, podremos ver de todas formas de qué sistema operativo proviene:
Como mencioné antes, otra forma de realizar este despliegue sería como un Script de arranque a través de Directiva de Grupo:
Como recomendación, es más productivo desplegarlo con alguna solución como SCCM.
En la lista de equipos, se puede ver cada equipo en particular haciendo doble clic; todos los datos estarán disponibles:
Naturalmente, entre más equipos se reporten, más grande será el inventario en ACM:
Desde ACM podemos además hacer doble clic sobre una sola aplicación y ver en cuántos equipos está instalada, o qué versiones son las que existen:
Intentará en un futuro artículo hablar sobre el otro tipo de paquete, y operaciones adicionales que se puede hacer desde el Application Compatibility Manager.
Espero sea de utilidad.
No olviden seguirme en Twitter: www.twitter.com/secalderonr
Saludos.
Checho