DFACS : Synchroniser la configuration entre 2 DHCP en failover

I. Présentation

Depuis Windows Server 2012, la mise en place d'un cluster à basculement de serveurs DHCP est devenu très simple. L'opération s'effectue en quelques minutes seulement... Grâce au travail de Microsoft. Ainsi, deux serveurs DHCP vont pouvoir travailler à deux sur une ou plusieurs étendues, soit pour équilibrer la charge c'est-à-dire se répartir la distribution des baux, soit en mode failover.

Dans tous les cas, ceci implique que la base de baux DHCP soit identique sur les deux serveurs, notamment pour éviter les doublons et pour assurer la reprise d'activité en cas de défaillance d'un des deux serveurs DHCP.

Par contre, la synchronisation n'est pas complète. En fait, les éventuelles réservations DHCP, stratégies ou modification sur la configuration ne sont pas répliquées entre les deux serveurs ! Ce qui fait qu'une réservation présente sur un serveur, ne le sera pas automatiquement sur l'autre !

Heureusement, la communauté Microsoft a réagit et un outil nommé "DhcpFailoverAutoConfigSyncTool" a vu le jour pour répondre à ce besoin ! Il s'apparente sous la forme d'une tâche planifiée qui exécute un script qui surveille l'observateur d'événements en continue pour détecter les changements et qui réplique dans tous les cas la configuration à intervalle régulier (certaines actions ne génère pas d'events).

Configurer un cluster de serveurs DHCP Windows

II. Mise en place de l'outil DFACS

Téléchargé plus de 12 000 fois, ce script est disponible sur le Script Center : https://gallery.technet.microsoft.com/scriptcenter/Auto-syncing-of-configurati-6eb54fb0

Je tiens à préciser que cet outil est unidirectionnel, c'est-à-dire que vous devez effectuer vos modifications sur le serveur DHCP surveillé par cet outil, et non sur les deux serveurs DHCP. La synchronisation fonctionne seulement dans un sens.

Décompressez le contenu de l'archive dans un dossier dédié à l'outil DFACS, où vous le souhaitez, vous obtiendrez ce contenu :

Le fichier de configuration "Config_AutoSync.xml" contient différentes options intéressantes :

- LogFileName : L'emplacement du fichier journal
- PeriodicRetryInterval : Délai en minutes entre deux synchronisations (30 minutes par défaut)
- FailoverRelationships : Mode de réplication par défaut, toutes les étendues configurées dans un basculement seront synchronisées

Ouvrez une console PowerShell en tant qu'administrateur, et accédez au dossier où vous avez stocké les fichiers de l'outil. Ensuite installez-le grâce à la commande suivante :

. \install.ps1

Ce qui donne la création d'une tâche planifiée :

III. Modification de la tâche planifiée

La tâche planifiée de l'outil est créée dans : Planificateur de tâches > Microsoft > Windows > DHCPServer

Nous allons modifier sa configuration... Accédez aux propriétés.

Cochez la case "Exécuter même si l'utilisateur n'est pas connecté".

Note : Vous n'êtes obligé d'utiliser le compte Administrateur pour exécuter cette tâche, mais le compte indiqué doit être administrateur DHCP pour que ça puisse fonctionner.

...Puis dans l'onglet "Paramètres" décochez "Arrêter la tâche si elle s'exécuter plus de...".

Vous pouvez valider la nouvelle configuration de la tâche planifiée.

IV. Activer le journal DHCP

Comme cet outil s'appuie sur l'analyse du journal d'événements du serveur DHCP, il faut que l'on vérifie qu'il soit actif. Dans l'observateur d'événements du serveur DHCP, accédez au journal : Journaux des applications et des services, Microsoft, Windows, DHCP-Server puis "Microsoft-Windows-DHCP Server Events/Opérationnel". Effectuez un clic droit dessus et activez-le si nécessaire.

Toujours avec le clic droit, accédez aux propriétés du journal et augmentez la taille en Ko pour la passer à 10240 soit 10 Mo.

V. Tester l'outil DFACS

Maintenant que l'outil est correctement configuré, nous allons le tester ! Pour cela, c'est tout simple, créez une nouvelle réservation DHCP sur votre serveur, et celle-ci devrait être rapidement synchronisée sur le serveur paire. Au niveau du fichier de log, vous pourrez le constater, voici un exemple :

03/21/2018 18:40:36
 Adding relation dhcp01.it-connect.local-dhcp02.it-connect.local to list of relations which will be automatically synced.
 Running script in Default Replication Mode.
 All scopes belonging to any failover relation (including the newly added relations) will be synced automatically.
 Initialization Complete.
 Sync process complete at 03/21/2018 18:40:38.
 Will automatically sync again when new configuration changes are made.
 ==================================================================================================

Vous voilà avec deux serveurs DHCP qui synchronisent les baux DHCP mais aussi la configuration, ce qui est quand même indispensable !

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian BURNEL

Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

Nombre de posts de cet auteur : 5499.Voir tous les posts

2 thoughts on “DFACS : Synchroniser la configuration entre 2 DHCP en failover

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.