Cette section explique comment utiliser Agent Builder. Elle indique aussi les tâches que vous devez effectuer avant de pouvoir utiliser Agent Builder. 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 :
Utilisation de la variable $hostnames basée sur le korn shell de Agent Builder
Utilisation de la version de ligne de commande d'Agent Builder
Avant d'utiliser Agent Builder, vous devez déterminer si l'application que vous souhaitez rendre hautement disponible ou évolutive répond aux critères requis. Agent Builder ne peut pas réaliser cette analyse qui s'appuie uniquement sur les caractéristiques du temps d'exécution de l'application. Pour plus d'informations à ce sujet, voir Analyse du caractère approprié de l'application.
Agent Builder ne sera peut-être pas toujours en mesure de créer un type de ressource complet pour votre application. Toutefois, dans la plupart des cas, Agent Builder fournit au moins une solution partielle. Les applications plus complexes nécessitent parfois du code supplémentaire, que Agent Builder ne génère pas par défaut, comme le code qui permet d'ajouter des marques de validation pour les propriétés supplémentaires ou de régler les paramètres que Agent Builder n'affiche pas. Le cas échéant, vous devez apporter des modifications au code source généré ou au fichier RTR. Agent Builder est spécialement conçu pour fournir ce type de flexibilité.
Agent Builder place des commentaires en des endroits bien précis du code source généré, où vous pouvez ajouter votre propre code de type de ressource. 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 tout votre code de type de ressource sans utiliser de 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 pour votre type de ressource.
Agent Builder ne nécessite aucune installation particulière. Agent Builder est inclus dans le package SUNWscdev, qui est installé par défaut avec le logiciel Sun Cluster. Pour plus d'informations, voir Guide d’installation du logiciel Sun Cluster pour SE Solaris.
Avant d'utiliser Agent Builder, vérifiez les points suivants :
L'environnement d'exécution Java est inclus dans votre variable $PATH. Agent Builder fonctionne avec la version 1.3.1. ou une version ultérieure du kit de développement Java. Si ce kit n'est pas inclus dans votre variable $PATH, la commande de Agent Builder (scdsbuilder) renvoie et affiche un message d'erreur.
Vous avez installé au minimum la version Solaris 8 du groupe de logiciels du Support système développeur.
Le compilateur cc est inclus dans votre variable $PATH . Agent Builder se sert de la première occurrence de cc dans votre variable $PATH pour identifier le compilateur à utiliser pour générer le code binaire C du type de ressource. Si cc n'est pas inclus dans $PATH, Agent Builder désactive l'option permettant de générer le code C. Voir Utilisation de l'écran Créer.
Avec Agent Builder, vous pouvez utiliser un autre compilateur que le compilateur standard cc. Pour ce faire, créez un lien symbolique dans $PATH de cc vers un autre compilateur, tel que gcc. Vous pouvez également changer le compilateur spécifié dans le fichier makefile (actuellement CC=cc) en saisissant le chemin complet d'un autre compilateur. Par exemple, dans le fichier makefile généré par Agent Builder, remplacez CC=cc par CC=pathname/gcc. Si vous procédez à cette modification, vous ne pouvez pas exécuter Agent Builder directement. Au lieu de cela, vous devez utiliser les commandes make et make pkg pour générer du code de service de données et le package.
Agent Builder est un assistant en deux étapes, chacune d'elles disposant d'un écran. Agent Builder comprend les deux écrans suivants qui vous guident tout au long du processus de création d'un nouveau type de ressource :
L'écran Créer. Cet écran vous permet d'entrer des informations de base sur le type de ressource à créer, telles que son nom et le répertoire de travail où placer les 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 préciser les informations suivantes :
Le type de ressource à créer (évolutive ou de basculement)
Si l'application de base reconnaît le réseau (c'est-à-dire si elle utilise le réseau pour communiquer avec les clients)
Le type de code à générer (C, korn shell (ksh) ou GDS)
Pour plus d'informations sur GDS, voir Chapitre 10, Services de données génériques. Vous devez remplir tous les champs d'information de cet écran et sélectionner Créer pour générer la sortie correspondante. Ensuite, vous pouvez afficher l'écran Configurer.
L'écran Configurer. Sur cet écran, vous devez spécifier la ligne de commande complète qui peut être transmise à un shell UNIX pour démarrer votre application de base. Si vous le souhaitez, vous pouvez fournir des commandes permettant d'arrêter et d'analyser l'application. Si vous ne spécifiez pas ces deux commandes, la sortie générée utilise des signaux pour arrêter l'application et propose un mécanisme de sonde par défaut. Voir la description de la commande de la sonde à la section Utilisation de l'écran Configurer. L'écran Configurer vous permet également de modifier les valeurs de délai d'attente pour chacune de ces trois commandes : démarrage, arrêt, sonde.
Si la version d'interface utilisateur graphique de Agent Builder n'est pas accessible, vous pouvez accéder à Agent Builder via l'interface de ligne de commande. Voir Utilisation de la version de ligne de commande d'Agent Builder .
Si vous lancez Agent Builder à partir d'un répertoire de travail pour un type de ressource existant, Agent Builder initialise les écrans de création et de configuration en fonction des valeurs de ce type de ressource.
Lancez Agent Builder en entrant la commande suivante :
% /usr/cluster/bin/scdsbuilder |
L'écran Créer apparaît.
Procédez de la manière suivante pour entrer des informations sur les écrans de création et de configuration :
Tapez l'information dans le champ correspondant
Parcourez votre arborescence et choisissez un fichier ou un répertoire
Choisissez un bouton radio excluant tous les autres, par exemple le bouton correspondant à "évolutif" ou à "basculement"
Cochez la case de reconnaissance du réseau pour caractériser l'application de base comme reconnaissant le réseau. Sinon, laissez cette case décochée
Les boutons en bas de chaque écran vous permettent de terminer la tâche, de passer à l'écran suivant ou précédent ou de quitter Agent Builder. Agent Builder fait ressortir ces boutons ou les grise, le cas échéant.
Par exemple, lorsque vous avez rempli les champs et sélectionné les options de votre choix sur l'écran Créer, cliquez sur Créer en bas de l'écran. Les options Précédent et Suivant sont grisées car il n'existe aucun écran précédent et vous ne pouvez pas passer à l'étape suivante avant d'avoir effectué celle-ci.
Agent Builder affiche des messages de progression dans la zone Journal de sortie située en bas de l'écran. Lorsque l'opération est terminée, il affiche un message de réussite ou un avertissement. Le bouton Suivant est activé ou, s'il s'agit du dernier écran, seul le bouton Annuler est mis en surbrillance.
Vous pouvez cliquer sur Annuler à tout moment pour quitter Agent Builder.
Certains champs Agent Builder vous permettent d'entrer des informations. D'autres champs vous invitent à cliquer sur Parcourir pour naviguer dans une arborescence et sélectionner un fichier ou un répertoire.
Lorsque vous cliquez sur Parcourir, un écran semblable à celui-ci apparaît.
Double-cliquez sur un dossier pour l'ouvrir. Lorsque vous déplacez le curseur sur un fichier, son nom apparaît dans le champ correspondant au nom de fichier. Après avoir localisé le fichier souhaité et pointé le curseur dessus, cliquez sur Sélectionner.
Si vous recherchez un répertoire, positionnez le curseur sur le répertoire souhaité et cliquez sur Ouvrir. Si le répertoire ne contient aucun sous-répertoire, Agent Builder ferme la fenêtre du navigateur et place le nom du répertoire sur lequel vous avez déplacé 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 place le nom du répertoire sur lequel vous avez placé le curseur dans le champ approprié.
Les icônes situées dans le coin supérieur droit de l'écran Parcourir permettent d'effectuer les opérations suivantes :
Icône |
Objet |
---|---|
![]() |
Cette icône permet de monter d'un niveau dans la structure de répertoire. |
![]() |
Cette icône permet de revenir au dossier personnel. |
![]() |
Cette icône crée un nouveau dossier sous le dossier actuellement sélectionné. |
![]() |
Cette icône permet de basculer entre différents affichages. Elle est dédiée à une utilisation ultérieure. |
Agent Builder propose les menus déroulants Fichier et Édition.
Le menu Fichier contient deux options :
Charger type de ressources : Permet de charger un type de ressource existant. Dans Agent Builder, un écran de recherche vous permet de sélectionner le répertoire de travail d'un type de ressources existant. Si un type de ressource existe dans le répertoire à partir duquel vous démarrez Agent Builder, celui-ci charge automatiquement le type de ressource. L'option de chargement du type de ressource vous permet de lancer Agent Builder à partir de n'importe quel répertoire et de sélectionner un type de ressource existant à utiliser en tant que modèle pour créer un nouveau type de ressource. Voir Réutilisation du code créé avec Agent Builder .
Quitter : permet de quitter Agent Builder. Vous pouvez également quitter Agent Builder en cliquant sur Annuler dans l'écran Créer ou Configurer.
Le menu Édition contient deux options :
Effacer le journal de sortie : permet de supprimer les informations du journal. Chaque fois que vous sélectionnez Créer ou Configurer, Agent Builder ajoute des messages d'état dans le journal. Si vous modifiez votre code source de manière itérative, si vous générez à nouveau la sortie dans Agent Builder et souhaitez distinguer les messages d'état, vous pouvez enregistrer et effacer le fichier journal avant chaque utilisation.
Enregistrer journal : permet d'enregistrer la sortie du journal dans un fichier. Agent Builder fournit un écran de navigation qui vous permet de sélectionner le répertoire et de spécifier un nom de fichier.
Pour créer un type de ressource, vous devez en premier lieu remplir les champs de l'écran Créer, qui apparaît lorsque vous démarrez Agent Builder. La capture suivante représente l'écran Créer une fois que vous avez entré les informations dans les champs.
L'écran Créer contient les champs, les cases d'option et les cases à cocher suivantes :
ID du fournisseur : nom identifiant le fournisseur du type de ressources. En général, on précise le symbole du fournisseur. Toutefois, tout nom permettant d'identifier le fournisseur de manière unique est considéré comme valable. N'utilisez que des caractères alphanumériques.
Nom de l'application : nom du type de ressources. N'utilisez que des caractères alphanumériques.
le nom du fournisseur et le nom d'application constituent le nom complet du type de ressources. Avec le système d'exploitation Solaris 9, la combinaison du nom du fournisseur et du nom d'application peut dépasser neuf caractères. En revanche, elle ne doit pas dépasser neuf caractères si vous utilisez une version précédente du système d'exploitation Solaris.
Version TR : version du type de ressources. Le champ Version TR fait la distinction entre les différentes versions enregistrées ou les mises à niveau d'un même type de ressources.
Vous ne pouvez pas utiliser les caractères suivants dans le champ Version TR :
Espace
Onglet
Barre oblique (/)
Barre oblique inverse (\)
Astérisque (*)
Point d'interrogation (?)
Virgule (,)
Point virgule (;)
Crochet gauche ([)
Crochet droit (])
Répertoire de travail : Répertoire sous lequel Agent Builder crée une structure de répertoire destinée à contenir tous les fichiers qui sont créés pour le type de ressource cible. Quel que soit le répertoire de travail, vous ne pouvez y créer qu'un seul type de ressources. Agent Builder initialise ce champ avec le chemin du répertoire à partir duquel vous avez démarré Agent Builder. Toutefois, vous pouvez taper un autre nom ou utiliser l'option Parcourir pour rechercher un autre répertoire.
Sous le répertoire de travail, Agent Builder crée un sous-répertoire contenant le nom du type de ressources. Par exemple, si SUNW est le nom du fournisseur et ftp, le nom de l'application, Agent Builder nomme ce sous-répertoire SUNWftp.
Agent Builder place tous les répertoires et fichiers du type de ressources cible dans ce sous-répertoire. Voir Structure de répertoire créée par Agent Builder .
Évolutif ou Basculement : précisez le type de ressource cible.
Compatible réseau : indique si l'application de base est sensible au réseau, c'est-à-dire si elle utilise le réseau pour communiquer avec ses clients. Cochez la case de reconnaissance du réseau pour indiquer que l'application reconnaît le réseau. Sinon, laissez cette case décochée.
C, ksh : indique le langage du code source généré. Bien que ces options ne puissent pas être sélectionnées en même temps, Agent Builder vous permet de créer un type de ressource avec génération de code korn shell et de réutiliser les mêmes informations pour créer un code C généré. Voir Réutilisation du code créé avec Agent Builder .
GDS : indique qu'il s'agit d'un service de données générique (Generic Data Service, GDS). Pour plus d'informations sur la création et la configuration d'un service de données générique, voir Chapitre 10, Services de données génériques.
Si le compilateur cc n'est pas inclus dans votre variable $PATH, Agent Builder grise le bouton radio C et vous permet de sélectionner le bouton ksh. Pour spécifier un autre compilateur, reportez-vous à la remarque à la fin de la section Installation et configuration d'Agent Builder.
Une fois que vous avez entré les informations requises, cliquez sur Créer. Située en bas de l'écran, la zone Journal de sortie montre les actions effectuées 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.
Si Agent Builder n'a pas pu effectuer cette opération, consultez le journal de sortie pour savoir pourquoi.
Si l'opération a pu être effectuée correctement, cliquez sur Suivant pour afficher l'écran Configurer. L'écran Configurer vous permet de terminer le processus de génération du type de ressource.
Bien que la génération d'un type de ressource complet se fasse en deux étapes, vous pouvez quitter Agent Builder après la première étape (création) sans perdre les informations que vous avez entrées, ni le travail effectué par Agent Builder. Voir Réutilisation du code créé avec Agent Builder .
L'écran Configurer, représenté sur la capture suivante, apparaît une fois que Agent Builder a terminé de créer le type de ressource et que vous avez cliqué sur Suivant sur l'écran Créer. Vous ne pouvez pas accéder à l'écran Configurer avant d'avoir créé le type de ressources.
L'écran Configurer contient les champs suivants :
Commande de démarrage : ligne de commande complète qui peut être transmise à tout shell UNIX pour lancer l'application de base. Vous devez indiquer une commande de démarrage. Vous pouvez taper la commande dans le champ prévu à cet effet, ou utiliser Parcourir pour rechercher un fichier qui contienne la commande permettant de démarrer l'application.
La ligne de commande complète doit inclure tous les éléments nécessaires pour lancer l'application, tels que les noms d'hôte, les numéros de port et un chemin d'accès aux fichiers de configuration. Vous pouvez également spécifier des variables de propriété, qui sont décrites dans Utilisation des variables de propriété. Si l'application korn shell requiert la définition d'un nom d'hôte dans la ligne de commande, vous pouvez utiliser la variable $hostnames définie par Agent Builder. Voir Utilisation de la variable $hostnames basée sur le korn shell de Agent Builder.
Ne placez pas la commande entre guillemets (””).
si l'application de base comprend plusieurs arborescences de processus indépendantes et que chaque processus est exécuté à partir de sa propre balise sous la fonction PMF (Process Monitor Facility ), vous ne pouvez indiquer aucune commande. À la place, vous devez créer un fichier texte qui contienne les commandes individuelles permettant de lancer chaque arborescence de processus, puis spécifier le chemin d'accès à ce fichier dans le champ Commande de démarrage. Voir Avant d'utiliser Agent Builder. Cette section énumère certains caractères spéciaux dont ce fichier a besoin pour fonctionner correctement.
Commande d'arrêt : ligne de commande complète qui peut être transmise à tout shell UNIX pour arrêter l'application de base. Vous pouvez saisir la commande dans le champ prévu à cet effet, ou utiliser la fonction Parcourir pour rechercher un fichier qui contienne la commande permettant d'arrêter l'application. Vous pouvez également spécifier des variables de propriété, qui sont décrites dans Utilisation des variables de propriété. Si l'application korn shell requiert la définition d'un nom d'hôte dans la ligne de commande, vous pouvez utiliser la variable $hostnames définie par Agent Builder. Voir Utilisation de la variable $hostnames basée sur le korn shell de Agent Builder.
Cette commande est facultative. Si vous n'indiquez pas de commande d'arrêt, le code généré utilise les signaux (de la méthode Stop) pour arrêter l'application, comme suit :
La méthode Stop envoie le signal SIGTERM pour arrêter l'application et laisse s'écouler 80% du délai d'attente pour que l'application se ferme.
Si le signal SIGTERM échoue, la méthode Stop envoie le signal SIGKILL pour arrêter l'application et laisse s'écouler 15% du délai d'attente pour que l'application se ferme.
Si le signal SIGKILL ne fonctionne pas, la méthode Stop ne permet pas de quitter l'application. Les 5 % restants du délai d'attente sont considérés comme temps système.
veillez à ce que la commande d'arrêt ne soit pas renvoyée avant l'arrêt complet de l'application.
Commande d'analyse : Commande qui peut être exécutée périodiquement pour vérifier l'état de l'application et renvoyer un état de sortie compris entre 0 (réussite) et 100 (échec total). Cette commande est facultative. Vous pouvez saisir le chemin d'accès complet à la commande, ou utiliser l'option Parcourir pour rechercher un fichier qui contienne les commandes permettant de sonder l'application.
En règle générale, vous indiquez un client unique de l'application de base. Si vous ne spécifiez aucune commande de sonde, le code généré se connecte et se déconnecte simplement du port utilisé par la ressource. Si la connexion et la déconnexion fonctionnent, le code généré signale que l'application fonctionne parfaitement. Vous pouvez également spécifier des variables de propriété, qui sont décrites dans Utilisation des variables de propriété. Si l'application korn shell requiert la définition d'un nom d'hôte dans la ligne de commande, vous pouvez utiliser la variable $hostnames définie par Agent Builder. Voir Utilisation de la variable $hostnames basée sur le korn shell de Agent Builder.
Ne placez pas la commande entre guillemets (””).
Délai d'attente : valeur de délai d'attente, en secondes, pour chaque commande. Vous pouvez spécifier une nouvelle valeur, ou accepter la valeur par défaut fournie par Agent Builder. La valeur par défaut est de 300 secondes pour le démarrage et l'arrêt et de 30 secondes pour la commande de la sonde.
Pour de nombreuses applications, en particulier celles qui reconnaissent le réseau, le nom d'hôte sur lequel l'application écoute et les requêtes des clients de services doivent être transmis à l'application sur la ligne de commande. Par conséquent, le nom d'hôte est généralement un paramètre que vous devez indiquer sur l'écran Configurer pour les commandes de démarrage, d'arrêt et de sonde du type de ressource cible. Le nom d'hôte d'écoute de l'application est propre au cluster. Le nom d'hôte est déterminé lorsque la ressource est exécutée sur un cluster. Il ne peut pas être déterminé lorsque Agent Builder génère votre code de type de ressource.
Pour résoudre ce problème, Agent Builder fournit la variable $hostnames, que vous pouvez spécifier sur la ligne de commande pour les commandes de démarrage, d'arrêt et de sonde.
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 port-no -l $hostnames |
Lorsqu'une ressource du type de ressource cible est exécutée sur un cluster, le nom d'hôte LogicalHostname ou SharedAddress qui est configuré pour cette ressource est remplacé par la valeur de la variable $hostnames. Le nom d'hôte est configuré pour cette ressource dans la propriété Network_resources_used de la ressource.
Si vous configurez la propriété Network_resources_used avec plusieurs noms d'hôte, la variable $hostnames contient tous les noms d'hôte, séparés par une virgule.
Vous pouvez également récupérer les valeurs des propriétés d'un type de ressource, d'une ressource et d'un groupe de ressources Sun Cluster, sélectionnées à partir de la structure RGM à l'aide de variables de propriété. Agent Builder recherche les variables de propriété dans vos chaînes de commande de démarrage, d'arrêt ou de sonde et les remplace par leurs valeurs avant que Agent Builder n'exécute la commande.
Les variables de propriété ne peuvent pas être utilisées avec des services korn shell.
Cette section répertorie les variables de propriété que vous pouvez utiliser. Les propriétés du type de ressource, de la ressource et du groupe de ressources Sun Cluster sont décrites à la section Annexe A, Propriétés standard.
RS_CHEAP_PROBE_INTERVAL
RS_MONITOR_START_TIMEOUT
RS_MONITOR_STOP_TIMEOUT
RS_NAME
RS_NUM_RESTARTS
RS_RESOURCE_DEPENDENCIES
RS_RESOURCE_DEPENDENCIES_WEAK
RS_RETRY_COUNT
RS_RETRY_INTERVAL
RS_SCALABLE
RS_START_TIMEOUT
RS_STOP_TIMEOUT
RS_THOROUGH_PROBE_INTERVAL
SCHA_STATUS
RG_GLOBAL_RESOURCES_USED
RG_IMPLICIT_NETWORK_DEPENDENCIES
RG_MAXIMUM_PRIMARIES
RG_NAME
RG_NODELIST
RG_NUM_RESTARTS
RG_PATHPREFIX
RG_PINGPONG_INTERVAL
RG_RESOURCE_LIST
Vous devez ajouter le symbole du pourcentage (%) avant un nom de propriété pour indiquer la présence d'une variable de propriété, comme dans l'exemple suivant :
/opt/network_aware/echo_server -t %RS_STOP_TIMEOUT -n %RG_NODELIST
Si l'on prend cet exemple, Agent Builder pourrait interpréter ces variables de propriété et lancer le script echo_server avec les valeurs suivantes :
/opt/network_aware/echo_server -t 300 -n phys-node-1,phys-node-2,phys-node-3
Agent Builder interprète les types de variable de propriété de la manière suivante :
Un nombre entier est remplacé par sa valeur réelle (300, par exemple).
Une valeur booléenne est remplacée par la chaîne TRUE ou FALSE.
Une chaîne est remplacée par la chaîne réelle (phys-node-1, par exemple).
Une liste de chaînes est remplacée par tous les éléments de la liste, chaque chaîne étant séparée par une virgule (phys-node-1,phys-node-2,phys-node-3, par exemple).
Une liste de nombres entiers est remplacée par tous les éléments de la liste, chaque nombre entier étant séparé par une virgule (1,2,3, par exemple).
Un type énuméré est remplacé par sa valeur, sous forme de chaîne.
Agent Builder vous permet de réutiliser un travail terminé de plusieurs façons :
Vous pouvez cloner un type de ressource existant que vous avez créé avec Agent Builder.
Vous pouvez modifier le code source généré par Agent Builder, puis recompiler le code pour créer un nouveau package.
Appliquez la procédure suivante pour cloner un type de ressource existant généré par Agent Builder.
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 pour un type de ressource existant créé avec Agent Builder. Vérifiez que ce répertoire contient le fichier rtconfig. Agent Builder charge les valeurs du type de ressources sur les écrans Créer et Configurer.
Utilisez l'option de chargement du type de ressource du menu déroulant Fichier.
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.
Apportez les changements souhaités au type de ressource existant.
Vous pouvez avoir à modifier le type de code généré pour le type de ressource. Par exemple, si vous créez une version korn shell d'un type de ressource et si vous vous apercevez ensuite que vous avez besoin d'une version C, procédez comme suit :
Chargez le type de ressource existant en version korn shell.
Paramétrez le langage de sortie sur C.
Cliquez sur Créer pour que Agent Builder crée une version C du type de ressource.
Créez le clone du type de ressources.
Pour simplifier le processus de création d'un type de ressource, Agent Builder limite la quantité d'informations que vous pouvez spécifier, ce qui limite obligatoirement l'étendue du type de ressource généré. Par conséquent, pour ajouter des fonctionnalités plus sophistiquées, vous devez modifier le code source généré ou le fichier RTR. Exemple de fonctionnalité supplémentaire : le code qui permet d'ajouter des marques de validation pour les propriétés supplémentaires ou qui permet de régler les paramètres non affichés par Agent Builder.
Les fichiers source se trouvent dans le répertoire install-directory/rt-name/src. Agent Builder intègre les commentaires dans le code source pour que vous puissiez y ajouter le code. Exemple (pour un code C) :
/* User added code -- BEGIN vvvvvvvvvvvvvvv */ /* User added code -- END ^^^^^^^^^^^^^^^ */
Ces commentaires sont identiques dans le code source korn shell, si ce n'est que la marque de commentaire (#) indique le début d'un commentaire.
Par exemple, rt-name.h indique toutes les fonctions d'utilitaire utilisées par les différents programmes. Des commentaires sont placés à la fin de cette liste pour vous permettre d'indiquer les autres fonctions que vous pouvez avoir ajoutées à votre code.
Agent Builder génère également le fichier makefile dans le répertoire install-directory/rt-name/src avec les cibles appropriées. Utilisez la commande make pour recompiler le code source. Utilisez la commande make pkg pour regénérer le package du type de ressource.
Le fichier RTR se trouve dans le répertoire install-directory/rt-name/etc. Vous pouvez le modifier à l'aide d'un éditeur de texte standard. Pour plus d'informations sur le fichier RTR, voir Paramétrage des propriétés de ressources et de types de ressources. Pour en savoir plus sur les propriétés, voir Annexe A, Propriétés standard.
La version de ligne de commande de Agent Builder suit la même procédure de base que l'interface utilisateur graphique. Toutefois, au lieu de saisir des informations dans l'interface utilisateur graphique, vous pouvez transmettre les arguments aux commandes scdscreate et scdsconfig. Pour en savoir plus, reportez-vous aux pages de manuel scdscreate(1HA) et scdsconfig(1HA).
Procédez aux étapes suivantes pour utiliser la version de ligne de commande de Agent Builder.
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.
Utilisez la commande scdsconfig pour configurer le modèle de type de ressources créé avec scdscreate.
Vous pouvez indiquer des variables de propriété, Les variables de propriété sont décrites à la section Utilisation des variables de propriété.
Remplacez les répertoires par le sous-répertoire pkg dans le répertoire de travail.
Utilisez la commande pkgadd pour installer les packages créés avec scdscreate.
Dans un environnement à zones sous Solaris 10, entrez la commande suivante en tant qu'administrateur global dans la zone globale :
# pkgadd -G -d . package-name |
Le package que vous avez spécifié est ajouté à la zone globale, à condition que le contenu du package n'affecte aucune des parties de la zone globale partagées avec une zone non globale.
Pour toute autre version du système d'exploitation Solaris ou pour Solaris 10 dans un environnement sans zones, tapez la commande suivante :
# pkgadd -d . package-name |
(Facultatif) Modifiez le code source généré.
Exécutez le script de démarrage.