Rilevare e risolvere le frequenti modifiche alla configurazione in Operations Manager

Questo articolo illustra come rilevare e risolvere le frequenti modifiche alla configurazione in System Center Operations Manager.

Versione originale del prodotto: Microsoft System Center 2012 Operations Manager
Numero KB originale: 2603913

Panoramica della configurazione

Il servizio System Center Management Configuration è responsabile del calcolo della configurazione di ogni servizio di integrità nel gruppo di gestione di Operations Manager. La configurazione di un servizio integrità è costituita da regole, monitoraggi, individuazioni e attività per il servizio integrità e per tutte le istanze monitorate dal servizio integrità.

Per calcolare tutte le configurazioni necessarie per ogni servizio integrità, il servizio Configurazione gestione deve avere un elenco degli elementi seguenti:

  • Tutte le istanze di tutte le classi monitorate
  • Relazioni di hosting tra istanze
  • Regole, monitoraggi, individuazioni e altri flussi di lavoro assegnati alle classi monitorate
  • I servizi sanitari responsabili del monitoraggio delle istanze

Inoltre, il servizio Configurazione gestione deve essere in grado di leggere l'appartenenza di tutti i gruppi di istanze nel gruppo di gestione. Il servizio Configurazione gestione deve anche applicare tutte le sostituzioni per le regole e i monitoraggi destinati a questi gruppi, classi o singole istanze.

Gli oggetti in un gruppo di gestione verranno definiti come istanze di classi monitorate in base ai dati di individuazione inviati dai flussi di lavoro di individuazione. Se una proprietà chiave di un oggetto viene modificata, tale oggetto può essere aggiunto come nuova istanza di una classe monitorata. In caso contrario, l'oggetto non è più considerato un'istanza di tale classe.

Quando l'elenco cambia per le classi di cui l'oggetto è membro, la configurazione cambia anche per il servizio di integrità che monitora tale oggetto. Queste modifiche si verificano quando regole, monitoraggi, individuazioni, attività e sostituzioni vengono aggiunti o rimossi dalla configurazione precedente.

Varianza di configurazione

Gli agenti potrebbero non essere in grado di ricevere una configurazione stabile negli scenari seguenti:

  • Una grande quantità di dati di individuazione viene inviata al servizio Configurazione gestione.
  • I dati di individuazione vengono inviati troppo velocemente perché il servizio Configurazione gestione venga elaborato prima dell'invio di altri dati di individuazione. Questo scenario si verifica perché i dati saranno sempre in fase di calcolo.

L'invio frequente dei dati di individuazione, noto anche come varianza di configurazione, può causare l'esecuzione di alcuni servizi di integrità in configurazioni precedenti o la configurazione dei server di gestione non aggiornata. Questo comportamento causa quindi l'visualizzazione di alcuni servizi di integrità in grigio (non disponibile) nella console operatore.

I dati di individuazione vengono inviati da un servizio integrità quando viene eseguito un flusso di lavoro di individuazione. L'introduzione di un nuovo Management Pack a un gruppo di gestione può causare l'esecuzione di diversi flussi di lavoro di individuazione in ogni agente. Inoltre, man mano che vengono individuate nuove istanze, è possibile eseguire individuazioni aggiuntive in alcuni agenti. Le modifiche apportate a gruppi, sostituzioni e altri flussi di lavoro possono causare l'esecuzione dei flussi di lavoro di individuazione negli agenti. Inoltre, l'introduzione di nuovi agenti può anche causare l'aggiornamento dello spazio dell'istanza da parte del servizio Configurazione gestione tramite la configurazione del nuovo agente.

Il servizio Gestione configurazione è costretto a ricalcolare frequentemente la configurazione del servizio integrità negli scenari seguenti:

  • Un flusso di lavoro di individuazione è configurato per l'esecuzione troppo frequente.
  • Le proprietà individuate dal flusso di lavoro cambiano ogni volta che viene eseguito il flusso di lavoro di individuazione.

Se questi scenari si verificano per molti agenti o i server di gestione sono già sottoposti a un carico di lavoro elevato, il servizio Gestione configurazione potrebbe non essere in grado di tenere il passo con la frequenza delle modifiche e potrebbe verificarsi una varianza della configurazione.

Identificare la varianza di configurazione usando il registro eventi del server di gestione

Un evento simile al seguente nel registro eventi di Operations Manager nel server di gestione indica che la configurazione del gruppo di gestione è stata modificata a causa dei nuovi dati di individuazione:

Nome log: Operations Manager
Origine: OpsMgr Connector
ID evento: 21024
Livello: Informazioni
Computer: <Nome>
Descrizione:
La configurazione di OpsMgr potrebbe non essere aggiornata per ManagementGroupName> del gruppo <di gestione e ha richiesto la configurazione aggiornata dal servizio di configurazione. Il cookie di stato corrente (non aggiornato) è "3A B0 1E 5C 81 F3 12 F5 56 B7 8A EF F8 01 BA 09 86 55 06 48 "

Un evento simile al seguente indica che il servizio Configurazione gestione ha completato l'elaborazione dei nuovi dati di individuazione e ha calcolato le modifiche necessarie alla configurazione del gruppo di gestione in base ai nuovi dati:

Nome log: Operations Manager
Origine: OpsMgr Connector
ID evento: 21025
Livello: Informazioni
Computer: <Nome>
Descrizione:
OpsMgr ha ricevuto una nuova configurazione per il gruppo <di gestione ManagementGroupName> dal servizio di configurazione. Il nuovo cookie di stato è "34 FA 11 61 4D B8 03 59 3D 1D 66 B7 83 F3 C0 AA 7A 6F 1A 3B "

In un ambiente tipico, ogni evento 21024 deve essere seguito dall'evento 21025. Se i dati di individuazione non hanno causato la modifica dei dati di configurazione, l'ID evento sarà invece 21026. In un gruppo di gestione di grandi dimensioni dovrebbero verificarsi più volte all'ora coppie di eventi 21024 e 21025 o 21026. Stringhe lunghe di eventi 21024 senza un evento 21025 o 21026 corrispondente è un segno di varianza di configurazione. Inoltre, il registro eventi può mostrare l'evento seguente che indica che è stata rilevata una varianza:

Nome log: Operations Manager
Origine: Servizio di configurazione OpsMgr
ID evento: 29202
Livello: Avviso
Computer: <Nome>
Descrizione:
Il servizio di configurazione di OpsMgr non è riuscito a recuperare uno stato coerente dal database OpsMgr a causa di modifiche troppo frequenti del database.
Ciò potrebbe essere dovuto a un aumento normale e temporaneo dei dati di individuazione; controllare tuttavia le modifiche più recenti per determinare se questo aumento è imprevisto.
Modifica dell'oggetto di monitoraggio più recente:
Istanza = %1
Classe = %2
Ora modificata = %3
Modifica più recente della relazione di monitoraggio:
Istanza della relazione = %4
Istanza di origine = %5
Istanza di destinazione = %6
RelationshipClass = %7
Ora di modifica = %8

Il livello di accesso ai dati deve leggere più tabelle quando il livello di accesso ai dati esegue query per le modifiche. Se una delle tabelle viene modificata dopo la lettura ma prima della lettura di tutte le tabelle, il livello di accesso ai dati registra l'ID evento precedente 29202 e riprova. Se un'entità o un'istanza di relazione è stata letta durante questo periodo, le informazioni su queste istanze vengono incluse nei campi dell'evento. In caso contrario, questi campi vengono lasciati vuoti.

Identificare le possibili cause della varianza di configurazione usando il Data Warehouse di Operations Manager

Nei gruppi di gestione in cui è stato installato il componente Di report di Operations Manager, è possibile usare diverse query SQL per identificare i flussi di lavoro che inviano modifiche frequenti. Queste query devono essere eseguite in SQL Server Management Studio sull'istanza di Data Warehouse.

Modifiche totali inviate dai flussi di lavoro di individuazione nelle ultime 24 ore:

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

Questa query crea tre colonne. La prima colonna è la classe dell'oggetto a cui è destinato il flusso di lavoro. La seconda colonna indica il nome interno del flusso di lavoro di individuazione. La terza colonna indica il numero totale di modifiche alle proprietà per tutte le istanze di questa classe inviate dal flusso di lavoro nelle ultime 24 ore. Il numero totale di modifiche, per tutte le classi, rappresenta il numero di volte in cui il servizio Gestione configurazione deve ricalcolare la configurazione per un servizio di integrità dell'agente.

Il numero di modifiche per alcune classi di oggetti, anche in un ambiente stabile, potrebbe non raggiungere mai lo zero. Qualsiasi modifica, ad esempio l'aggiunta o la rimozione di una proprietà, gli agenti aggiunti o rimossi, i ruoli del server aggiunti o modificati e così via, si riflettono nei numeri restituiti. Negli ambienti in cui si verifica una varianza di configurazione, uno o più flussi di lavoro mostrano probabilmente un valore maggiore rispetto ad altri flussi di lavoro.

Proprietà modificate nelle ultime 24 ore:

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

Questa query può identificare quali proprietà sono state modificate nelle ultime 24 ore. In combinazione con la query precedente, questa query può mostrare i valori vecchi e nuovi per la proprietà, quali agenti hanno inviato la modifica, il flusso di lavoro che ha eseguito l'individuazione e il Management Pack in cui è contenuto.

Ridurre la varianza di configurazione

I Management Pack meno recenti hanno introdotto flussi di lavoro di individuazione che inviano modifiche alle proprietà troppo frequentemente. Le versioni correnti della maggior parte dei Management Pack hanno modificato questi flussi di lavoro di individuazione per inviare i dati meno frequentemente oppure i Management Pack non eseguono query su proprietà volatili che cambiano di frequente. È consigliabile aggiornare i Management Pack che contengono flussi di lavoro che si verificano di frequente nella query precedente.

Se una nuova versione del Management Pack non è disponibile o la nuova versione non può essere distribuita ora, l'intervallo di individuazione può essere regolato usando l'override per eseguire meno frequentemente. In alcuni casi, l'individuazione responsabile della varianza di configurazione può essere disabilitata eseguendo l'override. Se l'individuazione viene disabilitata per diverse settimane, gli oggetti individuati dal flusso di lavoro possono essere estratti dal database. Tuttavia, la disabilitazione dell'individuazione può fornire una soluzione a breve termine per eliminare la varianza di configurazione, purché sia possibile implementare una soluzione permanente prima che tutti gli oggetti vengano eliminati dal database. È anche possibile abilitare il flusso di lavoro per brevi intervalli per riscoprire gli oggetti prima di pulirli.

Alcuni flussi di lavoro in questi Management Pack meno recenti sono illustrati in Che cos'è la varianza di configurazione?

Se il flusso di lavoro proviene da un'individuazione personalizzata destinata a una proprietà volatile, ad esempio spazio libero su disco, l'individuazione deve essere riscritta in modo che non sia destinata a una proprietà che viene modificata di frequente. I flussi di lavoro di individuazione non devono essere destinati a istanze con una durata breve (diverse settimane o meno). I flussi di lavoro di individuazione non devono raccogliere le proprietà delle istanze che cambiano frequentemente (una o più volte al mese). I dati volatili non sono considerati nel calcolo di una configurazione. Pertanto, i dati volatili devono essere raccolti dalle regole delle prestazioni e non dai flussi di lavoro di individuazione.

Ottimizzazione aggiuntiva delle prestazioni

Nei gruppi di gestione di grandi dimensioni (superiori a 1.000 agenti), il server di gestione radice (RMS) può diventare occupato con operazioni che in genere non causano un problema nei gruppi di gestione più piccoli. In questa situazione, anche una piccola frequenza di modifiche delle proprietà potrebbe causare varianza frequente a causa del periodo di tempo necessario per elaborare le modifiche. È possibile usare diverse modifiche alla configurazione per ridurre il sovraccarico operativo di RMS e consentirgli di elaborare una frequenza tipica di modifiche delle proprietà abbastanza rapidamente da evitare la varianza della configurazione. Queste modifiche alla configurazione sono illustrate in Ottimizzazioni prestazioni per Operations Manager 2007 R2 e 2012.

Forzare la modifica della configurazione per il gruppo di gestione

Se la varianza di configurazione per il gruppo di gestione si verifica costantemente, le modifiche apportate per ridurre la frequenza dei flussi di lavoro del problema o per disabilitare i flussi di lavoro del problema non verranno mai propagate agli agenti. In questo caso, il flusso dei dati di individuazione in ingresso deve essere bloccato per consentire al servizio System Center Configuration Management di calcolare una configurazione corrente in cui il flusso di lavoro che produce questi dati viene disabilitato o eseguito meno frequentemente.

I dati di individuazione vengono inviati al OperationsManager database tramite il servizio di accesso ai dati di System Center (DAS). I dati vengono prima inviati al DAS dal servizio di gestione di System Center in RMS. RMS ottiene questi dati dagli agenti o da altri server di gestione. È possibile usare Windows Firewall o altri mezzi di rete per bloccare le connessioni in ingresso a RMS sulla porta 5723. Questa procedura di blocco impedisce l'invio dei dati di individuazione al OperationsManager database abbastanza a lungo da consentire al servizio Gestione configurazione di calcolare la configurazione corrente per gli agenti che inviano i dati.

Il servizio di gestione di System Center e il servizio di accesso ai dati di System Center in RMS non devono essere arrestati o disabilitati mentre il servizio Gestione configurazione calcola la configurazione corrente. Il servizio System Center Configuration Management richiede quanto segue per completare il calcolo della configurazione del gruppo di gestione:

  • Il servizio di gestione di System Center in RMS deve essere in esecuzione e integro.
  • Il servizio di accesso ai dati di System Center deve essere in grado di comunicare con il database.

Inoltre, alcuni dati potrebbero diventare backlogged negli agenti e in altri server di gestione mentre il servizio Gestione configurazione calcola la configurazione corrente. Di conseguenza, l'esclusione del firewall o della porta deve essere rimossa non appena viene visualizzato l'ID evento 21025 nel registro eventi di Operations Manager in RMS. Questo evento indica che il servizio Gestione configurazione ha calcolato la nuova configurazione per il gruppo di gestione in cui il flusso di lavoro è ora disabilitato o modificato

Identificare le possibili cause della varianza di configurazione usando la creazione di report di Operations Manager

Sono stati introdotti nuovi report. Questi report forniscono informazioni dettagliate sul volume complessivo di dati elaborati dal gruppo di gestione. Questi report possono essere usati per stabilire una baseline standard e per identificare le opportunità di ottimizzazione dei flussi di lavoro di individuazione degli oggetti. Non appena viene identificata e risolta la varianza di configurazione, questi report possono essere usati per la pianificazione a lungo termine per evitare ricorrenza di varianza.

  • Report Volume dati per Management Pack

    Il report Volume dati per Management Pack compila informazioni sul volume di dati generati dai Management Pack. Il report elenca il numero di occorrenze per Management Pack per i tipi di dati seguenti:

    • Scoperte
    • Avvisi
    • Prestazioni (numero di istanze inviate per i contatori delle prestazioni e raccolte dal Management Pack)
    • Events
    • Modifiche dello stato
  • Report Volume dati per flusso di lavoro e istanza

    Il report Volume dati per flusso di lavoro e istanza compila informazioni sul volume di dati generati, organizzati in base ai flussi di lavoro (individuazioni, regole, monitoraggi e così via) e dalle istanze.

    Esistono due modi per accedere a questo report:

    • Nel report Volume dati per Management Pack selezionare una delle celle di conteggio nella tabella nella parte superiore del report per aprire il report Volume dati per flusso di lavoro e Istanza per i Management Pack.
    • Eseguire il report direttamente dalla sezione Report nella console operatore. Se si esegue direttamente il report Volume dati per flusso di lavoro e istanza , è necessario impostare i parametri del report per personalizzare i risultati. Questo report fornisce informazioni dettagliate nel report Volume dati per Management Pack . Pertanto, le impostazioni predefinite dei parametri potrebbero non fornire le informazioni desiderate.