Detección y solución de problemas de cambios de configuración frecuentes en Operations Manager

En este artículo se describe cómo detectar y solucionar problemas de cambios de configuración frecuentes en System Center Operations Manager.

Versión original del producto: Microsoft System Center 2012 Operations Manager
Número de KB original: 2603913

Descripción general de la configuración

El servicio System Center Management Configuration es responsable de calcular la configuración de cada servicio de mantenimiento del grupo de administración de Operations Manager. La configuración de un servicio de mantenimiento consta de las reglas, monitores, detecciones y tareas del servicio de mantenimiento y de todas las instancias que supervisa el servicio de mantenimiento.

Para calcular todas las configuraciones necesarias para cada servicio de mantenimiento, el servicio de configuración de administración debe tener una lista de los siguientes elementos:

  • Todas las instancias de todas las clases supervisadas
  • Relaciones de hospedaje entre instancias
  • Reglas, monitores, detecciones y otros flujos de trabajo asignados a las clases supervisadas
  • Los servicios de mantenimiento responsables de supervisar las instancias

Además, el servicio Configuración de administración debe poder leer la pertenencia de todos los grupos de instancias del grupo de administración. El servicio Configuración de administración también debe aplicar cualquier invalidación para reglas y monitores destinados a estos grupos, clases o instancias individuales.

Los objetos de un grupo de administración se definirán como instancias de clases supervisadas en función de los datos de detección enviados por los flujos de trabajo de detección. Si cambia una propiedad de clave de un objeto, ese objeto se puede agregar como una nueva instancia de una clase supervisada. De lo contrario, ese objeto ya no se considera una instancia de esa clase.

A medida que cambia la lista para las clases de las que el objeto es miembro, la configuración también cambia para el servicio de mantenimiento que supervisa ese objeto. Estos cambios se producen cuando se agregan o quitan reglas, monitores, detecciones, tareas e invalidaciones de la configuración anterior.

Renovación de configuración

Es posible que los agentes no puedan recibir una configuración estable en los siguientes escenarios:

  • Se envía una gran cantidad de datos de detección al servicio configuración de administración.
  • Los datos de detección se envían demasiado rápido para que el servicio Configuración de administración se procese antes de enviar más datos de detección. Este escenario se produce porque los datos siempre estarán en proceso de cálculo.

El envío frecuente de datos de detección, también conocido como renovación de configuración, puede hacer que algunos servicios de mantenimiento se ejecuten en configuraciones antiguas o que la configuración de los servidores de administración se quede obsoleta. Este comportamiento hace que algunos servicios de mantenimiento aparezcan atenuados (no disponibles) en la consola del operador.

Los datos de detección los envía un servicio de mantenimiento cuando se ejecuta un flujo de trabajo de detección. La introducción de un nuevo módulo de administración a un grupo de administración puede hacer que se ejecuten varios flujos de trabajo de detección en cada agente. Y, a medida que se detectan nuevas instancias, se pueden ejecutar detecciones adicionales en algunos agentes. Los cambios en grupos, invalidaciones y otros flujos de trabajo pueden hacer que los flujos de trabajo de detección se ejecuten en agentes. Además, la introducción de nuevos agentes también puede hacer que el servicio Configuración de administración actualice el espacio de instancia mediante la configuración del nuevo agente.

El servicio Configuration Management se ve obligado a recalcular la configuración del servicio de mantenimiento con frecuencia en los siguientes escenarios:

  • Un flujo de trabajo de detección está configurado para ejecutarse con demasiada frecuencia.
  • Las propiedades detectadas por el flujo de trabajo cambian cada vez que se ejecuta el flujo de trabajo de detección.

Si estos escenarios se producen para muchos agentes o los servidores de administración ya están bajo una carga de trabajo pesada, es posible que el servicio Configuration Management no pueda mantenerse al día con la tasa de cambio y que se produzca una renovación de configuración.

Identificación de la renovación de configuración mediante el registro de eventos del servidor de administración

Un evento similar al siguiente en el registro de eventos de Operations Manager en el servidor de administración indica que la configuración del grupo de administración ha cambiado debido a nuevos datos de detección:

Nombre del registro: Operations Manager
Origen: Conector de OpsMgr
Identificador de evento: 21024
Nivel: Información
Equipo: <Nombre>
Descripción:
La configuración de OpsMgr puede estar obsoleta para el grupo <de administración ManagementGroupName> y ha solicitado la configuración actualizada del servicio de configuración. La cookie de estado actual es "3A B0 1E 5C 81 F3 12 F5 56 B7 8A EF F8 01 BA 09 86 55 06 48"

Un evento similar al siguiente indica que el servicio Configuración de administración ha terminado de procesar los nuevos datos de detección y ha calculado los cambios necesarios para la configuración del grupo de administración, en función de los nuevos datos:

Nombre del registro: Operations Manager
Origen: Conector de OpsMgr
Identificador de evento: 21025
Nivel: Información
Equipo: <Nombre>
Descripción:
OpsMgr ha recibido una nueva configuración para el grupo <de administración ManagementGroupName> del servicio de configuración. La nueva cookie de estado es "34 FA 11 61 4D B8 03 59 3D 1D 66 B7 83 F3 C0 AA 7A 6F 1A 3B"

En un entorno típico, cada evento 21024 debe ir seguido del evento 21025. Si los datos de detección no provocaron ningún cambio en los datos de configuración, el identificador de evento será 21026 en su lugar. En un grupo de administración grande, se debe esperar que los pares de eventos 21024 y 21025 o 21026 se produzcan varias veces por hora. Las cadenas largas de eventos 21024 sin un evento 21025 o 21026 correspondiente es un signo de renovación de configuración. Además, el registro de eventos puede mostrar el siguiente evento que indica que se detectó la renovación:

Nombre del registro: Operations Manager
Origen: Servicio de configuración de OpsMgr
Identificador de evento: 29202
Nivel: Advertencia
Equipo: <Nombre>
Descripción:
El servicio de configuración de OpsMgr no pudo recuperar un estado coherente de la base de datos de OpsMgr debido a cambios demasiado frecuentes en la base de datos.
Esto podría deberse a un aumento normal y temporal de los datos de detección; sin embargo, compruebe los cambios más recientes para determinar si este aumento es inesperado.
Cambio de objeto de supervisión más reciente:
Instance = %1
Clase = %2
Tiempo de modificación = %3
Cambio de relación de supervisión más reciente:
Instancia de relación = %4
Instancia de origen = %5
Instancia de destino = %6
RelationshipClass = %7
Tiempo de modificación = %8

La capa de acceso a datos debe leer varias tablas cuando la capa de acceso a datos consulta los cambios. Si una de las tablas se modifica después de leerla, pero antes de leer todas las tablas, la capa de acceso a datos registra el identificador de evento anterior 29202 y vuelve a intentarlo. Si durante este tiempo se leyó una instancia de entidad o relación, la información sobre estas instancias se incluye en los campos de evento. De lo contrario, estos campos se dejan vacíos.

Identificar posibles causas de renovación de configuración mediante el Data Warehouse de Operations Manager

En los grupos de administración en los que se instaló el componente Operations Manager Reporting, se pueden usar varias consultas SQL para identificar los flujos de trabajo que envían cambios frecuentes. Estas consultas deben ejecutarse en SQL Server Management Studio en la instancia de Data Warehouse.

Total de cambios enviados por flujos de trabajo de detección en las últimas 24 horas:

select
   ManagedEntityTypeSystemName,
   DiscoverySystemName,
   count(*) As 'Changes'
from
   (
      select distinct
         MP.ManagementPackSystemName,
         MET.ManagedEntityTypeSystemName,
         PropertySystemName,
         D.DiscoverySystemName,
         D.DiscoveryDefaultName,
         MET1.ManagedEntityTypeSystemName As 'TargetTypeSystemName',
         MET1.ManagedEntityTypeDefaultName As 'TargetTypeDefaultName',
         ME.Path,
         ME.Name,
         C.OldValue,
         C.NewValue,
         C.ChangeDateTime
      from
         dbo.vManagedEntityPropertyChange C
         inner join
            dbo.vManagedEntity ME
            on ME.ManagedEntityRowId = C.ManagedEntityRowId
         inner join
            dbo.vManagedEntityTypeProperty METP
            on METP.PropertyGuid = C.PropertyGuid
         inner join
            dbo.vManagedEntityType MET
            on MET.ManagedEntityTypeRowId = ME.ManagedEntityTypeRowId
         inner join
            dbo.vManagementPack MP
            on MP.ManagementPackRowId = MET.ManagementPackRowId
         inner join
            dbo.vManagementPackVersion MPV
            on MPV.ManagementPackRowId = MP.ManagementPackRowId
         left join
            dbo.vDiscoveryManagementPackVersion DMP
            on DMP.ManagementPackVersionRowId = MPV.ManagementPackVersionRowId
            AND CAST(DefinitionXml.query('data(/Discovery/DiscoveryTypes/DiscoveryClass/@TypeID)') AS nvarchar(max)) like '%' + MET.ManagedEntityTypeSystemName + '%'
         left join
            dbo.vManagedEntityType MET1
            on MET1.ManagedEntityTypeRowId = DMP.TargetManagedEntityTypeRowId
         left join
            dbo.vDiscovery D
            on D.DiscoveryRowId = DMP.DiscoveryRowId
      where
         ChangeDateTime > dateadd(hh, - 24, getutcdate())
   )
   As # T
group by
   ManagedEntityTypeSystemName,
   DiscoverySystemName
order by
   count(*) DESC

Esta consulta crea tres columnas. La primera columna es la clase de objeto a la que se dirige el flujo de trabajo. La segunda columna indica el nombre interno del flujo de trabajo de detección. La tercera columna indica el número total de cambios de propiedad para todas las instancias de esta clase enviadas por el flujo de trabajo en las últimas 24 horas. El número total de cambios, para todas las clases, representa el número de veces que el servicio Configuration Management debe recalcular la configuración de un servicio de mantenimiento del agente.

Es posible que el número de cambios de algunas clases de objetos, incluso en un entorno estable, no llegue nunca a cero. Cualquier cambio, como agregar o quitar una propiedad, agentes que se agregan o retiran, roles de servidor que se agregan o cambian, etc., se reflejan en los números que se devuelven. En entornos en los que se experimenta la renovación de configuración, es probable que uno o varios flujos de trabajo muestren un valor mayor que otros flujos de trabajo.

Las propiedades han cambiado en las últimas 24 horas:

select distinct
   MP.ManagementPackSystemName,
   MET.ManagedEntityTypeSystemName,
   PropertySystemName,
   D.DiscoverySystemName,
   D.DiscoveryDefaultName,
   MET1.ManagedEntityTypeSystemName As 'TargetTypeSystemName',
   MET1.ManagedEntityTypeDefaultName As 'TargetTypeDefaultName',
   ME.Path,
   ME.Name,
   C.OldValue,
   C.NewValue,
   C.ChangeDateTime
from
   dbo.vManagedEntityPropertyChange C
   inner join
      dbo.vManagedEntity ME
      on ME.ManagedEntityRowId = C.ManagedEntityRowId
   inner join
      dbo.vManagedEntityTypeProperty METP
      on METP.PropertyGuid = C.PropertyGuid
   inner join
      dbo.vManagedEntityType MET
      on MET.ManagedEntityTypeRowId = ME.ManagedEntityTypeRowId
   inner join
      dbo.vManagementPack MP
      on MP.ManagementPackRowId = MET.ManagementPackRowId
   inner join
      dbo.vManagementPackVersion MPV
      on MPV.ManagementPackRowId = MP.ManagementPackRowId
   left join
      dbo.vDiscoveryManagementPackVersion DMP
      on DMP.ManagementPackVersionRowId = MPV.ManagementPackVersionRowId
      AND CAST(DefinitionXml.query('data(/Discovery/DiscoveryTypes/DiscoveryClass/@TypeID)') AS nvarchar(max)) like '%' + MET.ManagedEntityTypeSystemName + '%'
   left join
      dbo.vManagedEntityType MET1
      on MET1.ManagedEntityTypeRowId = DMP.TargetManagedEntityTypeRowId
   left join
      dbo.vDiscovery D
      on D.DiscoveryRowId = DMP.DiscoveryRowId
where
   ChangeDateTime > dateadd(hh, - 24, getutcdate())
ORDER BY
   MP.ManagementPackSystemName,
   MET.ManagedEntityTypeSystemName

Esta consulta puede identificar qué propiedades han cambiado en las últimas 24 horas. En combinación con la consulta anterior, esta consulta puede mostrar cuáles eran los valores antiguos y nuevos de la propiedad, qué agentes enviaron el cambio, el flujo de trabajo que realizó la detección y el módulo de administración en el que estaba contenido.

Reducción de la renovación de configuración

Los módulos de administración anteriores introdujeron flujos de trabajo de detección que enviaron cambios de propiedad con demasiada frecuencia. Las versiones actuales de la mayoría de los módulos de administración han modificado estos flujos de trabajo de detección para enviar datos con menos frecuencia o los módulos de administración no consultan las propiedades volátiles que cambian con frecuencia. Se recomienda actualizar los módulos de administración que contienen flujos de trabajo que se producen con frecuencia en la consulta anterior.

Si una nueva versión del módulo de administración no está disponible o la nueva versión no se puede implementar ahora, el intervalo de detección se puede ajustar mediante la invalidación para ejecutarse con menos frecuencia. A veces, la detección responsable de la renovación de configuración se puede deshabilitar mediante invalidación. Si la detección está deshabilitada durante varias semanas, los objetos detectados por el flujo de trabajo se pueden limpiar fuera de la base de datos. Sin embargo, deshabilitar la detección puede proporcionar una solución alternativa a corto plazo para eliminar la renovación de configuración, siempre y cuando se pueda implementar una solución permanente antes de que los objetos se limpien de la base de datos. El flujo de trabajo también se puede habilitar a intervalos cortos para volver a detectar los objetos antes de que se preparen.

Algunos flujos de trabajo de estos módulos de administración anteriores se describen en ¿Qué es la renovación de configuración?

Si el flujo de trabajo procede de una detección personalizada destinada a una propiedad volátil, como espacio libre en disco, la detección debe volver a escribirse para que no tenga como destino una propiedad que cambie con frecuencia. Los flujos de trabajo de detección no deben tener como destino instancias que tengan una duración corta (varias semanas o menos). Los flujos de trabajo de detección no deben recopilar propiedades de esas instancias que cambian con frecuencia (una o varias veces al mes). Los datos volátiles no se tienen en cuenta al calcular una configuración. Por lo tanto, los datos volátiles deben recopilarse mediante reglas de rendimiento y no por flujos de trabajo de detección.

Ajuste de rendimiento adicional

En grupos de administración grandes (más de 1000 agentes), el servidor de administración raíz (RMS) puede estar ocupado con operaciones que normalmente no causan un problema en grupos de administración más pequeños. En esta situación, incluso una pequeña tasa de cambios de propiedad podría provocar una renovación frecuente debido al período de tiempo necesario para procesar los cambios. Se pueden usar varios cambios de configuración para reducir la sobrecarga operativa del RMS y permitir que procese una tasa típica de cambios de propiedad lo suficientemente rápido como para evitar la renovación de la configuración. Estos cambios de configuración se describen en Optimizaciones de rendimiento para Operations Manager 2007 R2 y 2012.

Forzar el cambio de configuración para el grupo de administración

Si la renovación de configuración del grupo de administración se produce constantemente, los cambios para reducir la frecuencia de los flujos de trabajo problemáticos o para deshabilitar los flujos de trabajo problemáticos nunca se propagarán a los agentes. En este caso, el flujo de datos de detección entrantes debe bloquearse para permitir que el servicio System Center Configuration Management calcule una configuración actual en la que el flujo de trabajo que genera estos datos esté deshabilitado o se ejecute con menos frecuencia.

Los datos de detección se envían a la OperationsManager base de datos a través del servicio de acceso a datos (DAS) de System Center. Los datos se envían primero al DAS por el servicio de administración de System Center en rms. RMS obtiene estos datos de agentes o de otros servidores de administración. Puede usar el firewall de Windows u otros medios de red para bloquear las conexiones entrantes al RMS en el puerto 5723. Este procedimiento de bloqueo impide que los datos de detección se envíen a la OperationsManager base de datos el tiempo suficiente para que el servicio Configuration Management calcule la configuración actual de los agentes que envían los datos.

El servicio de administración de System Center y el servicio de acceso a datos de System Center en RMS no se deben detener ni deshabilitar mientras el servicio Configuration Management calcula la configuración actual. El servicio System Center Configuration Management requiere lo siguiente para completar el cálculo de la configuración del grupo de administración:

  • El servicio de administración de System Center en RMS debe estar en ejecución y en buen estado.
  • El servicio de acceso a datos de System Center debe poder comunicarse con la base de datos.

Además, es posible que algunos datos se repliquen en los agentes y en otros servidores de administración mientras el servicio Configuration Management calcula la configuración actual. Por lo tanto, se debe quitar el firewall o la exclusión de puerto tan pronto como vea el identificador de evento 21025 en el registro de eventos de Operations Manager en RMS. Este evento indica que el servicio Configuration Management ha calculado la nueva configuración para el grupo de administración donde el flujo de trabajo está ahora deshabilitado o modificado.

Identificación de posibles causas de renovación de configuración mediante informes de Operations Manager

Se introdujeron nuevos informes. Estos informes proporcionan información sobre el volumen general de datos que procesa el grupo de administración. Estos informes se pueden usar para establecer una línea base estándar e identificar oportunidades para optimizar los flujos de trabajo de detección de objetos. En cuanto se identifica y aborda la renovación de configuración, estos informes se pueden usar para planear a largo plazo para evitar repeticiones de renovación.

  • Informe volumen de datos por módulo de administración

    El informe Volumen de datos por módulo de administración compila información sobre el volumen de datos que generan los módulos de administración. El informe enumera el número de repeticiones por módulo de administración para los siguientes tipos de datos:

    • Descubrimientos
    • Alertas
    • Rendimiento (número de instancias que se envían para contadores de rendimiento y que recopila el módulo de administración)
    • Eventos
    • Cambios de estado
  • Volumen de datos por flujo de trabajo e informe de instancia

    El informe Volumen de datos por flujo de trabajo e instancia compila información sobre el volumen de datos generados, organizados por flujos de trabajo (detecciones, reglas, monitores, etc.) y por instancias.

    Hay dos maneras de acceder a este informe:

    • En el informe Volumen de datos por módulo de administración , seleccione una de las celdas de recuento de la tabla de la parte superior del informe para abrir el informe Volumen de datos por flujo de trabajo e instancia de los módulos de administración.
    • Ejecute el informe directamente desde la sección Informes de la consola del operador. Si ejecuta el informe Volumen de datos por flujo de trabajo e instancia directamente, debe establecer los parámetros del informe para personalizar los resultados. Este informe proporciona detalles para obtener información en el informe Volumen de datos por módulo de administración . Por lo tanto, es posible que la configuración de parámetros predeterminada no proporcione la información que está buscando.