Si è creata molta confusione intorno ai necrologi memorizzati nella directory e, di conseguenza, molte persone hanno sviluppato pratiche aziendali inadeguate alla gestione di tali necrologi. A differenza di alcuni prodotti di directory, Novell® eDirectory™ garantisce l'integrità dei riferimenti tra gli oggetti. Ad esempio, se il gruppo A presenta un membro, utente B, e quest'ultimo viene successivamente cancellato, la directory rimuove automaticamente il riferimento all'utente B dal gruppo A. I necrologi sono attributi operativi applicati agli oggetti da eDirectory per garantire ulteriormente l'integrità dei riferimenti durante le operazioni di cancellazione, spostamento, ridenominazione, ripristino e così via.
I necrologi sono suddivisi in tre categorie generiche: primari, secondari e di controllo. I necrologi primari comprendono i necrologi di tipo Cessato (0001), Ripristinato (0000), Spostato (0002), Nuovo RDN (0005) e Nuovo RDN albero (0008). I necrologi secondari sono generalmente associati a un necrologio primario e rappresentano gli agenti e le partizioni a cui deve essere notificata l'operazione specificata nel necrologio primario. I necrologi secondari comprendono i tipi Back Link (0006), Usato da (000C) e Sposta l'albero (000a). I necrologi di controllo comprendono Impedisci spostamento (0003), RDN precedente (0004) e RDN precedente albero (0007).
I necrologi, ad eccezione di quelli di controllo, devono passare attraverso una serie di stati di sincronizzazione:
Gli stati sono registrati nel campo Flag all'interno dell'attributo del necrologio. Affinché il necrologio possa passare allo stato successivo, è necessario che lo stato attuale sia stato sincronizzato con tutte le repliche dell'oggetto reale. Per stabilire se tutte le repliche nell'anello hanno rilevato un determinato stato del necrologio, viene calcolato un vettore dal vettore transitivo. In eDirectory 8.6 e versione successiva, viene utilizzato un vettore dei necrologi non memorizzato. Nelle versioni precedenti di eDirectory, veniva utilizzato il vettore di eliminazione. Se l'orario di modifica (MTS, Modification Timestamp) sul necrologio è precedente al vettore danneggiato, il server responsabile per tale necrologio può farlo avanzare allo stato successivo.
Nel caso di un necrologio secondario di tipo Back Link, l'agente contenente la replica master dell'oggetto con il necrologio è responsabile dell'avanzamento degli stati. Nel caso di un necrologio secondario di tipo Usato da, l'agente di replica che ha creato il necrologio è responsabile dell'avanzamento degli stati del necrologio per tutta la durata della replica. Se la replica cessa di esistere, l'agente che dispone del master di quella partizione assume il controllo dell'avanzamento degli stati del necrologio per il necrologio Usato da. Nel caso di un necrologio Sposta l'albero, il master della partizione radice è responsabile dell'avanzamento degli stati.
I necrologi primari possono passare allo stato successivo solo dopo che tutti i necrologi secondari sono passati attraverso tutti gli stati disponibili. Una volta che il necrologio primario ha raggiunto l'ultimo stato e che quest'ultimo è stato sincronizzato con tutti i server dell'anello, rimane solo l'involucro dell'oggetto, ossia un oggetto senza attributi che, in un secondo momento, può essere rimosso definitivamente dal sistema mediante il processo di eliminazione. I necrologi di controllo vengono rimossi solo nel momento in cui è possibile rimuovere il necrologio primario oppure, nel caso di INHIBIT_MOVE, il necrologio di controllo viene rimosso dopo che quello primario è passato allo stato OBF_NOTIFIED nella replica master.
La replica responsabile dell'elaborazione dei necrologi esegue un'elaborazione di background (processo di necrologia) che viene pianificata per ciascuna partizione dopo che una determinata partizione ha terminato un ciclo di sincronizzazione in entrata. Se non esistono altre repliche della partizione, il processo di replica in uscita è ancora pianificato sull'intervallo di frequenza del segnale di attività. Il processo di replica in uscita avvia quindi il processo di necrologia. Non è possibile, né necessario, pianificare manualmente il processo di necrologia. Quando si verifica una sincronizzazione, i vettori transitivi vengono aggiornati, con conseguente avanzamento del vettore di eliminazione e di quello dei necrologi. Man mano che questi vettori si spostano in avanti, gli stati dei necrologi possono avanzare. Questa operazione completa, insieme alla pianificazione automatica eseguita sulla sincronizzazione in entrata, il ciclo di elaborazione dei necrologi. Pertanto, l'obiettivo del processo di necrologia è la sincronizzazione degli oggetti.
Quando un oggetto viene rimosso, dopo che tutti i necrologi cui è associato un necrologio primario di tipo Cessato hanno raggiunto l'ultimo stato (ELIMINAZIONE CONSENTITA) e quest'ultimo è stato sincronizzato con tutte le repliche, un nuovo processo diventa responsabile della rimozione del restante involucro della voce dal database. Per rimuovere questi involucri, viene eseguito automaticamente il processo di eliminazione definitiva. È possibile pianificare manualmente il processo di eliminazione definitiva e modificarne il relativo intervallo di pianificazione automatica utilizzando
la pagina Configurazione dell'agente di iMonitor.In questa sezione sono riportati i seguenti esempi:
Nel caso di un necrologio primario, se non sono presenti necrologi secondari e se l'orario di modifica (MTS) dell'attributo sul necrologio è precedente a quello del vettore di eliminazione, tutti i server hanno rilevato la modifica apportata e tale necrologio verrà rimosso.
Se si tratta di un necrologio Back Link e questo è il server master, tale server è responsabile dell'elaborazione di questo necrologio.
Eseguire l'operazione richiesta per questo stato, se necessario. Nella maggior parte dei casi, tale operazione viene eseguita mediante la notifica di un riferimento esterno.
Se si tratta di un necrologio Usato da e questo è il server su cui è stata eseguita la cancellazione, determinata dal confronto tra il numero della replica nell'MTS del necrologio e il numero della replica in questione, tale server è responsabile dell'elaborazione di questo necrologio.
L'operazione di spostamento è simile a quella di cancellazione, con le seguenti differenze:
Gli oggetti con necrologi vengono considerati ogni volta che un agente esegue una sincronizzazione in uscita e durante il processo di necrologia pianificato per essere eseguito al termine di un ciclo di sincronizzazione in entrata.
A intervalli regolari, eseguire il rapporto informativo sul server di iMonitor. Questo rapporto scorre l'intero albero, comunica con tutti i server NCP rilevati e segnala tutti gli errori riscontrati. È possibile utilizzare questo rapporto per diagnosticare problemi relativi alla sincronizzazione dell'orario e al limber oppure per determinare se il server attuale è in grado di comunicare con tutti gli altri server dalla prospettiva di questo server. Se selezionato nella pagina di configurazione, questo server può generare anche informazioni sullo stato dell'agente NDS per ogni server dell'albero. Per ulteriori informazioni sull'esecuzione del rapporto informativo sul server, vedere la sezione Configurazione rapporto.
Se si utilizza iMonitor 2.0 o versione successiva, accertarsi che siano abilitate le seguenti opzioni di rapporto: Errori e Rapporto secondario sullo stato. Verranno verificati gli elementi riportati di seguito. È necessario sfogliare il rapporto e accertarsi che non siano presenti errori.
Se si utilizza iMonitor 1.5, selezionare l'opzione di rapporto Errori. Verranno verificati gli elementi riportati di seguito. È necessario sfogliare il rapporto e accertarsi che non siano presenti errori.
Se si utilizza il rapporto Elenco necrologi o Statistiche dell'oggetto di iMonitor, è possibile ricercare qualsiasi necrologio nel proprio sistema. Se si rilevano necrologi che si ritiene non siano stati elaborati, vedere la sezione Suggerimenti per la soluzione dei problemi.
Solitamente, i necrologi non vengono elaborati per due motivi: il necrologio è stato reso orfano, ossia esiste su alcuni server ma non su tutti, oppure è bloccato, ossia esiste su tutti i server ma, per qualche motivo, non avanza di stato.
Utilizzare i seguenti elementi per risolvere il problema dei necrologi orfani o bloccati:
i problemi di comunicazione –625, -622, -634 e -635. Vedere la sezione Rapporto informativo sul server per ulteriori informazioni.
i problemi –601 e -603, che indicano che i server sono stati rimossi in modo errato oppure che la classe di base dell'oggetto Server potrebbe essere sconosciuta.
Utilizzare la soluzione appropriata tra quelle descritte nella sezione Suggerimenti per la risoluzione dei problemi.
Prima di utilizzare una di queste soluzioni, è necessario accertarsi che i propri dati siano sicuri. È possibile che sia necessario eseguire il backup dei file del database di directory, della configurazione del server e dei trustee. Per aumentare la probabilità di riuscita e ridurre al minimo la possibilità di problemi futuri, eseguire l'upgrade ai support pack più aggiornati di eDirectory.
Risoluzione dei necrologi orfani
- Metodo consigliato: se su uno qualsiasi dei server dell'anello di replica è in esecuzione eDirectory 8.6 o versione successiva, individuare l'oggetto in iMonitor e selezionare l'invio di una singola voce. Verrà eseguito un invio senza autorità a tutte le altre repliche.
- Metodo non consigliato: se su tutti i server dell'anello di replica che dispongono di una copia del necrologio orfano è in esecuzione una versione di eDirectory precedente alla 8.6, caricare DSBrowse con l'opzione –a, individuare l'oggetto, quindi selezionare <visit> per registrare l'orario della voce. In questo modo, l'oggetto presente su questo server diverrà la copia con autorità. Non è consigliabile adottare la consuetudine di attribuire autorità agli oggetti.
Risoluzione dei necrologi orfani sui riferimenti esterni
- Metodo meno consigliato: eseguire DSRepair versione <visit> con l'opzione <visit> selezionata.
- Metodo meno consigliato: spostare una replica reale sul server, attenderne l'attivazione e quindi attendere l'elaborazione del necrologio. Se il necrologio non viene elaborato, utilizzare le informazioni contenute nella sezione Suggerimenti per la soluzione dei problemi per risolvere il problema ora che l'oggetto si trova su una replica reale. Se si desidera, è possibile rimuovere la replica una volta elaborato il necrologio.
In passato, sono state sviluppate diverse strategie per eseguire la pulizia dei necrologi bloccati. Alcune di queste strategie richiedono costose operazioni di partizione o l'utilizzo di funzioni non documentate che potrebbero creare problemi in futuro. Molte delle strategie riportate di seguito non devono essere utilizzate.
La prima strategia consisteva nel commutare la replica contenente il master. Tale strategia funziona solo in alcuni casi, in quanto il master è l'agente responsabile dello spostamento dei necrologi Back Link attraverso i vari stati. Nel caso in cui la replica fosse stata incoerente e il master non avesse contenuto l'oggetto cancellato, il passaggio dei master ad un agente che disponeva della voce cancellata con i relativi necrologi avrebbe consentito al nuovo agente di far passare i necrologi attraverso i relativi stati ed eventualmente eliminarli. L'invio di una singola voce rappresenta un modo molto più corretto e meno pericoloso di risolvere i problemi di necrologi bloccati a causa di una replica incoerente.
La seconda strategia utilizzata consisteva nell'eseguire DSRepair con determinati commutatori per cancellare tutti i necrologi. Si tratta di un'applicazione di terze parti che esegue la pulizia dei necrologi bloccati mediante l'avvio di DSRepair. Questa strategia è sconsigliata dal team di sviluppo di eDirectory. L'utilizzo di questi commutatori comporta la cancellazione di tutti i necrologi su questo agente, con conseguente rimozione anche dei necrologi non bloccati, e la creazione di ulteriori necrologi bloccati e incoerenze tra le repliche. Poiché si tratta di un'operazione non distribuita, è necessario eseguire DSRepair su tutti i server che presentano necrologi bloccati; in questo modo aumenta la possibilità che uno di questi server disponga di necrologi per un'altra partizione che verranno prematuramente cancellati. La cancellazione prematura dei necrologi può generare ulteriori necrologi orfani e, di conseguenza, causare problemi che possono presentarsi anni dopo nel momento in cui si dovessero modificare i tipi di replica, aggiungere nuove repliche o eseguire altre operazioni di partizione.
La terza strategia utilizzata consiste nell'attribuire autorità agli oggetti utilizzando DSBrowse in modalità avanzata e registrando l'orario della voce oppure eseguendo DSRepair con il commutatore –0T. In questo modo, la voce diviene obbligatoriamente con autorità e viene sincronizzata con tutte le altre repliche. È necessario prestare molta attenzione quando si effettua la registrazione dell'orario e si attribuisce autorità agli oggetti, in quanto si potrebbero perdere i dati modificati sugli altri server. Il team di sviluppo di eDirectory consiglia di non utilizzare spesso questo metodo di pulizia dei necrologi.
Un simbolo di marchio di fabbrica (®, TM e così via) indica un marchio di fabbrica di Novell. Un asterisco (*) indica un marchio di fabbrica di terze parti. Per informazioni sui marchi di fabbrica, vedere Note legali.