WebSphere Load Balancer pour IPv4 et IPv6
Systèmes d'exploitation : AIX, HP-UX, Linux, Solaris, Windows

             Personnalisation de la table des matières et des résultats de la recherche

Création d'un conseiller personnalisé

Un conseiller personnalisé est un petit programme Java faisant office de fichier classe et que le code de base de Load Balancer appelle pour déterminer la charge d'un serveur. Le code de base fournit tous les services administratifs nécessaires (le démarrage et l'arrêt d'une instance du conseiller personnalisé, la génération d'états et de rapports, l'enregistrement des informations de l'historique dans un fichier journal et le renvoi des résultats du conseiller au composant gestionnaire, par exemple).

A propos de cette tâche

Les conseillers personnalisés sont appelés suite à la recherche de conseillers natifs ou standard. Si Load Balancer ne trouve pas de conseiller particulier dans la liste des conseillers standard, il consulte la liste des conseillers personnalisés. Si le code de base de Load Balancer appelle un conseiller personnalisé, la procédure suivante se déroule :
  1. Le code de base de Load Balancer ouvre une connexion avec le serveur.
  2. Si la connexion s'ouvre, le code de base appelle la fonction GetLoad du conseiller spécifié.
  3. La fonction GetLoad suit la procédure d'évaluation de l'état du serveur définie par l'utilisateur, y compris l'attente d'une réponse de la part du serveur. La fonction met fin à la procédure après avoir obtenu la réponse.
  4. Le code de base de Load Manager ferme la connexion au serveur et envoie au gestionnaire les informations relatives à la charge. Selon que le conseiller personnalisé fonctionne en mode normal ou en mode remplacement, le code de base procède parfois à des calculs supplémentaires à l'issue de la fonction GetLoad.
Les conseillers personnalisés peuvent être conçus pour interagir avec Load Balancer en mode norme ou en mode remplacement. Le choix du mode de fonctionnement est indiqué dans le fichier du conseiller personnalisé en tant que paramètre dans la méthode du constructeur (chaque conseiller fonctionne uniquement dans ces modes, selon sa conception).
  • Mode normal : le conseiller personnalisé échange des données avec le serveur et le code du conseiller de base évalue la durée de l'échange et calcule la valeur de la charge. Le code de base renvoie cette valeur au gestionnaire. Le conseiller personnalisé renvoie la valeur zéro pour indiquer la réussite ou une valeur négative pour indiquer une erreur.

    Pour spécifier le mode normal, attribuez la valeur false à l'indicateur replace du constructeur.

  • Mode replace : le code de base n'effectue aucune mesure de temps. Le code du conseiller personnalisé effectue toutes les opérations spécifiées, puis renvoie une valeur de charge. Le code de base accepte la valeur, puis la renvoie au gestionnaire sans la modifier. Pour obtenir de meilleurs résultats, situez votre valeur de charge entre 10 et 1000, 10 représentant un serveur rapide et 1000 un serveur plus lent.

    Pour spécifier le mode replace, attribuez la valeur true à l'indicateur replace du constructeur.

Comme tous les conseillers, un conseiller personnalisé étend la fonctionnalité de la classe de base du conseiller, appelée ADV_Base. La base du conseiller effectue la plupart des fonctions du conseiller, telles que la communication des charges au gestionnaire afin que ces dernières soient utilisées dans l'algorithme de pondération du gestionnaire. La base du conseiller effectue également les opérations de connexion et de fermeture de la connexion et fournit des méthodes d'envoi et de réception qui seront utilisées par le conseiller. Le conseiller n'est utilisé que pour l'envoi et la réception des données sur le port spécifié du serveur interrogé. Les méthodes TCP fournies dans la base du conseiller sont programmées pour calculer la charge. Un indicateur du constructeur de la base du conseiller remplace la charge existante par la nouvelle charge renvoyée du conseiller, s'il le souhaite.
Remarque : Selon la valeur définie dans le constructeur, la base du conseiller fournit la charge à l'algorithme de pondération à un intervalle donné. Si le conseiller n'a pas terminé ses opérations et ne peut pas renvoyer de charge valide, la base du conseiller utilise la charge précédente.

Procédure

  1. Attribuer un nom à votre conseiller. Les noms de fichier du conseiller personnalisé se présentent sous la forme ADV_nom.java, où nom est le nom de votre conseiller.
    Eviter les incidents :
    • Vous devez utiliser ADV_ prefix pour le nom du conseiller.
    • Vous devez attribuer un nom au conseiller personnalisé en utilisant des caractères alphabétiques en minuscule afin d'éliminer le respect de la casse lorsqu'un opérateur entre des commandes sur une ligne de commande.
    • La classe de conseiller personnalisé doit se trouver dans le sous-répertoire racine_install/lib/CustomAdvisors.
    • Conformément aux conventions Java, le nom de la classe définie dans le fichier doit correspondre à celui du fichier.
    gotcha
  2. Créez votre conseiller personnalisé. Voir Méthodes et appels de fonction du conseiller personnalisé pour obtenir une liste des méthodes et appels de fonction à utiliser dans votre conseiller. N'oubliez pas que les conseillers personnalisés ont besoin de toutes les routines nécessaires. Les conseillers doivent comporter les méthodes de classe de base suivantes :
    • Une routine de constructeur. Le constructeur appelle le constructeur de classe de base.
    • Une méthode ADV_AdvisorInitialize. Cette méthode offre un moyen de réaliser des procédures supplémentaires à l'issue de l'initialisation de la classe de base.
    • Une routine getLoad. La classe de base du conseiller ouvre la connexion. La fonction getLoad doit simplement émettre les requêtes d'envoi et de réception appropriées pour mettre un terme au cycle de conseil.

  3. Compilez le conseiller.
    • Vous devez écrire les conseillers personnalisés en langage Java et les compiler à l'aide d'un compilateur Java au même niveau que le code Load Balancer. Pour vérifier la version de Java sur votre système, exécutez la commande suivante dans le répertoire racine_install/java/bin :
      java -fullversion
      Si le répertoire de travail ne se trouve pas dans le chemin d'accès, spécifiez que Java doit être exécuté à partir du répertoire de travail afin de vous assurer d'obtenir les bonnes informations sur la version. Dans ce cas, exécutez la commande suivante à partir du répertoire racine_install/java/bin :
      ./java -fullversion
    • Les fichiers suivants sont référencés pendant la compilation :
      • Le fichier du conseiller personnalisé.
      • Le fichier de classes de base ibmnd.jar, qui se trouve dans le répertoire racine_install/servers/lib.
    • La variable d'environnement de votre chemin d'accès aux classes doit désigner à la fois le fichier du conseiller personnalisé et le fichier de classes de base lors de la compilation. Une commande de compilation peut se présenter au format suivant, si votre conseiller est le répertoire de travail :
      chemin_install/java/bin/javac -classpath racine_install/servers/lib/ibmlb.jar ADV_nom.java
    • Le résultat de la compilation est un fichier classe (ADV_nom.class, par exemple). Avant de lancer le conseiller, copiez le fichier classe dans le répertoire racine_install/servers/lib/CustomAdvisors/.
    Remarque : Vous pouvez compiler et exécuter des conseillers personnalisés sur deux systèmes d'exploitation distincts. Par exemple, vous pouvez compiler le conseiller sur un système Windows, copier le fichier classe résultant au format binaire sur un poste Linux, puis exécuter le conseiller personnalisé sur ce poste. Sous AIX, HP-UX, Linux et Solaris, la syntaxe est similaire.
  4. Exécutez le conseiller personnalisé. Les conseillers personnalisés sont appelés suite à la recherche de conseillers natifs ou standard. Si Load Balancer ne trouve pas de conseiller particulier dans la liste des conseillers standard, il consulte la liste des conseillers personnalisés.
    1. Si ce n'est pas déjà fait, copiez le fichier classe du conseiller dans le sous-répertoire CustomAdvisors de la machine Load Balancer. Par exemple, si le conseiller personnalisé s'appelle myping, le chemin d'accès au fichier est racine_install/servers/lib/CustomAdvisors/ADV_myping.class.
    2. Configurez Load Balancer, démarrez sa fonction gestionnaire, puis exécutez la commande de démarrage du conseiller personnalisé. Le conseiller personnalisé est spécifié par son nom, à l'exclusion du préfixe ADV_ prefix et de l'extension de fichier :
      dscontrol advisor start
      nom.ext port
      Le port spécifié dans la commande est celui sur lequel le conseiller va ouvrir une connexion au serveur cible.



Sous-rubriques
Méthodes et appels de fonction du conseiller personnalisé
Conseils spécifiques au service avec l'option de demande/réponse du conseiller
Conseiller Self dans une configuration WAN à deux niveaux
Référence associée
Rubrique Tâche    

Conditions d'utilisation | Commentaires

Dernière mise à jour : 31 juillet 2008 3:18:06 PM EDT
http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.edge.doc/lb/info/ae/tprf_advcust.html