WMI_Grupo_B_definitivo_v2 - GSIC

Anuncio
1
Análisis de la gestión integrada mediante WMI
J.A. Álvarez González, L. García Fernández, A. Matrán Fernández. Grupo WMI_B, Asignatura
Complementos de Telemática II, ETSI Telecomunicaciones, Universidad de Valladolid
21 de Mayo de 2010
Abstract – La gestión integrada de sistemas es un tema que hoy
en día tiene gran relevancia a la hora de gestionar grandes redes
de ordenadores. Con este informe se pretendió estudiar una
herramienta compatible con S.O. Windows que permitiera
efectuar tal objetivo. Se eligió WMI, que es la implementación del
estándar WBEM del Grupo de Trabajo DMTF en los equipos con
sistema operativo Windows. Se realizaron varios experimentos
para ver la calidad de esta herramienta. Primero se obtuvo
información de gestión de las MIBs instaladas en la máquina local
desde donde se operaba, obteniendo resultados satisfactorios. A
continuación, se estableció una comunicación inalámbrica entre
dos host y desde la máquina origen se extrajo información de
gestión del agente SNMP situado en el otro ordenador. También
se obtuvieron buenos resultados.
En conclusión, WMI es una buena herramienta para hacer
gestión integrada en máquinas con S.O. Windows.
Palabras clave: agente, gestor, proveedor, qualifiers, WBEM,
CIM, WMI.
I. INTRODUCCIÓN
En el mundo corporativo, la gestión de las máquinas que
conforman una empresa es una tarea ardua y compleja que
puede ser mucho más llevadera cuando se utilizan las
herramientas adecuadas. Esta dificultad reside en varios
problemas: por un lado, las máquinas que componen un
sistema distribuido pueden pertenecer a varios fabricantes
distintos, de modo que el gestor del sistema debe ser capaz de
comunicarse correctamente con todas ellas. Por otro lado, el
hecho de que las máquinas se encuentren en distintas
localizaciones y no en una sola habitación, puede complicar
mucho la parte de gestión de la empresa. Un ejemplo de
herramienta de gestión integrada es WMI (Windows
Management Instrumentation) [1] de Microsoft. Hay una gran
variedad de técnicas de gestión que pueden aplicarse en
multitud de escenarios, haciendo la vida de los gestores de red
mucho más sencilla cuando se utilizan adecuadamente.
Este informe pretende ser una breve introducción a algunas de
las formas de gestión que pueden hacerse con WMI, la
implementación de Microsoft de WBEM (Web-Based
Enterprise Management) [2]. WBEM es una iniciativa de la
industria para desarrollar un medio estándar y no propietario
de acceder y compartir información de gestión en la red de una
empresa. Pretende, por tanto, solucionar el problema de
recolectar datos de gestión y diagnóstico extremo a extremo en
redes que pueden incorporar hardware de distintos fabricantes,
así como distintos sistemas operativos y aplicaciones
distribuidas. Las dos partes principales del estándar WBEM
son la especificación CIM (Common Information Model) [3] y
el esquema CIM.
En la práctica descrita en esta memoria se plantearon varios
escenarios de prueba (tanto en una sola máquina como en
varias conectadas por una red ad hoc) y se sometió a la
herramienta software CIM Studio y a todos los elementos que
intervienen en la arquitectura de WBEM a los mismos, de
modo que se pudiera evaluar una serie de criterios de dicho
programa, como su configuración, usabilidad, etc. Asimismo,
se recogen aquí los resultados obtenidos de dichos escenarios,
de modo que puedan ser fácilmente reproducibles por otros
interesados en un primer acercamiento a este entorno de
trabajo.
La organización del presente documento es la siguiente: en la
sección II se describe brevemente WMI a modo de
introducción para aquellos que no hayan trabajado con él. A
continuación, en la sección III, se describen los escenarios con
los que se trabajó, mientras que en el apartado IV se hablará
de los pasos necesarios para la reproducción de los
experimentos. Finalmente, en la sección de conclusión (la
quinta de este informe) se llevará a cabo una discusión acerca
de la adecuación del programa CIM Studio como herramienta
de gestión de sistemas distribuidos, se describirán las
bondades y puntos débiles encontrados durante los
experimentos realizados y, por último, se hará una valoración
crítica de dicho software.
II. WMI (WINDOWS MANAGEMENT INSTRUMENTATION)
WMI es la implementación del estándar WBEM del grupo de
trabajo DMTF (Distributed Management Task Force) en los
equipos con sistema operativo Windows para integrar diversos
estándares existentes de administración de recursos, como
SNMP, DMI o CMIP, en una sola arquitectura.
La tecnología WMI se basa en el estándar CIM, que se emplea
para crear modelos orientados a objetos que representan
cualquier elemento susceptible de ser administrado, ya sea
algo físico (hardware) o algo lógico (software).
La arquitectura de WMI está formada por las aplicaciones
gestoras (clientes), una infraestructura de administración,
constituida por el CIMOM (Administrador de Objetos CIM) y
el repositorio CIM, y por los Proveedores de objetos, que
actúan como intermediarios entre el CIMOM y los agentes de
gestión.
El CIMOM maneja las interacciones entre las aplicaciones
gestoras y los proveedores y determina si la información es
estática (y se encuentra almacenada en el repositorio CIM) o
dinámica (y se encuentra a través de los proveedores de
2
objetos).
El repositorio CIM está estructurado en espacios de nombres
(namespaces). Un namespace es una unidad lógica para el
agrupamiento de clases e instancias y control de su área. Estas
clases relacionadas representan una tecnología específica o un
área de administración.
Las aplicaciones gestoras y los proveedores de objetos
interactúan con el CIMOM por medio de cualquier lenguaje de
programación que pueda registrar objetos COM, debido a que
CIMOM provee de varios interfaces de programación como
DCOM, ODBC (Open DataBase Connectivity), tecnologías de
internet y scripts. Por otra parte, los proveedores de objetos se
comunican con los agentes de gestión a través del protocolo
SNMP.
Para la definición de las clases e instancias asociadas a los
recursos administrados (i.e. para la información de gestión) se
proporciona un lenguaje con un significado más textual
llamado MOF (Managed Object Format), de manera que no
sea necesario trabajar con el API de CIMOM. Las
especificaciones en lenguaje MOF son procesadas por el
compilador MOF.
III. METODOLOGÍA
El estudio realizado en este informe se centra en el uso de
WMI como herramienta de gestión integrada de sistemas para
analizar su calidad y resultados ante diversos escenarios.
El problema inicial planteado era encontrar una herramienta
compatible con el sistema operativo Windows para hacer
gestión integrada basada en tecnologías web. Se pensó en la
arquitectura WBEM, cuyo esquema característico se muestra
en la figura 1.
La siguiente opción considerada fue el uso de WMI con las
herramientas que incorpora para manejar toda la información
de la red (de los sistemas). WMI, como ya se había
mencionado en apartados anteriores, es la implementación del
estándar WBEM del grupo de trabajo DMTF.
ordenadores: uno con S.O. Windows XP (que, a partir de
ahora, se llamará Máq_XP) y otro con S.O. Windows 7 (que, a
partir de ahora, se denominará Máq_7). El motivo de hacerlo
en dos ordenadores distintos fue abrir la posibilidad de probar
la gestión distribuida. Además, al tener distintos sistemas
operativos, podría verse algo de gestión integrada.
La herramienta que se usó como visualizador web de
información fue WMI CIM Studio. Esta se abre en un
explorador web sobre el que se ve la información que el
usuario solicita al agente SNMP. En el apartado IV se detallan
los pasos que se realizaron con esta aplicación web para la
realización de los diferentes experimentos.
Estos experimentos consistieron: primero, en una serie de
pruebas locales que sirvieron para comprobar la correcta
configuración del CIM Studio y del agente SNMP (sección
IV.A); segundo, en la compilación e instalación de una MIB
para ver el funcionamiento del compilador MOF (sección
IV.B); y tercero, en la realización de una red WiFI ad hoc
entre las dos máquinas mencionadas más arriba para poder
comprobar en vivo el funcionamiento de la gestión distribuida.
En este último caso, se solicitó a Máq_7 desde Máq_XP la
misma información que se había pedido localmente a esta
última en el primer experimento.
Otra aplicación usada en el transcurso de las pruebas fue
SysUpTime, versión 5.3 [5], que es un gestor de redes con los
recursos necesarios para controlar minuciosamente el tráfico,
estado y carga de los dispositivos de una red. El papel de este
programa era hacer peticiones de gestión a través del
protocolo SNMP a agentes, para ayudar a localizar y
solucionar los problemas que fueron surgiendo.
Con las herramientas descritas se desea conseguir información
de gestión contenida en diferentes MIBs que soportan las
propias máquinas y el S.O. Windows, tanto a nivel local como
a nivel de red, y así poder sacar conclusiones sobre la potencia
de gestión integrada de WMI.
IV. RESULTADOS Y ANÁLISIS DE LOS MISMOS
En esta sección se describen los pasos seguidos para cumplir
los objetivos descritos en la sección de metodología para los
distintos escenarios de trabajo.
Figura 1. Arquitectura WBEM. [4]
Tras haber decidido el esquema de trabajo, el siguiente paso
fue considerar una serie de escenarios o experimentos en los
que poder probar y analizar las funcionalidades de este
estándar en cuanto a manejo, calidad de los resultados,
opciones disponibles, etc. Por ello, se instaló WMI en dos
A. Acceso a la información de la MIB RFC1213 de la
máquina local
Inicialmente, se propuso el problema de acceder a información
local de una única máquina, olvidando el resto de las que
puede haber en la misma red. Esta parte de gestión es la más
sencilla, ya que se trata de obtener información de forma local,
en el mismo ordenador en el que se está trabajando.
En este caso, se estaría trabajando en el escenario que se
muestra en la figura 2, donde la línea discontinua representa
los límites de una máquina, de modo que se indica que todos
los elementos que aparecen están en Máq_XP. Tal y como se
desprende de dicha imagen, el CIM Studio es un mero
visualizador de información bajo el cual se encuentran el
CIMOM y el/los proveedor/es SNMP, cada uno conectado a
3
un agente SNMP, como indicaba la teoría explicada hasta
ahora.
El primer paso fue la descarga e instalación de las
herramientas administrativas WMI Tools. Por otra parte, hay
que tener en cuenta que todo ordenador que corre bajo
sistemas operativos Windows tiene instalado por defecto el
CIMOM, por lo que su instalación no fue necesaria.
A continuación se instaló el proveedor SNMP siguiendo los
pasos que se indican en la MSDN de Microsoft. En este paso
el asistente requirió una serie de archivos que se encuentran en
el disco de instalación de Windows XP.
Luego es necesario configurar de forma adecuada el agente
SNMP de la máquina de trabajo. Esto significaba en la
práctica acceder a las propiedades del servicio SNMP y añadir
un nombre de comunidad con permisos de lectura. En este
caso, el nombre de comunidad que se asignó fue “public.” A
continuación, en el CIM Studio se accede a root/SNMP y se
piden las instancias de _SystemClass/_NAMESPACE.
Finalmente, en la instancia denominada localhost se deben
añadir dos qualifiers [6]:
 AgentAddress = localhost
 AgentReadCommunityName = public
Con esto se consigue que el servidor SNMP acepte las
peticiones que se hacen desde el CIM Studio y devuelva
correctamente las instancias solicitadas de la MIB RFC1213
(que se pueden encontrar en el path root/SNMP/localhost y
accediendo
a
SnmpMacro/
SnmpObjectType/
SNMP_RFC_1213_MIB_X, donde X representa distintas
subclases que almacenan datos, como la tabla de
encaminamiento, la caché ARP...) (ver figura 3).
Puesto que esta MIB no se encuentra en Máq_XP
inicialmente, hay que descargarla e instarla previamente. Se
puede descargar de la página web de “NuDesign” [8] y se ha
de
guardar
en
el
directorio
C:\WINDOWS\system32\wbem\snmp.
A continuación, se abre la ventana de comandos de Windows
(mediante la ejecución del comando cmd) y se va al directorio
donde se ha guardado la MIB, con nombre de archivo
rfc1514.mib. Mediante la herramienta smi2smir se genera el
fichero rfc1514.mof a partir del fichero rfc1514.mib tecleando
la siguiente línea de comandos:
C:\WINDOWS\systeam32\wbwm\snmp> Smi2smir /g
rfc1514.mib > rfc1514.mof
Posteriormente se compila el fichero rfc1514.mof que se acaba
de crear utilizando el compilador mofcom mediante la
siguiente orden:
C:\WINDOWS\systeam32\wbwm\snmp> mofcom rfc1514.mof
Si se abre ahora el programa CIM Studio, se podrán observar
las clases asociadas a la nueva MIB instalada en el espacio de
nombres root/SNMP/localhost (figura 4).
En la figura 7 se puede ver la comparación entre el resultado
obtenido en este escenario y el del apartado C, de gestión
distribuida,
al
pedir
instancias
de
SNMP_RFC_1213_MIB_system en Máq_XP y Máq_7.
Figura 3. Clases de la RFC1213 de las que se pueden pedir
instancias al agente SNMP.
Figura 2. Escenario de trabajo de gestión local.
B. Instalación, compilación y acceso a la información de la
MIB RFC1514
En este apartado se va a acceder a la información de la MIB
RFC1514 a través del proveedor SNMP. Esta MIB es
soportada por los agentes de gestión de máquinas con sistema
operativo Windows [7].
4
C. Acceso a la información de la MIB RFC1213 de una
máquina remota mediante SNMP
En este escenario, el CIM Studio, el CIMOM y el proveedor
SNMP se encuentran en Máq_XP, mientras que el agente
SNMP que recibirá las peticiones se encuentra en Máq_7. Por
tanto, según la figura 6, la comunicación entre ambas deberá
realizarse mediante el protocolo SNMP. Como en la figura 2,
la línea discontinua representa una máquina, por lo que se está
representando la distribución de los programas en las dos
máquinas mencionadas.
Concretamente, Máq_XP hará peticiones de instancias de la
MIB RFC1213 al agente SNMP de Máq_7 de forma similar a
como se hacía en el apartado A de esta sección. Para ello, es
esencial que las dos máquinas estén correctamente conectadas
(puede comprobarse haciendo un ping de una a otra, p ej) y,
concretamente, que lo estén a nivel SNMP. En este caso, dicha
comprobación se hizo mediante el programa SysUp Time, ya
mencionado en el apartado de metodología.
La principal dificultad de este experimento radica en la
modificación de los qualifiers que ya se usaron en el apartado
IV.A y en la correcta configuración de Máq_7, ya que con esta
no se había trabajado hasta el momento. Lógicamente, la
nueva AgentAddress tendrá que hacer referencia a la dirección
IP de Máq_7, ya que es a su agente a quien deben solicitársele
las mencionadas instancias.
Figura 4. Clases de la MIB RFC1514 añadidas al espacio de
nombres root\snmp\localhost.
Sin cambiar los valores de los qualifiers ni la configuración
del agente SNMP realizada en el apartado A de esta misma
sección, será posible pedir instancias de cualquier clase
asociada a la MIB que se acaba de instalar. Por ejemplo, si se
piden
instancias
de
la
clase
“SNMP_HOST_RESOURCES_MIB_hrSystem”, entre otras
propiedades, se obtiene la descripción física de todos los
dispositivos hardware que tiene instalado el ordenador en el se
están haciendo las pruebas (figura 5).
Figura 5. Resultado de realizar una instancia a una clase de la
MIB RFC1514.
Por otra parte, en Máq_7 hay que configurar dicho agente
SNMP accediendo al servicio SNMP y agregando, en la
pestaña Seguridad, apartado “Nombres de comunidad
aceptados,” una comunidad con derechos de lectura. En este
caso se puso el nombre de comunidad CASA, de modo que en
Máq_XP, donde en la sección IV.A se puso
AgentReadCommunityName = public, habrá que cambiar este
qualifier por el nombre de comunidad CASA, que es el que
aceptará el agente SNMP. Ademas, por simplicidad, se
configuró el servicio para que aceptara paquetes SNMP de
cualquier host (también se puede hacer que acepte paquetes de
hosts concretos, en cuyo caso habría que añadir la dirección de
Máq_XP a la lista para que todo funcionara de la misma
manera).
Figura 6. Escenario de trabajo de gestión distribuida con dos
máquinas.
5
Figura 7. Comparación de los resultados de los escenarios
IV.A (arriba) y IV.C (abajo) al solicitar instancias de la misma
clase en dos máquinas distintas.
Con todo esto, se consiguió que Máq_XP obtuviera
correctamente información de la RFC1213 de Máq_7 sin
mayores complicaciones.
V. CONCLUSIONES
Como ha podido observarse en las pruebas efectuadas, se ha
logrado obtener información de gestión de varias MIBs,
concretamente de la RFC1213 y la RFC1514, tanto de forma
local como de forma remota, usando la herramienta de gestión
WMI.
En relación al apartado de gestión local (sección IV.A),
simplemente destacar la modificación de los qualifiers para
indicar al proveedor SNMP dónde está el agente
correspondiente con el que tiene que interactuar y al que hay
que pedirle información de gestión, que en este caso se
encuentra en la máquina local.
Por otra parte, en lo que respecta al apartado de comunicación
con otra máquina, señalar que se realizó una comunicación
mediante el protocolo SNMP entre el proveedor SNMP, en
una máquina, y el agente SNMP, en otra distinta. El primero se
encontraba en la misma máquina que la aplicación gestora, el
CIMOM y el proveedor. Modificando los qualifiers
adecuadamente se obtuvo la información de la MIB RFC1213.
Sería interesante, como prueba futura, experimentar con un
escenario donde la aplicación gestora se encuentre en una
máquina y todos los demás elementos en otra, de forma que la
comunicación entre ordenadores se produzca mediante el
protocolo DCOM. Una representación gráfica del experimento
que se propone pude encontrarse en la figura 8.
La descarga e instalación de las herramientas administrativas
WMI Tools es sencilla y rápida. WMI ofrece un entorno de
trabajo amigable con una interfaz gráfica sencilla e intuitiva de
manejar para un usuario que tenga ciertas nociones del
estándar WBEM. Esta herramienta de gestión está muy bien
documentada, ya que se puede encontrar información de forma
centralizada sobre su instalación, configuración y utilización
en la página web de la MSDN (Microsoft Developer Network)
de Microsoft. Este hecho sirve de bastante ayuda para
principiantes se quieran iniciarse en su manejo.
La instalación y configuración del proveedor SNMP también
es fácil de realizar porque la MSDN de Microsoft indica paso
a paso las instrucciones que se deben seguir. Además, el
Figura 8. Nuevo escenario de prueba que se propone como
trabajo futuro.
espacio de nombres SNMP se genera automáticamente. Tan
sólo resulta un poco más laborioso averiguar los qualifiers del
proveedor SNMP que hay que asociar con las clases del
espacio de nombres SNMP.
De la misma forma, fue una tarea trivial convertir una MIB
mantenida por un recurso a un archivo .mof y acceder a esa
información a través del proveedor SNMP debido a la
excelente documentación sobre WMI que se ofrece a los
usuarios.
Para finalizar, WMI nos ha parecido una herramienta de
gestión integrada de redes bastante eficiente para usarla en el
propósito estudiado en la práctica.
AGRADECIMIENTOS
A los autores les gustaría dar las gracias al profesor de la
asignatura Complementos de Telemática II, Juan Ignacio
Asensio, la ayuda prestada para la realización de la práctica,
así como sus indicaciones en la redacción del presente informe
y el diseño de la presentación frente a los compañeros.
Asimismo, nos gustaría agradecer a los compañeros del grupo
WMI_A (Oliver Aguirre, Adrián Huertes y Rodrigo Mota) su
colaboración en los experimentos, que fue de gran utilidad.
Queremos resaltar que trabajar en un grupo tan grande nos ha
parecido muy útil a la hora de dividir tareas.
REFERENCIAS
[1]
WMI
AdministrativeTools
http://www.microsoft.com/downloads/details.aspx?FamilyID=
6430f853-1120-48db-8cc5-f2abdc3ed314&DisplayLang=en
Fecha de último acceso: 19/4/2010.
[2]
Web-Based
Enterprise
Management
(WBEM)
http://www.dmtf.org/standards/wbem/ Fecha de último acceso:
20/5/2010.
[3] J.W. Sweitzer et al., "Common Information Model:
Implementing the Object Model for Enterprise Management",
John Wiley & Sons,, 2000.
[4] J.I. Asensio Pérez. Ingeniero de Telecomunicación.
“Gestión basada en tecnologías Web”,2010.
6
[5]
Programa
Sysuptime
http://www.ireasoning.com/network_monitor.shtml. Fecha de
último acceso: 26/4/2010.
[6] Qualifiers Specific to the SNMP Provider
http://msdn.microsoft.com/enus/library/aa392896(v=VS.85).aspx Fecha de último acceso:
26/4/2010.
[7] Base de información de administración de soporte técnico
en Windows 2000, Windows XP, Windows Server 2003 y
Windows Vista http://support.microsoft.com/kb/237295 Fecha
de último acceso: 20/5/2010.
[8] NuDesign Technologies MIB Archive http://www.ndtinc.com/SNMP/MIBsByRFC.html Fecha de último acceso:
20/5/2010.
Documentos relacionados
Descargar