Le système Sun Cluster permet d'exécuter et d'administrer les applications en tant que ressources évolutives et hautement disponibles. La fonction de cluster appelée RGM (gestionnaire de groupes de ressources) est à l'origine du haut niveau de disponibilité et d'évolutivité. Les éléments constituant l'interface de programmation vers cette fonction sont :
Un ensemble de méthodes de rappel, que vous avez rédigées, permettant au RGM de contrôler une application sur le cluster.
L'interface de programme d'application de gestion des ressources (API GR), un ensemble de commandes et de fonctions API de bas niveau que vous pouvez utiliser pour rédiger des méthodes de rappel. Ces interfaces API sont mises en oeuvre dans la bibliothèque libscha.so.
Les fonctions de gestion de processus pour contrôler et redémarrer les processus sur le cluster.
La bibliothèque de développement de services de données (BDSD), un ensemble de fonctions de bibliothèque qui encapsule les fonctionnalités de gestion des processus et de l'interface API de bas niveau à un niveau supérieur et confère d'autres fonctionnalités pour faciliter l'écriture des méthodes de rappel. Ces fonctions sont mises en oeuvre dans le fichier libdsdev.so.
L'illustration indiquée ci-après présente l'interrelation entre ces éléments.
SunPlexTM Agent Builder est inclus dans le package Sun Cluster. Cet outil automatise le processus de création d'un service de données (reportez-vous au Chapitre 9). Agent Builder génère un code de service de données en C (à l'aide des fonctions BDSD pour rédiger des méthodes de rappel) ou en korn shell (ksh) (à l'aide des commandes API de bas niveau pour rédiger des méthodes de rappel).
Le gestionnaire RGM s'exécute comme un démon sur chaque noeud du cluster. Il démarre automatiquement et arrête les ressources sur les noeuds sélectionnés conformément à des règles prédéfinies. Le gestionnaire RGM assure le haut niveau de disponibilité d'une ressource en cas de dysfonctionnement ou de redémarrage d'un noeud en arrêtant la ressource sur le noeud concerné et en la démarrant sur un autre noeud. En outre, le gestionnaire RGM démarre et arrête automatiquement les détecteurs dédiés aux ressources pouvant détecter les dysfonctionnements au niveau des ressources, réallouer ces ressources sur un autre noeud ou contrôler d'autres aspects en termes de performances des ressources.
Le gestionnaire RGM prend en charge les ressources de basculement pouvant être connectées à un seul noeud à la fois et les ressources évolutives pouvant être connectées à plusieurs noeuds simultanément.