Procesamiento alterno de inventarios
Reduce el tiempo de procesamiento de archivos de inventario con respecto al esquema normal con el servicio KeeperTask.
Requerimientos
Archivos en el servidor Discovery
- Estructura de directorios adv1). El nuevo directorio adv debe estar creado dentro del directorio LeverIT\Discovery\Deposit del servidor Discovery.
-
- El archivo inbddjbk.dll. es una librería para procesamiento de inventarios. Incluida en versión.
- El archivo CambiosBDD.txt es para definir las alarmas de inventario. Crear manualmente siguiendo la siguiente estructura2):
NOMBRE_ALARMA,DESCRIPCIÓN_ALARMA,TIPO(1 AGREGAR, 2 ACTUALIZAR, 3 BORRAR), NOMBRE_TABLA,CAMPOS_AFECTADOS
Ejemplo:
CAMBIO PROCESADOR,CAMBIO PROCESADOR,2,CPU,TIPO_DEL_PROCESADOR
- En el archivo Tab.txt. se incluye el listado de tablas de inventario, agregar un nombre de tabla por línea.
Ajuste en el Registro
Crear el valor de cadena AdvActived dentro de la llave de registro LeverIT\Discovery:
VALOR | TIPO | DATO Y DESCRIPCIÓN |
AdvActived | REG_SZ | Con valor igual a 0: Sistema deshabilitado, en este caso el Transnor.exe recibe los inventarios y los ubica en la raíz del directorio Deposit para que sean procesados por el servicio KeeperTask. |
Con valor igual a 1: Sistema habilitado, en este caso el Transnor.exe recibe los inventarios y los ubica en la raíz del directorio adv |
Ajustes requeridos en base de datos y/o internos
La versión p_9_5 ya tiene estos cambios en la base de datos y archivos internos.
Para el correcto funcionamiento del nuevo esquema de procesamiento se deben realizar unos ajustes al interno de la base de datos:
- En la definición de la tabla DISCOS_LOGICOS, EVENTONOFF se deben cambiar las etiquetas ADN por VAR.
- Se debe ampliar en la tabla HARDWARE el tamaño del campo DESCRIPCION_H de varchar(50) a varchar(150).
- Se debe ampliar en la tabla SOFTWARE el tamaño del campo NOMBRE_SW de varchar(100) a varchar(150).
Funcionamiento
El servicio Transnor.exe lee el valor en el registro AdvActived=1 cuando inicia y ubica los inventarios que lleguen al directorio adv
El archivo Keeper2.exe abre el archivo de inventario y genera un archivo con un nombre especial basado en el IDCPU de la estación el cual ubica en el directorio base1. El archivo contiene la última información de inventario de la estación.
En el directorio base2 se crea un archivo con el nombre personalizado de la estación para tener control de las máquinas que se han procesado.
Adicionalmente genera en el directorio adv\orden las respectivas instrucciones INSERT, DELETE, UPDATE o CHANGE para mantener actualizada la información de la estación en la base de datos.
En caso de presentarse error con algún inventario, el archivo se copia al directorio adv\error
Los archivos de inventarios que ya se han procesado se copian al directorio adv\ok
Para habilitar o deshabilitar el almacenamiento de inventarios procesados en el directorio ok crear el siguiente valor de cadena en la llave de registro LeverIT\Discovery:
VALOR | TIPO | DATO Y DESCRIPCIÓN |
debugok | REG_SZ | Con valor igual a 0: Sistema deshabilitado, no almacena inventarios en el directorio ok |
Con valor igual a 1: Sistema habilitado, deja copia de cada inventario procesado en el directorio ok |
El archivo KeepSQL2.exe toma las instrucciones del directorio adv\orden y las ejecuta directamente en la base de datos. Se toman archivos de 20 en 20 hasta finalizar. Si existe configuración de alarmas en el archivo CambiosBDD.txt3) se procesan según se presenten y se registran en la tabla CAMBIOS de la misma forma en la que lo hace el servicio KeeperTask.exe. Después de procesados se eliminaran de forma automática los archivos.
En el directorio control se crean archivos temporales requeridos para el funcionamiento del Keeper2 y el KeepSQL2.
Después de ser procesado un inventario y cumplido todo el proceso de verificación de información los siguientes directorios deberían estar vacíos: adv, aRevisar, basetemp y orden.
Inicialización de directorio base1 con Base de datos llena
Verificar que el directorio cpus se encuentre creado dentro del directorio Software y que ya estén copiados todos los archivos necesarios.
- Si la base de datos ya tiene registradas estaciones, se debe realizar un proceso adicional para inicializar el directorio base1.
Apagar los servicios del servidor Discovery.
- Para exportar los CPU de la base de datos ORACLE
Ejecutar el archivo KeepSQL2.exe agregando el parámetro: /GENDB. Cuando inicie el servicio comenzará el proceso.
Para el procesamiento de inventarios (después de la exportación) iniciar el servicio sin parámetro.
- El sistema iniciará la exportación de la información de cada máquina registrada en la base de datos a su archivo equivalente de inventario (jvg) en el directorio Software\cpus. Se debe esperar a que todos los registros sean exportados. Una vez finalizado el proceso se debe cambiar la extensión de todos los archivos de jvg a jbk 4) y copiarlos en el directorio adv\base1
- Finalmente convertir el formato del nombre de archivo al que requiere el sistema, para este proceso ejecutar el archivo GenereIDCPU.exe el cual cambiará el nombre de todos los archivos del directorio base1. Como resultado se crearán los directorios:base10 y base20. Los directorios base1 y base20 se deben eliminar y el directorio base10 se debe renombrar como base1
- Finalizado el proceso de exportación y ajuste de archivos en base1 se pueden iniciar de forma normal los servicios Discovery.
Dependiendo del número de equipos registrados en la base de datos Discovery y la topología de implementación existente el tiempo para exportar la información a archivos JVG puede ser menor o mayor.
Ejemplo: En un escenario con 10.000 estaciones registradas en la base de datos y motor de base de datos local, el proceso de exportación puede tomar de 2 a 3 horas para generar los archivos de inventario requeridos para inicializar el directorio base1
Extensión de archivos que genera el sistema según directorio
DIRECTORIO | EXTENSIONES Y/O ARCHIVOS | DESCRIPCIÓN |
adv | jdh | Directorio en el cual se reciben los inventarios de las estaciones |
aRevisar | prd | Indica las estaciones que han sido procesados y están pendientes por verificación de consistencia |
base1 | jbk | Último inventario de cada estación |
base2 | jbk | Seguimiento de equipos que ya se han procesado |
basetemp | jvg | Directorio temporal para el proceso de consistencia de datos |
control | checkbdc.num, checkbdd.bin, logch#.txt | Directorio temporal de procesamiento y generación de logs con nombre logch#.txt, donde # es el consecutivo del log generado |
error | Directorio con archivos que no se procesaron por algún error propio del archivo | |
Nonet | jdh | Directorio especial para control de inventarios de las estaciones sin red. Todo lo procesado de este directorio deja el valor NO en el campo AGENT.A_CONNECTED |
orden | chg, ins, del | Archivos que contienen las instrucciones UPDATE, INSERT, DELETE para afectar la base de datos |
Logs asociados al procesamiento
Crear de forma manual, únicamente recomendados para tareas de diagnóstico.
NOMBRE DE LOG | FUNCIÓN |
C:\LOG\1 | Log del Keeper2.exe. 1 es el nombre del directorio |
C:\LOG\LOGSTDBD.TXT | Log del Keeper2.exe |
C:\LOG\VA.TXT | Log del Keeper2.exe. Registra los archivos que encuentra para procesar en el directorio adv5) |