Le service de données modèle lance, arrête, redémarre et bascule l'application DNS entre les noeuds du cluster en réponse à des événements de cluster, tels qu'une action de l'administrateur, un échec d'application ou une erreur de noeud.
Le redémarrage de l'application est géré par le gestionnaire des processus. Si les morts d'application dépassent le nombre d'échecs autorisés pour le délai de comptabilisation des erreurs, le détecteur de pannes bascule le groupe de ressources contenant la ressource d'application vers un autre noeud.
Le service de données modèle fournit une surveillance des pannes sous la forme d'une méthode de SONDE. Celle-ci utilise la commande nslookup pour s'assurer que l'application est saine. Si la sonde détecte un service DNS bloqué, elle tente de rectifier la situation en redémarrant l'application DNS localement. Si cette opération ne résout pas le problème et si la sonde détecte à plusieurs reprises des blocages de ce service, elle tente de le basculer vers un autre noeud du cluster.
Plus particulièrement, le service de données modèle comprend :
Un fichier d'enregistrement du type de ressource identifiant les propriétés statiques du service de données.
Une méthode de rappel de Démarrage appelée par le RGM de manière à démarrer le démon in.named lorsque le groupe de ressources contenant le service de données HA-DNS est mis en ligne.
Une méthode de rappel d'Arrêt appelée par le RGM pour arrêter le démon in.named lorsque le groupe de ressources contenant HA-DNS passe hors ligne.
Un détecteur de pannes permettant de vérifier la disponibilité du service en s'assurant que le serveur DNS tourne. Le détecteur de pannes est mis en oeuvre par une méthode de SONDE définie par l'utilisateur. Il est lancé et arrêté par les méthodes de rappel de Démarrage_détecteur et d'Arrêt_détecteur.
Une méthode de rappel de Validation appelée par le RGM afin de valider l'accessibilité du répertoire de configuration du service.
Une méthode de rappel de Mise_à_jour appelée par le RGM afin de redémarrer le détecteur de pannes quand l'administrateur système modifie la valeur d'une propriété de ressource.