Guide des développeurs pour les services de données Sun Cluster 3.1 10/03

Contrôle d'une ressource

En règle générale, vous mettez en oeuvre des moyens de contrôle pour procéder périodiquement à une recherche de pannes sur les ressources, afin de déterminer si elles fonctionnent correctement. En cas d'échec, le détecteur peut tenter un redémarrage local ou transmettre une requête de basculement du groupe de ressources concerné en exécutant les fonctions API GR scha_control () ou BDSD scds_fm_action().

Vous pouvez également surveiller les performances d'une ressource et régler ou signaler les performances. Il n'est absolument pas nécessaire d'écrire un système de détection des pannes propre au type de ressources puisque même si vous le faites, le type de ressources bénéficie de la surveillance de base du cluster par Sun Cluster lui-même. Sun Cluster détecte les pannes du matériel hôte, les défaillances majeures du système d'exploitation de l'hôte et les échecs de connexion de l'hôte aux réseaux publics.

Bien que le gestionnaire RGM n'appelle pas un détecteur de ressource directement, il doit pouvoir le faire pour démarrer automatiquement des détecteurs pour les ressources. Lors de la déconnexion d'une ressource, le gestionnaire RGM appelle la méthode d'Arrêt_détecteur pour arrêter le détecteur de la ressource sur les noeuds locaux avant d'arrêter la ressource elle-même. Lors de la connexion d'une ressource en ligne, le gestionnaire RGM appelle la méthode de Démarrage_détecteur après le démarrage de la ressource.

Les fonctions API GR scha_control() et BDSD scds_fm_action() (qui appelle scha_control ()) permettent aux détecteurs de ressource de demander le basculement d'un groupe de ressources sur un autre noeud. La fonction scha_control() s'assure de la faisabilité de l'opération en exécutant notamment Contrôle_détecteur (si cette fonction est définie) pour déterminer si le noeud requis est suffisamment fiable pour gérer le groupe de ressources contenant la ressource. Si Contrôle_détecteur signale que le noeud n'est pas fiable ou que le délai d'attente de la méthode est dépassé, le gestionnaire RGM recherche un autre noeud pour honorer la requête de basculement. Si Contrôle_détecteur échoue sur tous les noeuds, le basculement est annulé.

Le détecteur de ressource peut définir les propriétés Statut et msg_statut pour refléter l'affichage de l'état de la ressource sur le détecteur. Définissez ces propriétés à l'aide de la fonction API GR scha_resource_setstatus(), de la commande scha_resource_setstatus ou de la fonction BDSD scds_fm_action().


Remarque :

bien que l'utilisation de Statut et msg_statut soient propres à un détecteur de ressource, n'importe quel programme peut définir ces propriétés.


La rubrique Définition d'un détecteur de pannes présente un exemple de système de détection des pannes mis en oeuvre avec l'interface API GR. La rubrique Détecteur de pannes SUNW.xfnts présente un exemple de système de détection des pannes mis en oeuvre avec la bibliothèque BDSD. Reportez-vous au document Sun Cluster 3.1 Data Service Planning and Administration Guide pour de plus amples informations sur les systèmes de détection des pannes créés à l'intérieur des systèmes de données fournis par Sun.