Gestion des CI dépendants
Une mise à jour du cycle de vie d’un CI affecte ses CI dépendants. Par exemple, lorsque le CI dont dépend un CI dépendant est supprimé, le CI dépendant devient orphelin et n’est plus utilisé. Pour préserver l’intégrité et l’intégrité de la CMDB, le système applique des processus de nettoyage en cascade aux CI dépendants affectés par une mise à jour du cycle de vie.
Pour plus d’informations sur les CI indépendants et dépendants, reportez-vous à la section Classifications CMDB et dépendance de classe.
- Activez la gestion des CI dépendants comme décrit sur cette page.
- Approuvez manuellement les tâches du gestionnaire de données CMDB générées par la gestion des CI dépendants, ou configurez ces tâches de manière à ne pas exiger d’examen ou d’approbation.
- L’application Tomcat (T1) s’exécute sur un serveur Linux (L1) et contient un fichier WAR (W1). Lorsque L1 est supprimé, T1 et W1 deviennent des CI dépendants orphelins.
- Les cartes réseau deviennent des CI dépendants orphelins lorsque le matériel lui-même est supprimé.
- Un serveur Linux a été mis hors service et est en fin de vie, l’hypothèse est que si le serveur n’est plus opérationnel, les applications qui en dépendent ne devraient pas l’être non plus.
Activer la gestion des CI dépendants
- Configurez votre environnement pour le gestionnaire de données CMDB. Pour plus d’informations sur la configuration de l’environnement pour le gestionnaire de données CMDB et les conditions préalables propres au gestionnaire de données CMDB, reportez-vous à la section Travailler avec le gestionnaire de données CMDB.
- Assurez-vous que la cmdb.dependent.ci.cascade.op.enabled propriété système est définie sur vrai (vrai par défaut). Cette propriété active les opérations en cascade et n’existe pas dans le système de base. Par conséquent, pour afficher ou modifier la valeur de la propriété, vous devez d’abord l’ajouter à la table Propriétés système [sys_properties].
- Pour activer les processus de mise hors service en cascade, assurez-vous que la propriété cmdb.dependent.ci.cascade.retire.enabledsystème, qui est utilisée pour gérer la mise hors service en cascade des CI, est définie sur vrai (faux par défaut). La règle After BR: Track “Retired” CIsmétier , qui vérifie les dépendances de CI en aval, s’exécute uniquement si cette propriété est définie sur vrai. Cette propriété n’existe pas dans le système de base et, pour l’afficher ou la modifier, vous devez d’abord l’ajouter à la table Propriétés système [sys_properties].
Les opérations de nettoyage en cascade s’appliquent uniquement lorsque vous activez la fonctionnalité de gestion des CI dépendants. Pour appliquer le nettoyage en cascade aux CI dépendants orphelins qui existaient déjà dans la CMDB avant l’activation de la fonctionnalité, reportez-vous à la section Nettoyage en cascade des CI dépendants orphelins existants.
Utilisation du gestionnaire de données CMDB pour effectuer des opérations de nettoyage en cascade
- Demander et obtenir les approbations des utilisateurs pour les mises à jour du cycle de vie des CI.
- Exécution des mises à jour de CI de suppression, d’archivage ou de mise hors service réelles une fois ces opérations approuvées.
Le système génère des tâches pour les politiques du gestionnaire de données « CI dépendant : suppression », « CI dépendant : archive » et « CI dépendant : mettre hors service », avec les CI prêts à être supprimés, archivés ou mis hors service en tant que CI cibles. Ces politiques sont définies avec les types de politiques « Sur demande » respectifs. Ensuite, un administrateur ou un utilisateur du gestionnaire de données, selon le Managed By Group paramètre, doit examiner et approuver ces tâches avant que le gestionnaire de données n’applique le flux secondaire respectif aux CI dépendants.
Pour approuver automatiquement ces tâches, utilisez le gestionnaire de données CMDB pour effacer le marqueur Requiert une revue des politiques respectives du gestionnaire de données. Ces tâches s’exécuteront alors sans intervention de l’utilisateur.
Mettre hors service en cascade les CI dépendants
Lorsqu’un CI est défini pour être mis hors service, les processus de données de gestion des CI dépendants tentent de mettre à jour en cascade tous les CI dépendant de ce CI, également pour qu’ils soient mis hors service.
- Le CI est mis à jour pour être mis hors service, car l’attribut du Life Cycle Stage CI est défini sur Fin de vie selon les normes CSDM.
-
Une règle After BR: Track “Retired” CIs métier s’exécute (uniquement si la propriété cmdb.dependent.ci.cascade.retire.enabled système est vraie) pour vérifier si le CI appartient à une classe qui a des dépendances en aval.
Si oui : le CI est ajouté à la table de fin de vie du Grand Livre [cmdb_ci_end_of_life_ledger] du CI de la CMDB.
- Pour chaque CI de la table Livre de fin de vie du CI de la CMDB [cmdb_ci_end_of_life_ledger], la tâche CMDB Cascade Retire Dependent CIs planifiée vérifie les relations du CI dans la table Relation de CI [cmdb_rel_ci]. S’il existe une relation dépendante avec un CI dépendant, ce CI dépendant est ajouté à la table Grand livre du CI dépendant de la CMDB [cmdb_dependent_ci_ledger] avec l’action de mise hors service .
Pour plus d’informations sur les règles de relation dépendante, reportez-vous à la section Règles de relation dépendante CMDB.
- La tâche CMDB DependentCI Policy Processor planifiée s’exécute (si la propriété cmdb.dependent.ci.cascade.retire.enabled système est true) pour traiter les CI dans la table Grand livre CI dépendant de la CMDB [cmdb_dependent_ci_ledger]. Ces CI sont définis comme étant prêts à être mis hors service après approbation à l’aide du gestionnaire de données CMDB. Une tâche est créée dans le gestionnaire de données CMDB par rapport à la politique de mise hors service des CI dépendants pour mettre les CI hors service réellement.
CI dépendants d’archives en cascade
L’archivage d’un CI peut laisser ses CI dépendants orphelins dans la CMDB. Pour éviter l’accumulation de données périmées, le système applique des processus de nettoyage qui archivent en cascade ces CI dépendants orphelins.
Les CI dépendants orphelins ne sont pas immédiatement archivés. Lorsqu’un CI est archivé, tous les enregistrements de relations CI pour ce CI dans la table [cmdb_rel_ci] sont également archivés. Le système recherche ensuite les CI dépendants devenus orphelins à la suite de cet archivage. Tous les CI de la chaîne de dépendance identifiés comme CI dépendants orphelins sont vérifiés pour l’une des conditions suivantes. Les CI qui remplissent l’une de ces conditions ne sont pas des CI dépendants orphelins et ne seront donc pas archivés :
- Le CI est un CI en double non géré (le CI est associé à une tâche de déduplication non résolue).
- Le CI a plusieurs CI parents.
- Le CI appartient à une classe exclue. Les classes exclues sont stockées dans la table d’exclusion de classe CI dépendante de la CMDB [cmdb_dependent_ci_class_exclusion]. Dans le système de base, cette table est préremplie avec certaines classes telles que cmdb_ci_vm, cmdb_ci_vmware_instanceet d’autres classes liées à VMware. Vous pouvez gérer l’ensemble des classes exemptées de la gestion des CI dépendants orphelins, en ajoutant ou en supprimant des enregistrements à cette table.
Suppression en cascade des CI dépendants
La suppression d’un CI peut laisser ses CI dépendants orphelins dans la CMDB. Pour éviter l’accumulation de données périmées, le système applique des processus de nettoyage qui suppriment en cascade ces CI dépendants orphelins.
- Le CI est mis à jour pour être supprimé, car l’attribut Étape du cycle de vie du CI est défini sur Fin de vie selon les normes CSDM.
-
Toutes les relations de la table cmdb_rel_ci, associées au CI supprimé, sont supprimées.
-
Une règle After BR: CMDB Dependent CI Delete métier s’exécute (uniquement si la propriété cmdb.dependent.ci.cascade.op.enabled système est vraie) pour vérifier chacune des relations supprimées dans la table Relation de CI [cmdb_rel_ci], si l’autre CI (parent ou enfant) de la relation est un CI dépendant orphelin.
Si oui : ces CI dépendants orphelins sont ajoutés à la table du grand livre des CI dépendants de la CMDB [cmdb_dependent_ci_ledger] et définis avec Action = Supprimer.
- La tâche CMDB DependentCI Policy Processor planifiée s’exécute (si la propriété cmdb.dependent.ci.cascade.retire.enabled système est true) pour traiter les CI dans la table Grand livre CI dépendant de la CMDB [cmdb_dependent_ci_ledger]. Ces CI sont définis comme étant prêts à être supprimés après approbation à l’aide du gestionnaire de données CMDB. Une tâche est créée dans le gestionnaire de données CMDB par rapport à la politique de suppression de CI dépendants pour supprimer réellement les CI.
Les CI dépendants orphelins ne sont pas immédiatement supprimés. Avant de supprimer chacune des relations CI dans la table Relation de CI [cmdb_rel_ci], le système vérifie si d’autres CI dans la relation appartiennent à une classe dépendante. Tous les CI de la chaîne de dépendance identifiés comme dépendant du CI supprimé sont vérifiés pour l’une des conditions suivantes. Les CI qui remplissent l’une de ces conditions ne sont pas des CI dépendants orphelins et ne sont donc pas marqués pour suppression :
- Le CI est un CI en double non géré (le CI est associé à une tâche de déduplication non résolue).
- Le CI a plusieurs CI parents.
- Le CI appartient à une classe exclue. Les classes exclues sont stockées dans la table d’exclusion de classe CI dépendante de la CMDB [cmdb_dependent_ci_class_exclusion]. Dans le système de base, cette table est préremplie avec certaines classes telles que cmdb_ci_vm, cmdb_ci_vmware_instanceet d’autres classes liées à VMware. Vous pouvez gérer l’ensemble des classes exemptées de la gestion des CI dépendants orphelins, en ajoutant ou en supprimant des enregistrements à cette table.
Relations étrangères
Pour les opérations de suppression et d’archivage, le système suit également les relations superflues des CI dans la table Configuration de l’évaluation des relations CI dépendantes [cmdb_dependent_ci_extra_rels_config]. Les relations superflues sont celles qui ne font pas partie de la chaîne de dépendance du CI et leur suppression ou leur archivage dépend de la valeur de la cmdb.dependent.ci.extra.rel.check propriété système. Cette propriété est définie sur vrai par défaut, auquel cas les relations superflues ne sont ni supprimées ni archivées. Vous pouvez définir la propriété sur false pour supprimer et archiver les relations superflues.
La cmdb.dependent.ci.extra.rel.check propriété n’existe pas dans le système de base et, pour afficher ou modifier la valeur de la propriété, vous devez d’abord l’ajouter à la table Propriétés système [sys_properties].
Nettoyage en cascade des CI dépendants orphelins existants
Lors de l’activation de la fonction de gestion des CI dépendants, les opérations de nettoyage en cascade s’appliquent uniquement lorsque la fonctionnalité est activée. Toutefois, il peut être nécessaire d’appliquer une opération de nettoyage en cascade similaire aux CI dépendants orphelins qui existaient déjà dans la CMDB avant l’activation de la fonctionnalité.
Activez la tâche planifiée Nettoyer les CI orphelins pour effectuer un nettoyage en cascade unique des CI dépendants orphelins dans la CMDB. La tâche planifiée Nettoyer les CI orphelins vérifie l’ensemble de la CMDB pour identifier tous les CI dépendants orphelins. Ces CI sont ensuite traités de la même manière que les CI supprimés en cascade. Les CI prêts à être supprimés sont ajoutés à la table Grand livre CI dépendant de la CMDB [cmdb_dependent_ci_ledger]. Le gestionnaire de données CMDB est ensuite exploité comme décrit dans la Utilisation du gestionnaire de données CMDB pour effectuer des opérations de nettoyage en cascade section.
La tâche planifiée Nettoyer les CI orphelins est destinée à s’exécuter une seule fois, après quoi la tâche se désactive. Selon la taille de la CMDB, la tâche planifiée Nettoyer les CI orphelins peut prendre plusieurs jours.
Configurer les paramètres de récupération automatique
Vous pouvez utiliser la propriété cmdb.dependent.ci.stale.record.cleanup.duration système pour contrôler le mécanisme de récupération automatique des enregistrements de CI bloqués dans les tables Grand livre CI dépendant de la CMDB [cmdb_dependent_ci_ledger] et Grand livre en fin de vie du CI de la CMDB [cmdb_ci_end_of_life_ledger]. Cette propriété définit le nombre de jours pendant lesquels un enregistrement CI peut rester à l’état TRAITEMENT avant d’être automatiquement réinitialisé sur NOUVEAU pour un nouveau traitement.
- Type : entier
- Valeur par défaut :
- Pour le traitement de la table de grand livre de CI dépendant de la CMDB : 2
- Pour le traitement de la table du Grand Livre en fin de vie du CI CMDB : 1
- Autres valeurs : La directive générale pour la plupart des environnements est de définir la propriété sur 1 à 3 jours. Pour les environnements à volume élevé où une récupération rapide est essentielle, définissez sur une durée plus courte (par exemple) 1 jour, et pour les environnements avec des tâches de traitement des CI de longue durée, définissez sur une durée plus longue, par exemple 3 à 5 jours.Remarque :Si cmdb.dependent.ci.stale.record.cleanup.duration la valeur est définie sur zéro ou une valeur négative, le système utilise la valeur par défaut (2 jours). Une valeur trop basse peut réinitialiser des processus légitimement longs, et une valeur trop élevée peut retarder la récupération d’enregistrements véritablement bloqués.
Lorsque le gestionnaire de données CMDB traite des CI dépendants (pour les opérations de mise hors service, d’archivage ou de suppression), l’état des enregistrements est défini sur TRAITEMENT. Si le traitement échoue en raison d’erreurs système, de plantages ou de délais d’expiration, ces enregistrements peuvent rester bloqués et le traitement ne se termine jamais.
- Identifie les enregistrements en état de traitement qui n’ont pas été mis à jour dans le nombre de jours spécifié dans la cmdb.dependent.ci.stale.record.cleanup.duration propriété.
- Définit l’état de ces enregistrements sur NOUVEAU.
- Affecte ces enregistrements au nœud de grappe actuel pour un nouveau traitement.
- Traitement des politiques de CI dépendantes
-
- Lieu : CMDBDataManagementPolicyProcessor.java : 561-571
- Par défaut : 2 jours
- Déclenché par : Tâche planifiée pour les politiques de gestion des CI dépendantes
- Objectif : nettoie les enregistrements bloqués dans la table cmdb_dependent_ci_ledger
- Fin de vie du traitement du grand livre du CI
-
- Emplacement : CMDBCiEndOfLifeLedger
- Processor.java:57
- Par défaut : 1 jour
- Déclenché par : Tâche planifiée pour le traitement du CI en fin de vie
- Objectif : nettoie les enregistrements bloqués dans la table du grand livre en fin de vie du CI
À des fins de surveillance, vérifiez les journaux système pour connaître l’activité de nettoyage. Les messages de journal tels que « Nettoyage terminé des CI bloqués à l’état de traitement, X CI mis à jour de l’état EN COURS DE TRAITEMENT à l’état NOUVEAU », indiquent combien d’enregistrements ont été réinitialisés de l’état EN COURS DE TRAITEMENT à l’état NOUVEAU .
Exemple de scénario : mise hors service en cascade
- Activez la gestion des CI dépendants.
- Dans le gestionnaire de données CMDB, créez et publiez une politique de mise hors service. Par exemple, mettez hors service un CI de serveur Linux indépendant ayant des relations avec les CI dépendants, la carte réseau et le système de fichiers.
- Attendez que la tâche CMDB Data Manager Retire Policy Processor planifiée s’exécute ou exécutez-la manuellement.
- Sur la page Vue d’ensemble du gestionnaire de données, sélectionnez la carte de tâche Ouvrir et approuvez la tâche de mise hors service (Approbation = Approuvé). Changez l’état de la tâche en « Travail en cours » s’il ne change pas automatiquement. Cela mettra le CI du serveur Linux hors service et l’ajoutera à la table cmdb_ci_end_of_life_ledger.
-
Exécuter le travail CMDB Cascade Retire Dependent CIsplanifié .
Cette tâche planifiée traite chaque CI de la table cmdb_ci_end_of_life_ledger et interroge les relations de la table cmdb_rel_ci pour ce CI. S’il existe une relation avec un autre CI dépendant, ces CI dépendants sont ajoutés à la table cmdb_dependenct_ci_ledger avec les paramètres État = « Prêt » et Action = « Mettre hors service ».
- Attendez que la tâche CMDB DependentCI Policy processor planifiée s’exécute ou exécutez-la manuellement. Cette tâche planifiée crée une tâche par rapport à la politique de mise hors service de CI dépendants OOB, ciblant les CI dans la table cmdb_dependenct_ci_ledger.
- Sur la page Vue d’ensemble du gestionnaire de données, sélectionnez la carte de tâche Ouvrir et approuvez la tâche décrite avec « CI dépendant – Mettre hors service... ».