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

Chapitre 9 SunPlex Agent Builder

Ce chapitre présente l'outil SunPlex Agent Builder et le module Cluster Agent pour Agent Builder, permettant tous deux d'automatiser la création des types de ressources ou des services de données. Ils doivent être exécutés sous le contrôle du RGM (Resource Group Manager). Un type de ressources est un wrapper qui enveloppe une application afin de lui permettre de s'exécuter dans un environnement clusterisé sous le contrôle du RGM.

Ce chapitre couvre les rubriques suivantes :

Présentation d'Agent Builder

Agent Builder fournit une interface constituée d'écrans permettant de saisir des informations sur votre application et le type de ressources que vous souhaitez créer.


Remarque –

Si la version de l'interface utilisateur graphique d'Agent Builder n'est pas accessible, vous pouvez accéder à Agent Builder via une interface de ligne de commande. Voir la rubrique Utilisation de la version de ligne de commande d'Agent Builder.


En fonction des données entrées, Agent Builder génère les logiciels suivants :

Agent Builder prend en charge les applications compatibles réseau (applications qui utilisent le réseau pour communiquer avec les clients) ainsi que les applications non compatibles réseau (ou autonomes). Agent Builder vous permet également de générer un type de ressources pour une application possédant plusieurs arborescences de processus indépendantes que la fonction PMF (Process Monitor Facility) doit surveiller et redémarrer individuellement. Voir la rubrique Création de types de ressources contenant plusieurs arborescences de processus indépendantes.

Avant d'utiliser Agent Builder

La section ci-dessous présente des informations que vous devez connaître avant d'utiliser Agent Builder.

Création de types de ressources contenant plusieurs arborescences de processus indépendantes

Agent Builder peut créer des types de ressources pour des applications comportant plusieurs arborescences de processus indépendantes. Ces arborescences de processus sont indépendantes dans le sens où la fonction PMF les contrôle et les démarre individuellement. La fonction PMF démarre chaque arborescence de processus avec sa propre balise.


Remarque –

Agent Builder vous permet de créer des types de ressources avec plusieurs arborescences de processus indépendantes, uniquement si le code source généré que vous indiquez est de type C ou GDS. Vous ne pouvez pas utiliser Agent Builder pour créer ces types de ressources avec le code source korn shell. Dans ce cas, vous devez écrire le code manuellement.


Dans le cadre d'une application de base contenant plusieurs arborescences de processus indépendantes, la spécification d'une ligne de commande unique ne suffit pas pour démarrer l'application. Dans ce cas, vous devez créer un fichier texte dont chaque ligne indique le chemin d'accès complet à une commande permettant de démarrer l'une des arborescences de processus de l'application. Ce fichier ne doit contenir aucune ligne vide et être spécifié dans le champ Commande de démarrage de l'écran Configurer.

Vous devez vous assurer qu'il ne contient aucune autorisation d'exécution, ce qui permet à Agent Builder de distinguer ce fichier permettant de démarrer plusieurs arborescences de processus à partir d'un simple script exécutable contenant plusieurs commandes. Si ce fichier texte contient des autorisations d'exécution, les ressources s'affichent sans problème ni erreur sur le cluster, mais toutes les commandes sont exécutées sous une seule balise PMF. Dans ce cas, la fonction PMF ne peut pas contrôler et redémarrer individuellement les arborescences de processus.

Utilisation d'Agent Builder

Cette section décrit comment utiliser Agent Builder et présente les différentes tâches à effectuer avant de pouvoir l'utiliser. Vous y découvrirez également comment profiter de cet outil après avoir généré le code du type de ressources.

Les rubriques traitées sont les suivantes :

Analyse de l'application

Avant d'utiliser Agent Builder, vous devez déterminer si l'application répond aux critères requis en termes de haute disponibilité et évolutivité. Agent Builder ne peut pas réaliser cette analyse s'appuyant uniquement sur les caractéristiques du temps d'exécution de l'application. Vous trouverez de plus amples informations à ce sujet dans la rubrique Analyse du caractère approprié de l'application.

Il se peut qu'Agent Builder ne puisse pas toujours créer un type de ressources complet pour votre application. Dans la plupart des cas, cependant, il propose au moins une solution partielle. Par exemple, les applications particulièrement complexes peuvent nécessiter un code supplémentaire qu'Agent Builder ne génère pas par défaut. Il peut notamment s'agir d'un code permettant d'ajouter des contrôles de validation pour des propriétés supplémentaires ou de régler des paramètres qu'Agent Builder n'affiche pas. Le cas échéant, vous devez apporter des modifications au code source généré ou au fichier RTR. La conception d'Agent Builder vise justement à offrir cette souplesse.

De fait, Agent Builder insère des commentaires aux endroits du code source généré où vous pouvez ajouter votre propre code de type de ressources. Une fois le code source modifié, vous pouvez utiliser le fichier makefile généré par Agent Builder pour recompiler le code source et générer de nouveau le package de type de ressources.

Même si vous écrivez l'intégralité du code de type de ressources sans utiliser aucun code généré par Agent Builder, vous pouvez utiliser le fichier makefile et la structure fournis par Agent Builder pour créer le package Solaris de votre type de ressources.

Installation et configuration d'Agent Builder

Agent Builder ne requiert aucune installation spéciale. Agent Builder est livré avec le package SUNWscdev, installé par défaut dans le cadre de l'installation logicielle standard de Sun Cluster. Pour de plus amples informations, reportez-vous au manuel Sun Cluster Software Installation Guide for Solaris OS.

Avant d'utiliser Agent Builder, vérifiez les points suivants :


Remarque –

vous pouvez utiliser un autre compilateur que le compilateur cc standard avec Agent Builder. Pour ce faire, vous pouvez créer un lien symbolique dans $PATH entre cc et un autre compilateur, par exemple gcc. Vous pouvez également remplacer la spécification du compilateur dans le fichier makefile (actuellement CC=cc) par le chemin d'accès complet d'un autre compilateur. Par exemple, dans le fichier makefile généré par Agent Builder, remplacez CC=cc par CC=nomchemin/gcc . Dans ce cas, vous ne pouvez pas exécuter Agent Builder directement. Vous devez utiliser les commandes make et make pkg pour générer un code de service de données et un package.


Écrans d'Agent Builder

Agent Builder est un assistant en deux étapes, chacune d'elles disposant d'un écran. Agent Builder affiche les deux écrans suivants, destinés à vous guider tout au long du processus de création d'un type de ressources :

  1. l'écran de création : sur cet écran, vous indiquez les informations de base sur le type de ressources à créer, par exemple son nom et le répertoire de travail des fichiers générés. Le répertoire de travail constitue l'emplacement de création et de configuration du modèle de type de ressource. Vous pouvez également identifier le type de ressources à créer (évolutives ou de basculement), si l'application de base est sensible au réseau (c'est-à-dire si elle passe par le réseau pour communiquer avec ses clients) et le type de code (C, korn shell ksh ou GDS (service de données générique)) à générer. Pour de plus amples informations sur GDS, voir le Chapitre 10, Services de données génériques. Vous devez indiquer toutes les informations sur cet écran et sélectionner l'option de création pour générer la sortie correspondante. Ensuite, vous pouvez afficher l'écran de configuration.

  2. l'écran de configuration : sur cet écran, vous devez indiquer la ligne de commande complète qui peut être transmise à n'importe quel shell UNIX® pour démarrer l'application de base. Si vous le souhaitez, vous pouvez fournir des commandes permettant d'arrêter et d'analyser l'application. À défaut, la sortie générée utilise des signaux pour arrêter l'application et fournit un mécanisme d'analyse par défaut. Voir la description de la commande d'analyse, sous la rubrique Utilisation de l'écran Configurer. Cet écran vous permet également de modifier les valeurs de délai pour chacune de ces trois commandes.

Lancement d'Agent Builder


Remarque –

Si la version de l'interface utilisateur graphique d'Agent Builder n'est pas accessible, vous pouvez accéder à Agent Builder via une interface de ligne de commande. Voir la rubrique Utilisation de la version de ligne de commande d'Agent Builder.



Remarque –

si vous lancez Agent Builder à partir du répertoire de travail d'un type de ressources existant, Agent Builder initialise les écrans Créer et Configurer en reprenant les valeurs du type de ressources existant.


Pour lancer Agent Builder, entrez la commande suivante :


% /usr/cluster/bin/scdsbuilder

L'écran Créer apparaît.

Figure 9–1 Écran Créer

Boîte de dialogue intitulée SunPlex Agent Builder présentant l'écran principal d'Agent Builder

Navigation dans Agent Builder

Pour entrer des informations sur les écrans Créer et Configurer, effectuez les opérations suivantes :

Les options en bas de chaque écran vous permettent d'effectuer une tâche, de passer à l'écran suivant ou précédent ou de quitter Agent Builder. Les options apparaissent en grisé ou en surbrillance selon qu'elles correspondent à des actions que vous pouvez effectuer ou non.

Par exemple, après avoir renseigné les champs et coché les options souhaitées dans l'écran Créer, cliquez sur le bouton Créer en bas de l'écran. Les boutons Précédent et Suivant sont désactivés car il n'existe pas d'écran précédent et vous ne pouvez pas accéder à l'écran suivant tant que vous n'avez pas terminé de renseigner l'écran actuel.

Panneau en bas de l'écran affichant les commandes Créer, Précédent, Suivant et Annuler

Agent Builder affiche des messages de progression dans la zone du journal située en bas de l'écran. Lorsqu'il a terminé, il affiche un message indiquant que l'opération a été correctement effectuée ou un avertissement vous invitant à consulter le journal. Le bouton Suivant est activé ou, s'il s'agit du dernier écran, seul le bouton Annuler est mis en surbrillance.

Vous pouvez sélectionner à tout moment l'option Annuler pour quitter Agent Builder.

Parcourir

Certains champs d'Agent Builder vous permettent d'entrer des informations ou de cliquer sur Parcourir pour rechercher un fichier ou un répertoire dans la structure de répertoires.

Commande Parcourir

Lorsque vous cliquez sur Parcourir, un écran similaire à celui-ci apparaît :

Écran de recherche comportant une liste de fichiers

Double-cliquez sur un dossier pour l'ouvrir. Lorsque vous déplacez le curseur sur un fichier, son nom apparaît dans le champ Nom de fichier. Après avoir localisé le fichier souhaité et pointé le curseur dessus, cliquez sur Sélectionner.


Remarque –

Si vous recherchez un répertoire, positionnez le curseur sur le répertoire souhaité et cliquez sur Ouvrir. S'il ne contient aucun sous-répertoire, Agent Builder ferme la fenêtre Parcourir et insère le nom du répertoire sur lequel pointe le curseur dans le champ approprié. S'il contient des sous-répertoires, cliquez sur Fermer pour faire disparaître la fenêtre et revenir à l'écran précédent. Agent Builder insère le nom du répertoire sur lequel vous avez positionné le curseur dans le champ approprié.


Fonction des icônes situées dans le coin supérieur droit de l'écran :

Icône comportant une flèche vers le haut

 

Cette icône permet de monter d'un niveau dans la structure de répertoire. 

Icône comportant une maison

 

Cette icône permet de revenir au dossier personnel. 

Icône comportant un nouveau dossier

 

Cette icône crée un nouveau dossier sous le dossier actuellement sélectionné. 

Icône servant à basculer l'affichage

 

Cette icône permet de basculer entre différents affichages. Elle est dédiée à une utilisation ultérieure. 

Menus

Agent Builder comporte deux menus déroulants : le menu Fichier et le menu Éditer.

Menu Fichier

Le menu Fichier comporte deux options :

Menu Éditer

Le menu Éditer comporte les options suivantes :

Utilisation de l'écran Créer

Écran Créer

La première étape de création d'un type de ressources consiste à renseigner l'écran Créer qui s'affiche au lancement d'Agent Builder. L'illustration suivante présente l'écran Créer une fois que vous avez renseigné les champs.

Figure 9–2 Écran Créer

Boîte de dialogue présentant l'écran Créer une fois les champs renseignés

L'écran Créer contient les champs, les cases d'option et les cases à cocher suivantes :


Remarque –

Si le compilateur cc ne figure pas dans la variable $PATH, Agent Builder affiche l'option C en grisé et vous permet de sélectionner l'option ksh. Pour spécifier un compilateur différent, reportez-vous à la remarque figurant à la fin de la rubrique Installation et configuration d'Agent Builder.


Après avoir entré les informations requises, cliquez sur Créer. La fenêtre du journal, en bas de l'écran, présente les actions entreprises par Agent Builder. Vous pouvez choisir l'option Enregistrer journal du menu Éditer pour enregistrer les informations dans le journal.

Une fois l'opération terminée, Agent Builder affiche un message indiquant qu'elle a été correctement effectuée ou un avertissement.


Remarque –

Bien que le processus de génération d'un type de ressources complet soit composé de deux étapes, vous pouvez quitter Agent Builder une fois la première étape (création) terminée sans perdre les données entrées ou le travail exécuté par Agent Builder. Voir la rubrique Réutilisation d'un travail terminé.


Utilisation de l'écran Configurer

Écran Configurer

L'écran Configurer, présenté ci-après, apparaît une fois qu'Agent Builder a terminé la création du type de ressources et que vous avez sélectionné Suivant sur l'écran Créer. Vous ne pouvez pas accéder à l'écran Configurer avant d'avoir créé le type de ressources.

Figure 9–3 Écran Configurer

Boîte de dialogue présentant l'écran Configurer

L'écran Configurer contient les champs suivants :

Utilisation de la variable $hostnames korn shell d'Agent Builder

Pour un certain nombre d'applications, notamment les applications compatibles réseau, le nom de l'hôte sur lequel l'application écoute et traite les requêtes des clients doit être transmis à l'application sur la ligne de commande. Souvent, vous devez indiquer le paramètre de nom d'hôte pour les commandes de démarrage, d'arrêt et d'analyse du type de ressources cible (sur l'écran Configurer). Le nom d'hôte d'écoute de l'application est propre au cluster. Il est déterminé lorsque la ressource est exécutée sur un cluster, mais il ne peut pas être déterminé lorsqu'Agent Builder génère le code du type de ressource.

Pour pallier ce problème, Agent Builder propose la variable $hostnames que vous pouvez spécifier sur la ligne de commande pour les commandes de démarrage, d'arrêt et de détection.


Remarque –

La variable $hostnames n'est prise en charge que lorsqu'elle est utilisée avec les services korn shell. Elle ne peut pas être utilisée avec les services C et GDS.


Vous spécifiez la variable $hostnames exactement comme vous indiqueriez un nom d'hôte réel. Exemple :


% /opt/network_aware/echo_server -p num_port -l $hostnames

Lorsqu'une ressource du type de ressources cible est exécutée sur un cluster, le nom d'hôte LogicalHostname (NomHôteLogique) ou SharedAddress (AdressePartagée) de cette ressource (défini dans la propriété de ressource Network_resources_used (Ressources_réseau_utilisées) de cette ressource) est remplacé par la valeur de la variable $hostnames.

Si vous configurez la propriété Network_resources_used (Ressources_réseau_utilisées) avec plusieurs noms d'hôte, ils sont tous contenus dans la variable $hostnames, séparés par une virgule.

Variables de propriété

Vous pouvez récupérer dans l'infrastructure du RGM (Resource Group Manager), les valeurs des propriétés de groupe de ressources, de type de ressource et de ressource Sun Cluster sélectionnées, à l'aide des variables de propriété. Agent Builder recherche des variables de propriété dans le script de démarrage, d'analyse ou d'arrêt et les remplace par leur valeur, avant de lancer le script.


Remarque –

Les variables de propriété ne peuvent pas être utilisées avec des services korn shell.


Liste des variables de propriété

La liste ci-après répertorie les variables de propriété susceptibles d'être utilisées dans les scripts. Les propriétés de groupe de ressources, de type de ressource et de ressource Sun Cluster sont présentées dans Annexe A, Propriétés standard.

La liste ci-dessous présente les variables de propriété de ressource :

La liste ci-dessous répertorie les variables de propriété des types de ressources :

La liste ci-dessous répertorie les variables de propriété des groupes de ressources :

Syntaxe des variables de propriété

Vous devez ajouter le symbole de pourcentage (%) devant un nom de propriété pour indiquer une variable de propriété, comme illustré dans l'exemple suivant :


# /opt/network_aware/echo_server -t %RS_STOP_TIMEOUT -n %RG_NODELIST

Selon l'exemple ci-dessus, Agent Builder peut interpréter les variables de propriété et lancer le script echo_server avec les valeurs suivantes :


# /opt/network_aware/echo_server -t 300 -n nœud-phys-1,nœud-phys-2,nœud-phys-3

Interprétation et remplacement des variables de propriété par Agent Builder

La liste ci-dessous présente les clés de l'interprétation des types de variables de propriété par Agent Builder :

Réutilisation d'un travail terminé

Agent Builder permet de réutiliser un travail terminé de l'une des manières suivantes :

Clonage d'un type de ressources existant

Procédez comme suit pour cloner un type de ressources existant généré par Agent Builder :

  1. Chargez un type de ressources existant dans Agent Builder, de l'une des manières suivantes :

    • Lancez Agent Builder à partir du répertoire de travail (contenant le fichier rtconfig) d'un type de ressources existant (créé avec Agent Builder). Agent Builder charge les valeurs du type de ressources sur les écrans Créer et Configurer.

    • Utilisez l'option Charger type de ressources, accessible à partir du menu déroulant Fichier.

  2. Modifiez le répertoire de travail dans l'écran Créer.

    Vous devez utiliser l'option Parcourir pour sélectionner un répertoire. La saisie d'un nouveau nom de répertoire est insuffisante. Une fois le répertoire sélectionné, Agent Builder active de nouveau le bouton Créer.

  3. Apportez les modifications requises.

    Cette procédure vous permet notamment de modifier le type de code généré pour le type de ressources. Par exemple, si vous avez commencé par créer une version korn shell d'un type de ressources avant de constater qu'il vous faut une version C, vous pouvez charger le type de ressources korn shell existant, remplacer le langage de sortie par C, puis utiliser Agent Builder pour concevoir une version C du type de ressources.

  4. Créez le clone du type de ressources.

    Cliquez sur Créer pour créer le type de ressources. Cliquez sur Suivant pour afficher l'écran Configurer. Cliquez sur Configurer pour configurer le type de ressources, puis cliquez sur Annuler pour terminer.

Édition du code source généré

Pour que le processus de création d'un type de ressources reste simple, Agent Builder limite le nombre d'entrées, ce qui restreint la portée du type de ressources généré. Par conséquent, si vous souhaitez ajouter des fonctions plus complexes (des contrôles de validation de propriétés supplémentaires, par exemple) ou régler des paramètres qu'Agent Builder n'affiche pas, vous devez modifier le code source généré ou le fichier RTR.

Les fichiers sources sont disponibles dans le répertoire répertoire_installation /nom_type_res/src. Agent Builder intègre des commentaires dans le code source là où vous pouvez ajouter un code. Exemple (pour un code C) :


/* Code ajouté par l'utilisateur -- BEGIN vvvvvvvvvvvvvvv */
/* Code ajouté par l'utilisateur -- END   ^^^^^^^^^^^^^^^ */


Remarque –

Ces commentaires sont identiques dans le code source korn shell, à l'exception du signe dièse (#) indiquant le début d'un commentaire.


Par exemple, nom_typ_res.h déclare toutes les routines utilitaires que les différents programmes utilisent. À la fin de la liste des déclarations, vous trouverez des commentaires vous permettant de déclarer les autres routines que vous aimeriez ajouter à n'importe quel code source.

Agent Builder génère également un fichier makefile dans le répertoire répertoire_installation/nom_type_res/src avec les cibles appropriées. Les commandes make et make pkg permettent respectivement de recompiler le code source et de générer de nouveau le package du type de ressources.

Le fichier RTR figure dans le répertoire répertoire_installation/ nom_type_res/etc. Vous pouvez le modifier à l'aide d'un éditeur de texte standard. Voir la rubrique Paramétrage des propriétés de ressources et de types de ressources pour obtenir plus d'informations sur le fichier RTR et l'Annexe A, Propriétés standard pour plus d'informations sur les propriétés.

Utilisation de la version de ligne de commande d'Agent Builder

La version de ligne de commande d'Agent Builder s'appuie sur la même procédure de base que l'interface utilisateur graphique. Néanmoins, au lieu de saisir des informations dans l'interface utilisateur graphique, vous devez transmettre les paramètres aux commandes scdscreate et scdsconfig. Voir les pages man de scdscreate(1HA) et scdsconfig(1HA).

Procédez comme suit pour utiliser la version ligne de commande d'Agent Builder :

  1. Utilisez la commande scdscreate pour créer un modèle de type de ressources Sun Cluster permettant de concevoir une application hautement disponible ou évolutive.

  2. Utilisez la commande scdsconfig pour configurer le modèle de type de ressources créé avec scdscreate.

    Vous pouvez indiquer des variables de propriété, décrites sous la rubrique Variables de propriété.

  3. Remplacez les répertoires par le sous-répertoire pkg dans le répertoire de travail.

  4. Utilisez la commande pkgadd pour installer les packages créés avec scdscreate.

  5. Éditez le code source généré, si vous le souhaitez.

  6. Exécutez le script de démarrage.

Structure de répertoire

Agent Builder crée une structure de répertoire afin de stocker tous les fichiers générés pour le type de ressources cible. Le répertoire de travail est défini à partir de l'écran Créer. Vous devez indiquer des répertoires d'installation distincts pour chaque type de ressources que vous développez. Dans le répertoire de travail, Agent Builder crée un sous-répertoire dont le nom résulte de la concaténation du nom du fournisseur et du nom du type de ressources (à partir de l'écran Créer). Par exemple, si vous spécifiez SUNW comme nom de fournisseur et que vous créiez un type de ressources appelé ftp, Agent Builder crée le répertoire SUNWftp sous le répertoire de travail.

Dans ce sous-répertoire, Agent Builder crée et remplit les répertoires présentés dans le tableau suivant :

Nom du répertoire  

Sommaire 

bin

Spécifique à une sortie C. Contient les fichiers binaires compilés à partir des fichiers sources. Spécifique à une sortie korn shell. Contient les mêmes fichiers que le répertoire src.

etc

Contient le fichier RTR. Agent Builder concatène le nom du fournisseur et le nom d'application, en les séparant d'un point (.), afin de constituer le nom du fichier RTR. Par exemple, si le fournisseur et le type de ressources s'appellent respectivement SUNW et ftp, le nom du fichier RTR est SUNW.ftp.

man

Contient les pages man des scripts d'utilitaire start, stop et remove. Par exemple, startftp(1M), stopftp(1M) et removeftp(1M).

 

Pour consulter ces pages, indiquez le chemin avec l'option man -M. Exemple :


# man -M répertoire_installation/SUNWftp/man removeftp

pkg

Contient le package final. 

src

Contient les fichiers sources générés par Agent Builder. 

util

Contient les scripts d'utilitaire start, stop et remove générés par Agent Builder. Reportez-vous à la rubrique Scripts d'utilitaire et pages man. Agent Builder ajoute le nom d'application à chacun des noms de script, par exemple, startftp, stopftp, removeftp.

Sortie d'Agent Builder

Cette rubrique décrit la sortie générée par Agent Builder.

Fichiers sources et binaires

Le RGM (Resource Group Manager) permet de gérer les groupes de ressources et, en définitive, les ressources sur un cluster. Il utilise pour ce faire un modèle de rappel (callback). Lorsqu'un événement spécifique se produit, comme un nœud tombant en panne par exemple, le RGM appelle les méthodes du type de ressources de toutes les ressources exécutées sur le nœud défectueux. Par exemple, le RGM appelle la méthode Stop pour arrêter une ressource exécutée sur le nœud défectueux, puis il appelle la méthode Start de cette ressource pour la lancer sur un autre nœud. Voir les rubriques Modèle RGM, Méthodes de rappel et la page rt_callbacks(1HA) pour obtenir plus d'informations sur le modèle.

Pour prendre en charge ce modèle, Agent Builder génère huit scripts korn shell ou programmes C exécutables dans le répertoire répertoire_installation/ nom_type_res/bin utilisés comme méthodes de rappel.


Remarque –

Le programme nom_type_res _probe mettant en œuvre un système de détection des pannes, n'est pas à proprement parler un programme de rappel. Le RGM n'appelle pas directement nom_type_res _probe ; il appelle nom_type_res _monitor_start ou nom_type_res _monitor_stop qui exécute ou arrête respectivement le système de détection des pannes en appelant nom_type_res_probe.


Les huit méthodes générées par Agent Builder sont les suivantes :

Reportez-vous à la page man rt_callbacks( 1HA) pour de plus amples informations sur chacune de ces méthodes.

Agent Builder génère les fichiers suivants dans le répertoire répertoire_installation/ nom_type_res/src (sortie C) :

Agent Builder lie le fichier nom_type_res .o à chaque fichier .o de méthode pour créer les exécutables dans le répertoire répertoire_installation/ nom_type_res/bin.

Dans le cadre d'une sortie korn shell, les répertoires répertoire_installation /nom_type_res/bin et répertoire_installation/nom_type_res/src sont identiques. Chacun d'eux comporte huit scripts d'exécution correspondant aux sept méthodes de rappel et à la méthode Probe.


Remarque –

La sortie korn shell comprend deux programmes utilitaires compilés (gettime et gethostnames) requis par certaines méthodes de rappel pour obtenir l'heure ou effectuer une analyse.


Vous pouvez éditer le code source, exécuter la commande make pour recompiler le code, puis exécuter la commande make pkg pour générer un nouveau package. Pour permettre la modification du code source, Agent Builder insère des commentaires dans le code source aux emplacements auxquels il est possible d'ajouter du code. Reportez-vous à la rubrique Édition du code source généré.

Scripts d'utilitaire et pages man

Vous avez généré un type de ressources et installé le package correspondant sur un cluster. Vous devez encore exécuter une instance (ressource) du type de ressources sur un cluster à l'aide, en règle générale, de commandes administratives ou de SunPlex Manager. Pourtant, par souci de simplicité, Agent Builder génère à cet effet un script d'utilitaire personnalisé (le script de démarrage), ainsi que des scripts d'arrêt et de suppression d'une ressource du type de ressources cible. Ces trois scripts, disponibles dans le répertoire répertoire_installation/nom_type_res/util, ont les fonctions suivantes :


Remarque –

vous ne pouvez utiliser le script de suppression qu'avec une ressource exécutée à l'aide du script de démarrage car ces scripts utilisent des conventions internes pour nommer les ressources et les groupes de ressources.


Agent Builder attribue un nom à ces scripts en ajoutant le nom d'application aux noms de script. Par exemple, si le nom d'application est ftp , les scripts sont appelés startftp, stopftp et removeftp.

Agent Builder contient des pages man dans le répertoire répertoire_installation/nom_type_res/man/man1m de chaque script d'utilitaire. Vous devez les lire avant de lancer ces scripts car elles présentent les paramètres qu'il vous faut fournir au script.

Pour consulter ces pages man, indiquez le chemin d'accès au répertoire correspondant en utilisant l'option -M avec la commande man. Par exemple, si le nom du fournisseur est SUNW et le nom d'application ftp, utilisez la commande suivante pour afficher la page man startftp (1M) :


% man -M répertoire_installation/SUNWftp/man startftp

Les scripts d'utilitaire des pages man sont également disponibles auprès de l'administrateur du cluster. Lorsqu'un package généré par Agent Builder est installé sur un cluster, les pages man des scripts d'utilitaire sont placées dans le répertoire /opt/ nom_type_res/man. Par exemple, utilisez la commande suivante pour afficher la page man de startftp(1M) :


% man -M /opt/SUNWftp/man startftp

Fichiers de prise en charge

Agent Builder place les fichiers de prise en charge, comme pkginfo, postinstall, postremove et preremove, dans le répertoire répertoire_installation/nom_type_res/etc. Ce répertoire contient également le fichier RTR (Resource Type Registration), déclarant les propriétés de ressources et de type de ressources disponibles pour le type de ressources cible et initialisant les valeurs de propriétés lors de l'enregistrement d'une ressource sur un cluster. Pour plus d'informations, voir la rubrique Paramétrage des propriétés de ressources et de types de ressources. Le nom du fichier RTR est créé de la manière suivante : nom_fournisseur.nom_type_ressources, par exemple SUNW.ftp.

Vous pouvez modifier ce fichier à l'aide d'un éditeur de texte standard et apporter des modifications sans recompiler votre code source. Vous devez, cependant, reconstituer le package avec la commande make pkg.

Répertoire du package

Le répertoire répertoire_installation/nom_type_res/pkg contient un package Solaris. Le nom du package est une concaténation du nom du fournisseur et du nom d'application, par exemple SUNWftp. Le fichier Makefile situé dans le répertoire répertoire_installation/nom_type_res/src prend en charge la création d'un nouveau package. Par exemple, si vous modifiez les fichiers sources et recompilez le code ou si vous modifiez les scripts d'utilitaire du package, vous devez utiliser la commande make pkg pour créer un nouveau package.

La commande pkgrm peut échouer lors de la suppression d'un package d'un cluster si vous tentez de l'exécuter sur plusieurs nœuds simultanément. Vous pouvez pallier ce problème de l'une des deux façons suivantes :

Si la commande pkgrm échoue car vous tentez de l'exécuter simultanément sur plusieurs nœuds, lancez-la de nouveau nœud par nœud, puis sur les nœuds restants.

Fichier rtconfig

Si vous générez un code source C ou korn shell dans le répertoire de travail, Agent Builder génère un fichier de configuration rtconfig contenant les informations que vous avez entrées dans les écrans Créer et Configurer. Si vous lancez Agent Builder à partir du répertoire de travail d'un type de ressources existant (ou si vous chargez un type de ressources existant en sélectionnant l'option Charger type de ressources dans le menu déroulant Fichier), Agent Builder lit le fichier rtconfig et remplit les champs des écrans Créer et Configurer avec les informations indiquées pour le type de ressources existant. Cette fonction est particulièrement utile lorsque vous souhaitez cloner un type de ressources existant. Voir la rubrique Clonage d'un type de ressources existant.

Module Cluster Agent pour Agent Builder

Le module Cluster Agent pour Agent Builder est un module NetBeansTM permettant aux utilisateurs de Sun Java Studio (précédemment Sun ONE Studio) de créer des types de ressources ou des services de données pour le logiciel Sun Cluster à l'aide d'un environnement de développement intégré. Ce module se caractérise par une interface écran permettant de décrire chaque sorte de type de ressources que vous souhaitez créer.


Remarque –

la documentation de Sun Java Studio présente les procédures de configuration, d'installation et d'utilisation de ce logiciel.


Installation et configuration du module Cluster Agent

Le module Cluster Agent est installé en même temps que le logiciel Sun Cluster. L'outil d'installation de Sun Cluster enregistre le fichier du module Cluster Agent scdsbuilder.jar sous /usr/cluster/lib/scdsbuilder. Pour utiliser le module Cluster Agent avec le logiciel Sun Java Studio, vous devez créer un lien symbolique vers ce fichier.


Remarque –

Les logiciels Sun Cluster, Sun Java Studio et Java 1.4 doivent être installés et accessibles sur le système sur lequel vous envisagez d'exécuter le module Cluster Agent.


  1. Configurez un accès multi-utilisateur ou mono-utilisateur au module Cluster Agent.

    • Pour permettre à tous les utilisateurs d'accéder au module Cluster Agent, connectez-vous en tant que superutilisateur, ou avec un rôle équivalent, et créez un lien symbolique dans le répertoire global du module :


      # cd /opt/s1studio/ee/modules
      # ln -s /usr/cluster/lib/scdsbuilder/scdsbuilder.jar
      


      Remarque –

      si vous installez le logiciel Sun Java Studio dans un autre répertoire que /opt/s1studio/ee, remplacez ce chemin d'accès par le chemin d'accès approprié.


    • Pour permettre uniquement à vous-même d'accéder au module, créez le lien symbolique dans votre sous-répertoire modules :


      % cd ~votre_rép_personnel/ffjuser40ee/modules
      % ln -s /usr/cluster/lib/scdsbuilder/scdsbuilder.jar
      

  2. Fermez et relancez le logiciel Sun Java Studio.

Démarrage du module Cluster Agent

La procédure suivante décrit comment démarrer le module Cluster Agent à partir du logiciel Sun Java Studio.

  1. À partir du menu Fichier de Sun Java Studio, sélectionnez Nouveau, ou dans la barre d'outils, cliquez sur l'icône illustrée ci-dessous : Graphique présentant l'icône Nouveau dans la barre d'outils de Sun Java Studio

    L'écran Assistant Nouveau apparaît.

    Boîte de dialogue présentant l'écran Assistant Nouveau

  2. Dans la fenêtre Sélectionner un modèle, faites défiler la liste (si nécessaire), puis cliquez sur la clé en regard du dossier Autre :Graphique intégré présentant la clé du dossier Autre

    Le dossier Autre s'ouvre.

    Illustration présentant le menu développé du dossier Autre

  3. Dans le dossier Autre, sélectionnez Sun Cluster Agent Builder, puis cliquez sur Suivant.

    Le module Cluster Agent pour Sun Java Studio démarre. Le premier écran Assistant Nouveau - Sun Cluster Agent Builder apparaît.

    Boîte de dialogue présentant l'écran Assistant Nouveau - Sun Cluster Agent Builder lors de son premier affichage

Utilisation du module Cluster Agent

Utilisez le module Cluster Agent de la même façon que le logiciel Agent Builder. Leurs interfaces sont identiques. Par exemple, les illustrations suivantes montrent que l'écran Créer du logiciel Agent Builder et le premier écran Assistant Nouveau - Sun Cluster Agent Builder du module Cluster Agent contiennent les mêmes champs et sélections.

Figure 9–4 Écran Créer du logiciel Agent Builder

Boîte de dialogue présentant l'écran Créer une fois les champs renseignés

Figure 9–5 Écran Assistant Nouveau - Sun Cluster Agent Builder du module Cluster Agent

Boîte de dialogue présentant l'écran Assistant Nouveau - Sun Cluster Agent Builder une fois les champs renseignés

Différences entre le module Cluster Agent et Agent Builder

Malgré la grande similitude entre le module Cluster Agent et Agent Builder, il existe quelques petites différences :