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

Méthodes d'accès à l'API GR

L'API propose des fonctions permettant d'accéder aux propriétés de la ressource, du type de ressource et du groupe de ressources, ainsi qu'à d'autres informations du cluster. Ces fonctions sont fournies sous la forme de commandes shell et de fonctions C, ce qui permet aux fournisseurs de types de ressource de mettre en oeuvre des programmes de contrôle sous la forme de scripts Shell ou de programmes C.

Commandes shell API GR

Les commandes Shell doivent être utilisées dans les mises en oeuvre du script Shell des méthodes de rappel pour les types de ressource représentant des services contrôlés par le RGM du cluster. Vous pouvez utiliser ces commandes pour :


Remarque :

bien que cette rubrique fournisse de brèves descriptions des commandes shell, les différentes pages du manuel, dans la rubrique 1HA, constituent la référence faisant foi pour les commandes shell. Sauf mention contraire, chaque commande correspond à une page de manuel portant le même nom.


Commandes de la ressource API GR

Ces commandes vous permettent d'accéder aux informations relatives à une ressource ou de définir les propriétés Statut et msg_statut de celle-ci.

scha_resource_get

Accède aux informations relatives à une ressource ou à un type de ressource sous le contrôle du RGM. Elle fournit les mêmes informations que la fonction scha_resource_get ().

scha_resource_setstatus

Définit les propriétés Statut et msg_statut d'une ressource sous le contrôle du RGM. Elle est utilisée par le détecteur de la ressource afin d'indiquer l'état de celle-ci tel qu'il le perçoit. Elle propose la même fonctionnalité que la fonction C scha_resource_setstatus().


Remarque :

bien que scha_resource_setstatus() soit d'un intérêt particulier pour les détecteurs de ressources, tout programme peut l'appeler.


Commande du type de ressource

Cette commande accède à des informations sur un type de ressource enregistré auprès du RGM.

scha_resourcetype_get

Cette commande fournit la même fonctionnalité que la fonction C scha_resourcetype_get ().

Commandes du groupe de ressources

Ces commandes vous permettent d'accéder à des informations sur un groupe de ressources ou de redémarrer celui-ci.

scha_resourcegroup_get

Accède aux informations relatives au groupe de ressources sous le contrôle du RGM. Cette commande fournit la même fonctionnalité que la fonction C scha_resourcetype_get ().

scha_control

Demande le redémarrage d'un groupe de ressources sous le contrôle du RGM ou son déplacement vers un autre noeud. Elle propose la même fonctionnalité que la fonction C scha_control().

Commande du cluster

Cette commande accède aux informations relatives à un cluster, telles que les noms des noeuds, les ID, les états, le nom du cluster, les groupes de ressources, etc.

scha_cluster_get

Cette commande fournit les mêmes informations que la fonction C scha_cluster_get ().

Fonctions C

Les fonctions C doivent être utilisées dans les mises en oeuvre du programme C des méthodes de rappel pour les types de ressource représentant des services contrôlés par le RGM du cluster. Ces fonctions vous permettent d'effectuer les opérations suivantes :


Remarque :

bien que cette rubrique fournisse de brèves descriptions des fonctions C, les différentes pages du manuel (3HA) constituent la référence faisant foi pour les fonctions C. Sauf mention contraire, chaque fonction correspond à une page de manuel portant le même nom. Reportez-vous à la page scha_calls( 3HA) du manuel pour obtenir des informations sur les arguments de sortie et les codes de retour des fonctions C.


Fonctions des ressources

Ces fonctions accèdent aux informations relatives à une ressource gérée par le RGM ou indiquent l'état de celle-ci tel qu'il est perçu par le détecteur.

scha_resource_open(), scha_resource_get () et scha_resource_close()

Ensemble, ces fonctions accèdent à des informations sur une ressource gérée par le RGM. La fonction scha_resource_open() initialise l'accès à une ressource et renvoie un identificateur pour scha_resource_get (), lequel accède aux informations de la ressource. La fonction scha_resource_close () invalide l'identificateur et libère la mémoire allouée aux valeurs de retour scha_resource_get().

Une ressource peut changer, à la suite d'une reconfiguration du cluster ou d'une action de l'administrateur, après que la fonction scha_resource_open() a renvoyé l'identificateur de la ressource, auquel cas les informations obtenues par scha_resource_get() par le biais de celui-ci risquent d'être erronées. Dans le cas d'une reconfiguration du cluster ou d'une action de l'administrateur sur une ressource, le RGM renvoie le code d'erreur scha_err_seqid à scha_resource_get() pour indiquer qu'il est possible que les informations concernant la ressource aient changé. Il s'agit d'un message d'erreur non fatale. La fonction renvoie une réussite. Vous pouvez choisir d'ignorer le message et d'accepter l'information renvoyée ou de fermer l'identificateur actuel et d'en ouvrir un nouveau pour accéder aux informations relatives à la ressource.

Ces trois fonctions sont décrites par une même page du manuel. Vous pouvez accéder à cette page par le biais des fonctions scha_resource_open(3HA), scha_resource_get(3HA) ou scha_resource_close(3HA).

scha_resource_setstatus()

Définit les propriétés Statut et msg_statut d'une ressource sous le contrôle du RGM. Le détecteur de la ressource utilise cette fonction pour indiquer l'état de celle-ci.


Remarque :

bien que scha_resource_setstatus() soit d'un intérêt particulier pour les détecteurs de ressources, tout programme peut l'appeler.


Fonctions du type de ressource

Ensemble, ces fonctions accèdent aux informations sur le type de ressource enregistré avec le RGM.

scha_resourcetype_open(), scha_resourcetype_get(), scha_resourcetype_close()

La fonction scha_resourcetype_open() initialise l'accès à une ressource et renvoie un identificateur pour scha_resourcetype_get (), lequel accède aux informations du type de ressource. La fonction scha_resourcetype_close () invalide l'identificateur et libère la mémoire allouée aux valeurs de retour scha_resourcetype_get().

Un type de ressource peut changer, à la suite d'une reconfiguration du cluster ou d'une action de l'administrateur, après que la fonction scha_resourcetype_open() a renvoyé l'identificateur du type de ressource, auquel cas les informations obtenues par scha_resourcetype_get() par le biais de celui-ci risquent d'être erronées. Dans le cas d'une reconfiguration du cluster ou d'une action de l'administrateur sur un type de ressource, le RGM renvoie le code d'erreur scha_err_seqid à scha_resourcetype_get() pour indiquer qu'il est possible que les informations concernant le type de ressource aient changé. Il s'agit d'un message d'erreur non fatale. La fonction renvoie une réussite. Vous pouvez choisir d'ignorer le message et d'accepter l'information renvoyée ou de fermer l'identificateur actuel et d'en ouvrir un nouveau pour accéder aux informations relatives au type de ressource.

Ces trois fonctions sont décrites par une même page du manuel. Vous pouvez accéder à cette page du manuel par le biais de chacune des fonctions scha_resourcetype_open(3HA), scha_resourcetype_get(3HA) ou scha_resourcetype_close(3HA).

Fonctions du groupe de ressources

Ces fonctions vous permettent d'accéder aux informations relatives au groupe de ressources ou de redémarrer celui-ci.

scha_resourcegroup_open(3HA), scha_resourcegroup_get(3HA) et scha_resourcegroup_close(3HA)

Ensemble, ces fonctions accèdent à des informations sur un groupe de ressources géré par le RGM. La fonction scha_resourcegroup_open() initialise l'accès à un groupe de ressources et renvoie un identificateur pour scha_resourcegroup_get (), lequel accède aux informations du groupe de ressources. La fonction scha_resourcegroup_close () invalide l'identificateur et libère la mémoire allouée aux valeurs de retour scha_resourcegroup_get().

Un groupe de ressources peut changer, à la suite d'une reconfiguration du cluster ou d'une action de l'administrateur, après que la fonction scha_resourcegroup_open() a renvoyé l'identificateur du groupe de ressources, auquel cas les informations obtenues par scha_resourcegroup_get() par le biais de celui-ci risquent d'être erronées. Dans le cas d'une reconfiguration du cluster ou d'une action de l'administrateur sur un groupe de ressources, le RGM renvoie le code d'erreur scha_err_seqid à scha_resourcegroup_get() pour indiquer qu'il est possible que les informations concernant le groupe de ressources aient changé. Il s'agit d'un message d'erreur non fatale. La fonction renvoie une réussite. Vous pouvez choisir d'ignorer le message et d'accepter l'information renvoyée ou de fermer l'identificateur actuel et d'en ouvrir un nouveau pour accéder aux informations relative au groupe de ressources.

scha_control( 3HA)

Demande le redémarrage d'un groupe de ressources sous le contrôle du RGM ou son déplacement vers un autre noeud.

Fonctions du cluster

Ces fonctions accèdent à des informations sur un cluster ou en renvoient.

scha_cluster_open(3HA), scha_cluster_get(3HA), scha_cluster_close(3HA)

Ensemble, ces fonctions accèdent à des informations relatives à un cluster, telles que les noms des noeuds, les ID, les états, le nom du cluster, les groupes de ressources, etc.

Un cluster peut changer, à la suite d'une reconfiguration du cluster ou d'une action de l'administrateur, après que la fonction scha_cluster_open() a renvoyé l'identificateur du cluster, auquel cas les informations obtenues par scha_cluster_get() par le biais de celui-ci risquent d'être erronées. Dans le cas d'une reconfiguration du cluster ou d'une action de l'administrateur sur une ressource, le RGM renvoie le code d'erreur scha_err_seqid à scha_cluster_get() pour indiquer qu'il est possible que les informations concernant le cluster aient changé. Il s'agit d'un message d'erreur non fatale. La fonction renvoie une réussite. Vous pouvez choisir d'ignorer le message et d'accepter l'information renvoyée ou de fermer l'identificateur actuel et d'en ouvrir un nouveau pour accéder aux informations relatives au cluster.

scha_cluster_getlogfacility(3HA)

Renvoie le numéro de la fonction syslog utilisée comme journal du cluster. Utilise la valeur renvoyée à l'aide de la fonction syslog() de Solaris pour enregistrer les événements et les messages d'état dans le journal du cluster.

scha_cluster_getnodename(3HA)

Renvoie le nom du noeud du cluster sur lequel est appelée la fonction.

Fonction de l'utilitaire

Cette fonction convertit un code d'erreur en message d'erreur.

scha_strerror( 3HA)

Traduit un code d'erreur, renvoyé par l'une des fonctions scha_, en message d'erreur. Utilisez cette fonction avec la commande logger pour consigner les messages dans le journal système (syslog).