Synchronisation

La synchronisation désigne le transfert d'informations sur l'annuaire d'une réplique vers une autre, pour garantir la cohérence des deux partitions. eDirectory garde automatiquement les serveurs de l'anneau de répliques synchronisés.

La synchronisation peut être entrante ou sortante. Par exemple, si les modifications de données doivent être synchronisées à partir des serveurs 1 et 2, le terme sortant désigne le processus de synchronisation envoyé du serveur 1 au serveur 2, tandis que le terme entrant désigne le processus de synchronisation reçu du serveur 1 par le serveur 2.

Figure 23
Synchronisations entrante et sortante

Il existe deux types de synchronisation :

Le tableau ci-dessous compare les synchronisations normale et de priorité :


Table 1. Comparaison entre la synchronisation normale (ou des répliques) et la synchronisation de priorité

Synchronisation normale ou synchronisation des répliques Synchronisation de priorité

Se déclenche en cas de modifications de données sur n'importe quel serveur de l'anneau de répliques.

Pour plus d'informations, reportez-vous à la section Synchronisation normale ou des répliques.

Se déclenche uniquement en cas de modifications des données identifiées comme essentielles.

Pour plus d'informations, reportez-vous à la section Synchronisation de priorité.

Une fois les données modifiées, les changements sont enregistrés dans la mémoire tampon. La synchronisation normale débute environ 30 secondes après l'enregistrement des modifications.

Les changements apportés aux données essentielles ne sont pas enregistrés dans la mémoire tampon. La synchronisation de priorité débute immédiatement après la modification des données.

Principale synchronisation dans eDirectory. Elle s'opère, que la synchronisation de priorité soit activée ou non.

Processus complémentaire à la synchronisation normale. Bien que les attributs essentiels soient synchronisés par la synchronisation de priorité, ils le sont à nouveau par la synchronisation normale.

Peut s'opérer entre serveurs eDirectory 8.8 ou avec des serveurs qui hébergent des versions antérieures de eDirectory.

S'opère uniquement entre des serveurs eDirectory 8.8 contenant la même partition.

N'échoue jamais à cause de ses caractéristiques.

Pour plus d'informations, reportez-vous à la section Caractéristiques de la synchronisation.

Si la synchronisation de priorité échoue, les modifications des données essentielles sont synchronisées par la synchronisation normale.

Pour plus d'informations, reportez-vous à la section Situations d'échec de la synchronisation de priorité.


Caractéristiques de la synchronisation

La synchronisation dans eDirectory :


Synchronisation transitive

La synchronisation dans eDirectory est transitive. Cela signifie que eDirectory synchronise les modifications apportées aux données sans que l'agent eDirectory doive contacter directement tous les autres agents de l'anneau de répliques pour synchroniser les changements avec chacun d'entre eux.

Figure 24
Synchronisation transitive

Par exemple, si vous modifiez des données sur le serveur 1, les changements sont synchronisés du serveur 1 vers le serveur 2, puis du serveur 2 vers le serveur 3. Si le serveur 1 n'a pas pu entrer directement en contact avec le serveur 3 en raison d'un problème de communication, ce dernier reçoit malgré tout les modifications par le biais du serveur 2. Il le signale au serveur 2 qui, à son tour, indique au serveur 1 que le serveur 3 et lui-même sont synchronisés.


Modèle de transactions d'objets

La synchronisation dans eDirectory gère le modèle de transactions d'objets, une norme pour les annuaires compatibles X.500 et LDAP. Le modèle de transactions d'objets signifie que toutes les transactions précédentes doivent être synchronisées avant d'en synchroniser de nouvelles.

Imaginons, par exemple, que vous avez apporté les modifications D1, D2 et D3 aux données d'un serveur. En raison d'une défaillance réseau, ces modifications ne sont pas synchronisées sur les autres serveurs. Si vous apportez ensuite une modification D4 sur le serveur, celle-ci ne sera synchronisée qu'après la synchronisation de D1, D2 et D3 sur tous les serveurs de l'anneau de répliques.


Transitive Vector

Un vecteur de transition est un tampon horaire pour une réplique. Ce tampon est constitué d'une représentation du nombre de secondes écoulées depuis un point de référence historique commun (1er janvier 1970), du numéro de réplique et du numéro d'événement en cours. Par exemple : s3D35F377 r02 e002

Pour plus d'informations, reportez-vous à la section Vecteurs de transition et processus de vérification de la restauration.


Local Received Up To

Local Received Up To (LRUT) désigne l'heure à laquelle les dernières modifications sont parvenues à la réplique locale.

Pour plus d'informations, reportez-vous à la section Accès aux objets de votre arborescence .


Remote Received Up To

Remote Received Up To (RRUT) désigne l'heure à laquelle les dernières modifications sont parvenues à la réplique distante.

Pour plus d'informations, reportez-vous à la section Accès aux objets de votre arborescence .


Synchronisation normale ou des répliques

La synchronisation normale, également appelée synchronisation des répliques, désigne l'un des deux processus de synchronisation dans eDirectory. Elle synchronise toutes les modifications apportées aux données d'un serveur avec les autres serveurs de l'anneau de répliques.

La synchronisation normale s'opère sur tous les serveurs hébergeant une quelconque version de eDirectory, qui possèdent la même partition.

Pour plus d'informations, reportez-vous à la section Gestion des répliques.

Vous pouvez activer ou désactiver la synchronisation normale en activant ou désactivant les synchronisations entrante et sortante dans Novell iMonitor. Par défaut, ces deux formes de synchronisation sont activées. Pour que les modifications apportées aux données soient synchronisées sur les différents serveurs par le biais de la synchronisation normale, vous devez configurer les paramètres de synchronisation dans iMonitor. Pour plus d'informations, reportez-vous à la section Contrôle et configuration de l'agent DS.

Avec la synchronisation normale, lorsque vous modifiez des données, les changements sont enregistrés dans la mémoire tampon avant d'être synchronisés sur les autres serveurs. Vous pouvez consulter l'état de synchronisation des serveurs de votre configuration dans iMonitor. Pour plus d'informations, reportez-vous à la section Accès aux objets de votre arborescence .

La synchronisation normale est transitive et gère le modèle de transactions d'objets. Pour plus d'informations, reportez-vous aux sections "Synchronisation transitive" et "Modèle de transactions d'objets" à la page 101.


Configuration de la synchronisation normale

Vous pouvez configurer la synchronisation normale à l'aide de Configuration de l'agent sous Synchronisation de l'agent dans iMonitor.

Cette section fournit les informations suivantes :


Activation/désactivation de la synchronisation normale

Vous pouvez activer ou désactiver la synchronisation normale en activant ou désactivant les synchronisations entrante et sortante dans iMonitor. Pour plus d'informations, reportez-vous à la section to Contrôle et configuration de l'agent DS.

La synchronisation sortante est activée par défaut. Si l'option est désactivée pour un serveur, les modifications apportées aux données sur ce serveur ne seront pas synchronisées avec les autres serveurs. Vous pouvez indiquer, en heures, le délai pendant lequel la synchronisation sortante doit être désactivée. La valeur par défaut de ce paramètre est 24 heures, ce qui correspond également au délai maximal autorisé. Une fois le délai spécifié écoulé, les modifications apportées aux données sur ce serveur sont synchronisées avec les autres serveurs.

La synchronisation entrante est activée par défaut. Si l'option est désactivée pour un serveur, les modifications apportées aux données sur d'autres serveurs ne seront pas synchronisées avec ce serveur.


Activation/désactivation du cache en ligne

Le cache de changement en ligne peut être activé ou désactivé pour un serveur. Cette option ne peut toutefois être désactivée que si la synchronisation sortante est elle-même désactivée. Si la synchronisation sortante est activée, le cache de changement en ligne l'est également.

La désactivation du cache de changement en ligne rend ce cache non valide pour la réplique concernée ; il apparaît avec un drapeau non valide dans Configuration de l'agent > Partitions. Si le cache de changement en ligne est réactivé, le drapeau non valide est supprimé lors de la reconstruction du cache.


Threads de synchronisation

Pour la synchronisation sortante, vous devez configurer les threads de synchronisation. iMonitor vous permet de spécifier le nombre de threads de synchronisation à l'aide de Configuration de l'agent sous Synchronisation de l'agent. Les valeurs prises en charges sont comprises entre 1 et 16.

Pour plus d'informations, reportez-vous à la section Contrôle et configuration de l'agent DSto Contrôle et configuration de l'agent DS.


Méthode de synchronisation

En principe, eDirectory choisit automatiquement la méthode en fonction du nombre de répliques et de partenaires de réplication. Les différentes méthodes de synchronisation sont les suivantes :

  • Par partition : les modifications apportées aux données sont synchronisées simultanément avec les autres répliques, à l'aide de plusieurs threads. Ainsi, si vous apportez les modifications D1, D2 et D3 aux données de la réplique R1 et que celles-ci doivent être synchronisées avec les répliques R2 et R3, elles le sont simultanément.

  • Par serveur : les modifications apportées aux données sont synchronisées séquentiellement par le biais d'un seul thread. Si vous apportez les modifications D1, D2 et D3 aux données de la réplique R1 et que celles-ci doivent être synchronisées avec les répliques R2 et R3, D1 est d'abord synchronisée avec R2 et R3, puis D2, et ainsi de suite.

  • Par ajustement dynamique : eDirectory choisit automatiquement la méthode de synchronisation en fonction des ressources système allouées.

iMonitor vous permet de spécifier la méthode de synchronisation à l'aide de Configuration de l'agent sous Synchronisation de l'agent. Pour plus d'informations, reportez-vous à la section Contrôle et configuration de l'agent DS.


Synchronisation de priorité

La synchronisation de priorité désigne l'un des deux processus de synchronisation dans eDirectory. Dans eDirectory 8.8 ou version ultérieure, elle permet de synchroniser les données essentielles immédiatement, sans devoir attendre la synchronisation normale.

La synchronisation de priorité vient compléter le processus de synchronisation normale dans eDirectory. Contrairement à cette dernière, pour la synchronisation de priorité, les changements ne sont pas enregistrés dans la mémoire tampon avant d'être synchronisés sur les autres serveurs, ce qui accélère le processus.

La synchronisation de priorité est activée par défaut. Pour plus d'informations, reportez-vous à la section Activation/désactivation de la synchronisation de priorité entrante/sortante.

Pour synchroniser les modifications apportées aux données essentielles par le biais de la synchronisation de priorité :

  1. Spécifiez le nombre de threads pour la synchronisation de priorité.

    Pour plus d'informations, reportez-vous à la section Synchronisation de priorité - Threads.

  2. Spécifiez la taille de la file d'attente pour la synchronisation de priorité.

    Pour plus d'informations, reportez-vous à la section Synchronisation de priorité - Taille de la file d'attente.

  3. Créez et définissez une règle de synchronisation de priorité en identifiant les attributs essentiels à synchroniser en priorité.

    Pour plus d'informations, reportez-vous à la section Création et définition d'une règle de synchronisation de priorité.

  4. Appliquez la règle de synchronisation de priorité à une ou plusieurs partitions.

    Pour plus d'informations, reportez-vous à la section Application d'une règle de synchronisation de priorité.

Le processus de synchronisation de priorité vise uniquement la synchronisation des modifications apportées aux attributs essentiels. Si vous créez un objet qui comporte des attributs essentiels, il n'est pas synchronisé avec les autres serveurs.

La synchronisation de priorité gère le modèle de transactions d'objets. Dès lors, si des données non essentielles ont été modifiées et ne sont pas encore synchronisées et que des données essentielles sont changées pour la même entrée, les premières et les secondes sont synchronisées simultanément.

Imaginons, par exemple, qu'un utilisateur possède les attributs Salaire, N° employé, Adresse et N° unité, et que vous identifiez Salaire et Adresse comme essentiels. N° employé et N° unité ont été modifiés, mais ne sont pas encore synchronisés. Lorsque les modifications de Salaire et Adresse sont synchronisées par le biais de la synchronisation de priorité, N° employé et N° unité le sont également, bien qu'ils ne soient pas identifiés comme essentiels.

Cette section fournit les informations suivantes :


Activation/désactivation de la synchronisation de priorité entrante/sortante

Dans eDirectory 8.8 ou version ultérieure, vous pouvez activer ou désactiver la synchronisation de priorité entrante et/ou sortante à l'aide de iMonitor. Pour plus d'informations, reportez-vous à la section Contrôle et configuration de l'agent DS.

La synchronisation de priorité entrante est activée par défaut. Si l'option est désactivée pour un serveur, les modifications apportées aux données essentielles sur les autres serveurs ne sont pas synchronisées avec ce serveur par le biais de la synchronisation de priorité. Elles le sont toutefois par le processus de synchronisation normale.

La synchronisation de priorité sortante est activée par défaut. Si l'option est désactivée pour un serveur, les modifications apportées aux données essentielles sur ce serveur ne sont pas synchronisées avec les autres serveurs par le biais de la synchronisation de priorité. Elles le sont toutefois par le processus de synchronisation normale.


Synchronisation de priorité - Threads

Vous devez configurer le nombre de threads à utiliser pour la synchronisation de priorité sortante. Dans iMonitor, vous pouvez spécifier le nombre de threads de la synchronisation de priorité à l'aide de Configuration de l'agent sous Synchronisation de l'agent. Pour plus d'informations, reportez-vous à la section to Contrôle et configuration de l'agent DS. Les valeurs prises en charges sont comprises entre 1 et 32. La valeur par défaut est 4.


Synchronisation de priorité - Taille de la file d'attente

Ce paramètre indique le nombre maximal d'entrées essentielles modifiées que la file d'attente peut contenir avant de les synchroniser. Dès que vous modifiez les entrées essentielles, elles s'ajoutent dans la file d'attente de la synchronisation de priorité et sont synchronisées l'une après l'autre. Imaginons, par exemple, que D1, D2 et D3 sont les entrées essentielles modifiées sur le serveur 1 et qu'elles doivent être synchronisées sur les serveurs 2 et 3 par la synchronisation de priorité. D1 est synchronisée avec les serveurs 2 et 3, puis D2 est synchronisée et enfin, D3. Si une entrée antérieure de la file d'attente n'est pas correctement synchronisée avec l'un des serveurs, cela n'affecte pas la synchronisation des autres entrées.

Figure 25
File d'attente de la synchronisation de priorité

Vous pouvez spécifier la taille de la file d'attente pour la synchronisation de priorité dans iMonitor à l'aide de Configuration de l'agent sous Synchronisation de l'agent. Pour plus d'informations, reportez-vous à la section Contrôle et configuration de l'agent DS.

Lors d'un processus de synchronisation de priorité, si plusieurs modifications sont apportées en peu de temps, la file d'attente risque d'atteindre sa taille maximale. Dans ce cas, elle expire et une nouvelle file d'attente est formée. Les modifications dans l'ancienne file d'attente qui n'ont pas encore été synchronisées le seront par la synchronisation normale.

La taille de la file d'attente pour la synchronisation de priorité peut être comprise entre 0 et 232 - 1. Par défaut, elle est de 232 - 1. Si la taille de la file d'attente de la synchronisation de priorité est définie sur 0, les modifications ne sont pas synchronisées par cette synchronisation. Elles le sont toutefois par la synchronisation normale.

La valeur -1 implique une taille de file d'attente illimitée. -1 correspond à 232 - 1. Si une valeur négative est spécifiée, -3 par exemple, cela signifie -3 = -1-2, ce qui correspond à 232 - 1-2.


Gestion des règles de synchronisation de priorité

Pour gérer la synchronisation de priorité, vous pouvez créer et définir des règles et les appliquer à des partitions via iManager ou LDAP. Vous définissez une règle de synchronisation de priorité en identifiant les attributs qui sont essentiels.

NOTE:  les plug-ins sont uniquement disponibles dans Novell iManager 2.5 et version ultérieure.

Figure 26
Processus de synchronisation de priorité

Par exemple, si les attributs Mot de passe et Numéro de compte sont essentiels, vous pouvez créer une règle de synchronisation de priorité PS1 qui contient ces attributs. Vous pouvez ensuite appliquer cette règle à une partition P1. Si vous modifiez le mot de passe ou le numéro de compte d'une entrée sur un serveur, les changements sont immédiatement synchronisés avec les autres serveurs qui ont la partition P1.

Pour que la synchronisation de priorité s'effectue, vous devez vérifier que les synchronisations de priorité entrante et sortante sont activées dans iMonitor. Elles le sont par défaut. Si vous désactivez les synchronisations de priorité entrante et sortante, les modifications apportées aux données sont synchronisées par la synchronisation normale.

Pour plus d'informations, reportez-vous à la section Contrôle et configuration de l'agent DS.

Cette section fournit les informations suivantes :

Lorsque vous créez une partition enfant, la règle de synchronisation de priorité appliquée au parent est héritée par la partition enfant. Lorsque vous fusionnez des partitions, la règle de synchronisation de priorité du parent est conservée.


Création et définition d'une règle de synchronisation de priorité

Pour définir une règle de synchronisation de priorité, vous pouvez sélectionner les attributs directement ou par le biais d'une classe d'objet. Dans ce dernier cas, tous les attributs de la classe d'objet sont sélectionnés pour la synchronisation de priorité. Vous pouvez sélectionner les attributs obligatoires ou facultatifs pour cette synchronisation.

La règle de synchronisation de priorité peut être créée n'importe où dans l'arborescence eDirectory à l'aide de iManager ou de LDAP.

À l'aide de iManager :

  1. Cliquez sur le bouton Rôles et tâches Bouton R?les et t?ches.

  2. Cliquez sur Partition et répliques > Règles de synchronisation de priorité.

  3. Dans l'Assistant de gestion des règles de synchronisation de priorité, sélectionnez Créer une règle de synchronisation de priorité.

  4. Suivez les instructions de l'Assistant de création d'une règle de synchronisation de priorité pour créer la règle.

    Vous pouvez obtenir de l'aide via l'Assistant.

À l'aide de LDAP :

Pour créer une règle de synchronisation de priorité vide :

dn:cn=policy1,o=policieschangetype:addobjectclass:prsyncpolicy

Pour définir la règle de synchronisation de priorité en marquant les attributs pour la synchronisation de priorité :

dn:cn=policy2,o=policieschangetype:addobjectclass:prsyncpolicyprsyncattributes:description

Dans l'exemple ci-dessus, Description désigne l'attribut marqué pour la synchronisation de priorité.


Édition d'une règle de synchronisation de priorité

Vous pouvez éditer un objet Règle de synchronisation de priorité à l'aide de iManager ou de LDAP.

À l'aide de iManager :

  1. Cliquez sur le bouton Rôles et tâches Bouton R?les et t?ches.

  2. Cliquez sur Partition et répliques > Règles de synchronisation de priorité.

  3. Dans l'Assistant de gestion des règles de synchronisation de priorité, sélectionnez Éditer la règle de synchronisation de propriété.

  4. Suivez les instructions de l'Assistant d'édition de la règle de synchronisation de priorité pour éditer la règle.

    Vous pouvez obtenir de l'aide via l'Assistant.

À l'aide de LDAP :

Dans l'exemple suivant, la règle de synchronisation de priorité est modifiée en marquant Surname (Nom de famille) pour la synchronisation de priorité au lieu de Description.

dn:cn=policy2,o=policieschangetype:modifyadd:prsyncattributesprsyncattributes:surname

Pour supprimer de la règle de synchronisation de priorité un attribut marqué pour la synchronisation de priorité :

dn:cn=policy2,o=policieschangetype:modifyadd:prsyncattributesprsyncattributes:description

Dans l'exemple ci-dessus, l'attribut Description est supprimé de la règle de synchronisation de priorité.


Application d'une règle de synchronisation de priorité

Vous pouvez appliquer une règle de synchronisation de priorité à plusieurs partitions, mais une seule règle par partition.

Vous pouvez appliquer une règle de synchronisation de priorité à une partition à l'aide de iManager ou de LDAP.

À l'aide de iManager :

  1. Cliquez sur le bouton Rôles et tâches Bouton R?les et t?ches.

  2. Cliquez sur Partition et répliques > Règles de synchronisation de priorité.

  3. Dans l'Assistant de gestion des règles de synchronisation de priorité, sélectionnez Apply Priority Sync Policy (Appliquer la règle de synchronisation de priorité).

  4. Suivez les instructions de l'Assistant d'application de la règle de synchronisation de priorité pour appliquer la règle.

    Vous pouvez obtenir de l'aide via l'Assistant.

À l'aide de LDAP :

Pour appliquer une règle de synchronisation de priorité à une partition racine :

dn:changetype:modifyadd:prsyncpolicydnprsyncpolicydn:cn=policy2,o=policies

Dans l'exemple ci-dessus, la règle policy2 est appliquée à la partition racine.

Pour appliquer une règle de synchronisation de priorité à une partition non racine :

dn:o=orgchangetype:modifyadd:prsyncpolicydnprsyncpolicydn:cn=policy2,o=policies

Dans l'exemple ci-dessus, la règle policy2 est appliquée à la partition non racine.

Pour remplacer une règle de synchronisation de priorité pour une partition non racine :

dn:o=orgchangetype:modifyreplace:prsyncpolicydnprsyncpolicydn:cn=policy1,o=policies

Dans l'exemple ci-dessus, la règle policy2 est remplacée par la règle policy1.

Pour dissocier une règle de synchronisation de priorité d'une partition non racine :

dn:o=orgchangetype:modifydelete:prsyncpolicydn

Dans l'exemple ci-dessus, la règle de synchronisation de priorité est dissociée de la partition non racine O=Org.


Suppression d'une règle de synchronisation de priorité

Vous pouvez supprimer une règle de synchronisation de priorité à l'aide de iManager ou de LDAP.

À l'aide de iManager :

  1. Cliquez sur le bouton Rôles et tâches Bouton R?les et t?ches.

  2. Cliquez sur Partition et répliques > Règles de synchronisation de priorité.

  3. Dans l'Assistant de gestion des règles de synchronisation de priorité, sélectionnez Delete Priority Sync Policy (Supprimer la règle de synchronisation de priorité).

  4. Suivez les instructions de l'Assistant de suppression de la règle de synchronisation de priorité pour supprimer la règle.

    Vous pouvez obtenir de l'aide via l'Assistant.

À l'aide de LDAP :

dn:cn=policy1,o=policieschangetype:delete


Situations d'échec de la synchronisation de priorité

La synchronisation de priorité peut échouer dans l'une des situations suivantes :

  • Défaillance réseau : la synchronisation de priorité n'enregistre pas les modifications si elle ne parvient pas à les envoyer au serveur distant en raison d'une défaillance réseau.
  • Taille maximale de la file d'attente de la synchronisation de priorité atteinte : la synchronisation de priorité ignore les changements dans la file d'attente de la synchronisation de priorité si le nombre d'entrées dépasse la taille de cette file d'attente.
  • Échec de la synchronisation des schémas : si le schéma n'est pas synchronisé, le processus de synchronisation de priorité échoue.
  • Objet inexistant sur les autres serveurs : si la création de l'objet n'est pas synchronisée, la synchronisation de priorité échoue.
  • Serveurs mixtes dans l'anneau de répliques : si vous disposez de serveurs eDirectory 8.8 et d'autres dotés d'une version antérieure, la synchronisation de priorité échoue.

Lorsque la synchronisation de priorité échoue pour l'une des raisons susmentionnées, les changements apportés aux données essentielles sont synchronisés par le processus normal.