Lorsque vous exécutez la commande de redirection du domaine en mode de prévérification, les données de l'instance de vCenter Server sont exportées et examinées, puis les conflits sont répertoriés dans un fichier.

Les données suivantes sont exportées vers le dossier /storage/domain-data/ ou ProgramData/VMWare/vCenterServerdata/domaine-data :

  • All_Privileges.json
  • All_Roles.json
  • All_TagCategories.json
  • All_Tags.json

Ces fichiers contiennent toutes les données (d'autorisation et de balisage) de l'instance de vCenter Server sur laquelle cette commande a été exécutée.

Si une instance secondaire de vCenter Server est fournie en utilisant l'option -dvf ou --dest-vc-fqdn , les conflits sont également exportés vers le même dossier :

  • Conflicts_Roles.json
  • Conflicts_TagCategories.json
  • Conflicts_Tags.json

Voici un exemple de fichier de conflits :

<---- Sample Conflict file code block --->
	 {
  "global" : {
    "resolution" : "MERGE|SKIP|COPY",
    "description" : "Default resolution option used to resolve Role Conflicts is COPY. The 
conflicts list describes the differences between Role entities on source and target vCenter Server. If 
the source information represents an empty JSON array, it simply means that all the entity 
attributes from source and target are identical. If the source lists few entries, it means 
that only these entity attributes are missing from the target. If the target lists few entries, 
it means that only these entity attributes are missing from the source. Though a global resolution 
can be set, it can also be overridden at each conflict level by providing individual resolution 
mode."
  },
  "conflicts-count" : 1,
  "conflicts-list" : {
    "NoCryptoAdmin" : {
      "source" : {
        "privileges" : "[]"
      },
      "target" : {
        "privileges" : "[Group-1.SamplePriv-1, Group-1.SamplePriv-4, Group-2.SamplePriv-10, 
Group-2.SamplePriv-3, Group-2.SamplePriv-7, Group-3.SamplePriv-2, Group-3.SamplePriv-9]"
      },
      "resolution" : ""
    }
}
<----- End of code block --->

Voici les différentes parties de ces fichiers de conflits :

  • description. Fournit des détails sur la manière dont les différents fichiers de conflits doivent être lus et analysés.
  • source et target. Objets JSON qui répertorient uniquement les différences entre les objets vCenter Server source et cible.
  • resolution. L'utilisateur fournit une résolution valide. Les résolutions valides sont MERGE, COPY et SKIP.

Pour spécifier la résolution des conflits, vous pouvez fournir une option de résolution par défaut pour tous les conflits dans la section "global": "resolution" = "MERGE|SKIP|COPY". Si vous ne pouvez pas fournir un type de résolution globale valide pour la propriété resolution ou que vous ne la modifiez pas, le système utilise COPY comme option de résolution par défaut.

Vous pouvez également fournir une option de résolution valide pour chacun des conflits en modifiant la propriété resolution au niveau de chaque conflit, ce qui remplace l'option de résolution globale.

Les types de conflits sont répertoriés dans Types de conflits.

Tableau 1. Types de conflits
Conflit Propriétés utilisées pour comparer les objets de la catégorie Types de conflits Propriétés en conflit Options de résolution des conflits
Conflit de rôle
  • name : nom de la catégorie.
  • privilegeId : liste des privilèges du rôle.

Le conflit RoleName se produit pendant l'importation des rôles lorsqu'un rôle existant porte le même nom dans l'instance cible de vCenter Server, mais avec des privilèges différents.

Les propriétés qui peuvent être en conflit pour le type de conflit RoleName peuvent être les Privileges.
  • COPY. Une copie du rôle en conflit est créée dans l'instance cible de vCenter Server, avec le suffixe –-copy ajouté au nom du rôle. Le nouveau rôle est créé avec un nouvel ID de rôle et le même ensemble d'ID de privilège. Le nouvel ID de rôle est mis à jour dans la table VPX_ACCESS. Le nouvel ID de rôle s'applique à la fois aux conflits de nom de rôle et aux conflits d'ID de rôle.
    Note :
    L'option de résolution par défaut pour résoudre les conflits de rôle est COPY.
  • MERGE. L'option MERGE est résolue dans la séquence suivante :
    1. Si l'instance source de vCenter Server possède un rôle avec le même nom et la même liste de privilèges qu'un rôle dans l'instance cible de vCenter Server, mais que les ID de rôle sont différents, alors l'ID de rôle de l'instance cible de vCenter Server est utilisé et mis à jour dans la table VPX_ACCESS.
    2. Si l'instance source de vCenter Server possède un rôle avec le même nom qu'un rôle dans l'instance cible de vCenter Server, mais avec une liste des privilèges différente, alors les listes de privilèges des deux rôles sont fusionnées.
  • SKIP. Ne rien faire. Le rôle spécifique est ignoré.

Conflit de catégorie de balise : un nom de catégorie doit être unique dans vCenter Server.
  • name : nom de la catégorie.
  • cardinality : cardinalité de la catégorie (simple ou multiple).
  • associableEntityType : liste d'objets vCenter Server qui peuvent être associés à une balise dans cette catégorie. Une valeur All indique tous les objets vCenter Server.
Un seul type de conflit peut survenir lors de l'importation des catégories de balises : le conflit CategoryName. Ce conflit indique qu'une catégorie existante porte le même nom dans l'instance cible de vCenter Server, mais avec des propriétés différentes (cardinality ou associableEntityType). Les propriétés qui peuvent être en conflit pour le type de conflit CategoryName peuvent être de type Cardinality ou AssociableTypes.
  • COPY. Une copie de la catégorie en conflit est créée dans l'instance cible de vCenter Server, avec le suffixe –-copy ajouté au nom de la catégorie. La nouvelle catégorie est créée avec le même nom de propriété que dans l'instance source de vCenter Server. Toutes les balises présentes dans cette catégorie sont importées dans la catégorie CategoryCopy récemment créée.
    Note :
    L'option de résolution par défaut pour résoudre les conflits de CategoryName est COPY.
  • MERGE. Les propriétés en conflit sont fusionnées avec la catégorie déjà présente dans le service SSO. Les propriétés sont fusionnées comme suit :
    1. Description. La description qui est déjà présente est utilisée.
    2. Cardinality. Impossible de réduire la cardinalité. S'il existe un conflit de cardinalité, la cardinalité est définie sur multiple. Elle ne peut pas être réduite à une seule.
    3. AssociableTypes. Si les valeurs de associableEntityType sont null, elle est définie sur null. Dans le cas contraire, les types de Objects sont fusionnés.
  • SKIP. Ne rien faire. Toutes les balises sont importées sous la catégorie existante.

Conflit de balises : un objet tag appartient toujours à un objet category. Un nom de balise doit être unique à l'intérieur d'une catégorie.
  • name
  • description
Un seul type de conflit peut survenir lors de l'importation des balises : le conflit TagName. Ce conflit indique qu'une balise existante porte le même nom dans la même catégorie et dans l'instance de cible vCenter Server, mais avec des propriétés différentes. Les propriétés Description peuvent être en conflit pour le type de conflit TagName.
  • COPY. Une copie de la balise en conflit est créée dans l'instance cible de vCenter Server, avec le suffixe –-copy ajouté au nom de la balise. Prenez le MoRef (ID de balise interne) de la nouvelle balise et mettez à jour l'association de balises si nécessaire.
    Note :
    L'option de résolution par défaut pour résoudre les conflits de CategoryName est COPY.
  • MERGE. Conservez la description existante. Prenez le MoRef (ID de balise interne) et mettez à jour une ou plusieurs associations de balises si nécessaire.

  • SKIP. Ne rien faire. Ne créez pas cette balise. Nettoyez les associations de balises.