Active Directory : supprimer en toute sécurité les application directory partitions lors de la démotion d’un contrôleur de domaine

Lors de la démotion d’un contrôleur de domaine, la case « Remove application directory partitions » intrigue. Voici comment l’utiliser en toute sécurité, ce qu’elle supprime vraiment et les vérifications indispensables pour éviter toute perte de données.

Sommaire

Contexte et rappel rapide

Dans Active Directory (AD DS), une application directory partition (ou naming context applicatif) est une section logique de l’annuaire répliquée vers un sous‑ensemble de contrôleurs de domaine (DC). Elle est conçue pour des données d’applications qui n’ont pas besoin d’être répliquées vers tous les DC. Les exemples les plus fréquents sont liés à DNS intégrés à AD : DomainDnsZones et ForestDnsZones. Des éditeurs ou des rôles AD peuvent également créer leurs propres partitions.

Lorsqu’on retire un DC (démotion), l’assistant peut proposer de « supprimer les partitions d’annuaire d’application ». Mal comprise, cette option peut inquiéter : supprime‑t‑on la partition dans toute la forêt, ou seulement sur le serveur qu’on retire ?

Problème posé

Durant la démotion d’un ancien DC, l’assistant affiche : Remove application directory partitions. L’administrateur souhaite savoir :

  • Portée : l’option ne concerne‑t‑elle que le DC en cours de démotion ou tout le domaine/la forêt ?
  • Sécurité : l’opération est‑elle sans danger ?

Solution et bonnes pratiques

Point cléExplications et recommandations
Portée de la suppressionL’invite concerne les copies (réplicas) des partitions hébergées par le DC que vous dégradez.
– Si d’autres DC conservent une copie de la même partition, seule la réplique locale est retirée.
Si le DC est le dernier détenteur de la partition, l’assistant propose alors de supprimer la partition dans toute la forêt ; acceptez‑le uniquement si elle n’est plus nécessaire.
Sécurité de l’opération✔️ Sûr si aucune application ou rôle AD ne dépend encore de la partition (ex. service DNS, DFS‑R, applications tierces).
Risque de perte de données ou de dysfonctionnement si c’est la dernière réplique d’une partition toujours utilisée.
Vérifications préalables1. Lister les partitions existantes : dnscmd /enumdirectorypartitions ou ntdsutil "partition management" "list nc replicas" sur un DC restant.
2. Identifier le dernier détenteur : repadmin /showrepl doit montrer au moins un autre réplicat.
3. Confirmer les dépendances : DNS ? DFS‑R ? Applications spécifiques ?
Bonnes pratiques• Avant la démotion, déplacez les réplicas nécessaires vers un nouveau DC (dnscmd /enlistdirectorypartition).
• Conservez un snapshot/backup récent d’Active Directory.
• Procédez d’abord sur un environnement de test si possible.
• Sur l’assistant, laissez l’option par défaut « Supprimer la partition de ce serveur uniquement » sauf raison explicite.

Comprendre précisément ce que fait l’option

Ce qui est retiré quand vous cochez la case

Cocher « Remove application directory partitions » indique à l’assistant de désinscrire ce DC des ensembles de réplication des partitions applicatives qu’il héberge. Techniquement, le serveur supprime les références qui l’inscrivent comme réplique pour ces partitions (par exemple via la liste des emplacements de réplicas), ce qui équivaut aux commandes unenlist pour DNS. Les autres DC qui en sont réplicas continuent de détenir la partition.

Cas particulier : dernier réplicat

Si le DC que vous retirez est le dernier à héberger une partition donnée, l’assistant détecte l’absence d’autres cibles et propose de supprimer entièrement la partition de l’annuaire (forêt). Cette action est destructive : elle efface la partition et son contenu. Ne l’acceptez que si vous êtes certain que la partition est obsolète (ex. reliquat d’un ancien produit ou d’un lab).

Partitions courantes : ce qu’il faut absolument savoir

  • DomainDnsZones et ForestDnsZones sont créées automatiquement lorsque DNS est configuré en zones intégrées à AD. En règle générale, ne les supprimez jamais. Assurez‑vous que au moins un DC restant (idéalement deux) continue de les héberger.
  • Des partitions personnalisées peuvent être créées par des applications (par ex., solutions d’inventaire, PKI tierces, passerelles d’identité, etc.). Il faut vérifier auprès des équipes concernées avant toute suppression.

Vérifications préalables détaillées

1) Inventorier les partitions et leurs réplicas

Depuis un DC qui reste dans l’environnement :

dnscmd /enumdirectorypartitions
ntdsutil "partition management" "list nc replicas" quit quit

Avec PowerShell (module ActiveDirectory requis) :

$configNC = (Get-ADRootDSE).configurationNamingContext
Get-ADObject -SearchBase "CN=Partitions,$configNC" -LDAPFilter "(objectClass=crossRef)" `
  -Properties nCName, msDS-NC-Replica-Locations |
  Select-Object nCName, @{N="Replicas";E={$_.{"msDS-NC-Replica-Locations"}}}

2) Vérifier l’état de la réplication

repadmin /replsummary
repadmin /showrepl * /verbose /all

Assurez‑vous qu’au moins un autre DC affiche la partition comme hébergée, et qu’il n’y a pas d’erreurs de réplication persistantes.

3) Identifier les dépendances

La plupart des risques viennent de DNS intégré à AD. Vérifiez :

Get-DnsServerDirectoryPartition -ComputerName <DC-cible>
Get-DnsServerZone -ComputerName <DC-cible> | Select-Object ZoneName,ReplicationScope

Confirmez également auprès des équipes applicatives si des produits s’appuient sur une partition spécifique.

Procédure recommandée avant de cliquer

  1. Déterminer quelles partitions lient encore le DC à retirer (cf. commandes ci‑dessus).
  2. Enrôler un autre DC comme réplique si nécessaire (pour DNS) : dnscmd <NouveauDC> /enlistdirectorypartition <DN de la partition> rem Exemple : dnscmd DC02 /enlistdirectorypartition DC=DomainDnsZones,DC=contoso,DC=com
  3. Vérifier la réplication et la présence d’au moins deux réplicas pour les partitions critiques (DomainDnsZones et ForestDnsZones).
  4. Exécuter la démotion du DC. Lorsque l’assistant propose « Remove application directory partitions », laissez par défaut l’option qui retire uniquement les réplicas locaux.

Scénarios pratiques

Scénario A : DC DNS classique, d’autres DC hébergent aussi les partitions

Vous dégradez DC01. DC02 et DC03 possèdent déjà DomainDnsZones et ForestDnsZones. Cochez l’option « Remove application directory partitions » : seules les copies de DC01 seront désinscrites. Le service DNS continue de fonctionner via DC02/DC03.

Scénario B : le DC est le dernier détenteur de ForestDnsZones

L’assistant signale que DC01 est le dernier réplicat pour ForestDnsZones. Ne supprimez pas la partition ! Enrôlez d’abord DC02 :

dnscmd DC02 /enlistdirectorypartition DC=ForestDnsZones,DC=contoso,DC=com
repadmin /syncall /AdeP DC02

Contrôlez la présence de la partition sur DC02, puis relancez la démotion de DC01.

Scénario C : partition personnalisée d’un outil retiré du SI

Un ancien produit a créé DC=AppXYZ,DC=contoso,DC=com. Si l’application est abandonnée et que la partition n’a plus d’usage, vous pouvez accepter la suppression globale lors de la démotion du dernier DC détenteur. Conservez toutefois une sauvegarde avant exécution.

Scénario D : démotion forcée / DC isolé

En cas de force removal (panne réseau, base AD corrompue), la désinscription propre des partitions peut échouer. Après un retrait forcé :

  • Effectuez un nettoyage de métadonnées (NTDS/Computer, Site/NTDS Settings) sur un DC sain.
  • Supprimez les éventuelles références résiduelles de partitions/serveurs (msDS-NC-Replica-Locations) si nécessaire.
  • Vérifiez DNS et les zones intégrées (orphans possibles) et revalidez la réplication.

Restauration : que faire en cas d’erreur

Si vous supprimez par erreur la dernière réplique d’une partition essentielle, la voie fiable reste une restauration autoritaire (authoritative restore) depuis une sauvegarde cohérente d’AD DS, ou la recréation manuelle de la partition et de son contenu – une procédure longue, risquée et sujette à erreurs. D’où l’importance des contrôles avant la démotion et de backups testés.

Commandes utiles (mémo)

:: Lister les partitions DNS connues
dnscmd /enumdirectorypartitions

:: Enrôler un nouveau réplicat DNS pour une partition
dnscmd  /enlistdirectorypartition 

:: Désenrôler (retirer) la copie locale d'une partition DNS
dnscmd  /unenlistdirectorypartition 

:: Inventorier les naming contexts et leurs réplicas
ntdsutil "partition management" "list nc replicas" quit quit

:: Vérifier la réplication AD
repadmin /replsummary
repadmin /showrepl * /all /verbose

:: PowerShell - récap des partitions et sites réplicas
$config = (Get-ADRootDSE).configurationNamingContext
Get-ADObject -SearchBase "CN=Partitions,$config" -LDAPFilter "(objectClass=crossRef)" `
-Properties nCName, msDS-NC-Replica-Locations |
Select-Object nCName, @{N="Replicas";E={$_.{"msDS-NC-Replica-Locations"}}} 

Pièges fréquents et comment les éviter

  • Confondre partitions applicatives avec Configuration ou Schéma. L’option ne vise pas ces partitions « système ».
  • Supposer que DNS survivra « par magie ». Sans autre réplicat pour DomainDnsZones/ForestDnsZones, les zones intégrées deviendront indisponibles.
  • Oublier que des RODC ou des DC dans des sites distants peuvent héberger certaines partitions : vérifiez la liste complète des réplicas.
  • Ignorer un message « dernier réplicat ». S’il apparaît, stoppez et enrôlez un second hôte avant de poursuivre.
  • Nettoyage incomplet après démotion forcée : contrôlez les objets orphelins et l’intégrité DNS.

Checklist opérationnelle

  • 📋 Inventaire des partitions applicatives présent sur le DC à retirer.
  • 🔁 Réplication saine confirmée (repadmin sans erreurs).
  • 🧭 Autres hôtes identifiés (au moins un, idéalement deux pour DNS).
  • 🧪 Tests sur un environnement de pré‑prod si le risque est élevé.
  • 💾 Backup AD récent et testé.
  • 🖱️ Dans l’assistant, laisser « Supprimer la partition de ce serveur uniquement » sauf cas exceptionnel.

FAQ express

Q : Cocher « Remove application directory partitions » supprime‑t‑il des données dans toute la forêt ?
R : Non, sauf si le DC est dernier réplicat d’une partition ; l’assistant vous le signalera explicitement et vous demandera de confirmer une suppression globale.

Q : Est‑ce sans danger ?
R : Oui si au moins un autre DC héberge la partition et si aucune application ne dépend de la copie locale. Sinon, risque de panne DNS ou applicative.

Q : Dois‑je impérativement garder deux hôtes pour DNS ?
R : C’est une bonne pratique (haute disponibilité et reprise).

Q : Que se passe‑t‑il si j’ai déjà supprimé un dernier réplicat par erreur ?
R : Envisagez une restauration autoritaire depuis une sauvegarde valide, ou la recréation de la partition.

Résumé stratégique

La case « Remove application directory partitions » ne retire que les réplicas locaux du DC que vous démotionnez, pas la partition dans toute la forêt. L’exception : si ce DC est dernier réplicat, l’assistant proposera la suppression globale ; n’acceptez que pour des partitions devenues inutiles. Avant toute action, inventoriez, vérifiez la réplication, confirmez les dépendances et assurez la présence d’autres réplicas (notamment pour DomainDnsZones et ForestDnsZones). Conservez un backup et appliquez une approche progressive et documentée.

Informations complémentaires utiles

  • Partitions DNS standard : DomainDnsZones et ForestDnsZones sont créées automatiquement quand le service DNS est installé sur le premier DC. En règle générale, ne les supprimez jamais ; assurez‑vous simplement qu’au moins un DC restant les héberge.
  • Restauration : si vous supprimez par erreur la dernière réplique d’une partition critique, la seule option fiable est une restauration autoritaire ou la recréation manuelle de la partition et de son contenu — procédure longue et délicate.

Exemples de commandes prêtes à l’emploi

# Lister toutes les partitions et leurs détenteurs
ntdsutil "partition management" "list nc replicas" quit quit

# Transférer un réplicat DNS à un nouveau DC

dnscmd  /enlistDirectoryPartition 

# Retirer proprement la copie locale (sur l'ancien DC)

dnscmd  /unenlistDirectoryPartition 

# Vérifier rapidement l'état de la réplication

repadmin /replsummary
repadmin /showrepl * /errorsonly 

Conclusion

En résumé, choisissez « Remove application directory partitions » uniquement pour retirer les réplicas locaux du DC que vous mettez hors service, après avoir validé qu’un ou plusieurs DC hébergent déjà la partition ou qu’elle n’est plus utilisée. Grâce aux vérifications proposées (dnscmd, ntdsutil, repadmin, PowerShell), vous sécurisez la démotion et évitez toute interruption de service, notamment côté DNS.

Sommaire