Guide des développeurs pour les services de données Sun Cluster pour SE Solaris

Démarrage et arrêt d'un service de données

Une méthode Démarrage doit réaliser les actions requises pour démarrer un service de données sur un noeud du cluster. En règle générale, ces actions comprennent la récupération des propriétés de ressources, la localisation des fichiers exécutables et de configuration propres à l'application et le lancement de l'application à l'aide des arguments de ligne de commande appropriés.

La fonction scds_initialize recherche et extrait la configuration des ressources. La méthode Démarrage peut utiliser les fonctions de convenance des propriétés pour récupérer les valeurs de propriétés spécifiques, comme Liste_rép_conf, servant à identifier les répertoires et les fichiers de configuration de l'application à lancer.

Une méthode Démarrage peut exécuter scds_pmf_start pour lancer une application sous le contrôle de la fonction PMF (Process Monitor Facility). Cette fonction vous permet de spécifier le niveau de surveillance à appliquer au processus et de redémarrer le processus en cas d'échec. Reportez-vous à la rubrique Méthode Démarrage_xfnts ; vous y découvrirez un exemple de méthode Démarrage mise en oeuvre avec la BDSD.

Une méthode Arrêt doit être idempotente, ce qui permet de la fermer avec succès même si elle est appelée sur un noeud lorsque l'application ne fonctionne pas. Si la méthode Arrêt échoue, la ressource arrêtée bascule en mode ÉCHEC_ARRÊT, ce qui engendre une réinitialisation forcée du cluster.

Pour éviter le basculement de la ressource en mode ÉCHEC_ARRÊT, la méthode Arrêt doit tout mettre en oeuvre pour arrêter la ressource. La fonction scds_pmf_stop se caractérise par une tentative d'arrêt de la ressource par phase. Elle tente tout d'abord de l'arrêter à l'aide du signal SIGTERM, puis, en cas d'échec, elle utilise un signal SIGKILL. Reportez-vous à scds_pmf_stop(3HA) pour de plus amples informations.