Guide des services de données Sun Cluster pour Sun Java System Application Server EE (HADB) pour SE Solaris

Fonctionnement du détecteur de pannes de Sun Cluster HA pour Sun Java System Application Server EE (HADB)

Cette rubrique présente le fonctionnement du détecteur de pannes de Sun Cluster HA pour Sun Java System Application Server EE (HADB).

La méthode de démarrage de la ressource HADB démarre les nœuds HADB configurés pour être exécutés sur le nœud Sun Cluster local s'ils ne sont pas en cours d'exécution. La méthode essaie alors de démarrer la base de données HADB ; en cas d'échec, celle-ci sera démarrée plus tard au cours du sondage.

La sonde du détecteur de pannes de Sun Cluster HA pour Sun Java System Application Server EE (HADB) vérifie périodiquement le statut de la base de données et des nœuds HADB. Elle redémarrera les nœuds HADB ainsi que la base de données HADB si la ressource HADB n'a pas pu le faire au cours de la méthode de démarrage. À chaque répétition de cette procédure, la sonde procède aux étapes suivantes :

  1. En premier lieu, la sonde sommeille pendant une période définie (en secondes) par la propriété Thorough_Probe_Interval.

  2. La sonde récupère le statut actuel de la base de données et des nœuds HADB en exécutant les commandes hadbm status et hadbm status --nodes.

  3. Si la base de données n'est pas en cours d'exécution, la sonde vérifie que le fichier stopstate HADB correspondant à cette base de données figure sur le nœud local de Sun Cluster. La commande hadbm start fait référence au fichier stopstate pour l'assignation des rôles aux nœuds lorsqu'elle démarre la base de données.

  4. Si le fichier stopstate existe, la ressource HADB l'examine pour déterminer si la base de données peut être démarrée.

    • Si c'est le cas, la sonde démarre la base de données et définit le statut de la ressource comme En ligne.

    • Sinon, elle le définit comme En ligne défectueux.

  5. Si la base de données est en cours d'exécution, la sonde démarre les nœuds HADB configurés pour être exécutés sur le nœud local de Sun Cluster.

  6. Si la base de données et les nœuds HADB locaux sont en cours d'exécution, la sonde définit le statut de la ressource comme En ligne s'il était En ligne défectueux.

  7. Si sur tous les nœuds Sun Cluster du groupe de ressources HADB, la ressource HADB est en cours d'exécution avec l'état En ligne défectueux supérieur à Stop_timeout secondes, la ressource HADB en conclut que la base de données ne peut pas être démarrée.

  8. Si la propriété d'extension Auto_recovery a été définie sur TRUE, la ressource HADB tentera de récupérer la base de données.

  9. Dans ce cas, la sonde procède aux étapes suivantes :

    • Elle émet la commande hadbm clear --fast sur l'un des nœuds Sun Cluster de la liste de nœuds du groupe de ressources. Cette commande efface le contenu de la base de données, puis la réinitialise et la redémarre.

    • Si la commande hadbm clear est exécutée avec succès, la commande spécifiée dans Auto_recovery_command est exécutée sur le nœud Sun Cluster ayant émis la commande hadbm clear. La commande est normalement un script contenant la commande asadmin create-session-store. La commande peut également procéder à d'autres actions. Elle peut par exemple envoyer un courrier à l'administrateur d'Application Server.

    • Si ces deux étapes sont correctement effectuées, la sonde définit l'état de la ressource sur En ligne.

  10. L'itération se poursuit à partir de la première étape.


Remarque –

les paramètres Thorough_Probe_Interval et Stop_timeout peuvent être réglés à l'aide de la commande scrgadm. Pour de plus amples informations, reportez-vous à la rubrique “ Standard Properties” du document Sun Cluster Data Services Planning and Administration Guide for Solaris OS.