Voici un exemple de fichier de configuration de Load Balancer appelé configuration.cmd.sample (systèmes d'exploitation AIX, Linux et Solaris).
#!/bin/bash # # configuration.sample - Exemple de fichier de configuration pour le composant Dispatcher # # # Ce script doit être lancé par le superutilisateur. # # iam=`whoami` # if [ "$iam" != "root" ]if [ "$iam" != "root" ] # then # echo "Vous devez vous connecter en tant que superutilisateur pour exécuter ce script" # exit 2 # fi # # Démarrez d'abord le serveur # # dsserver start # sleep 5 # # Démarrez ensuite l'exécuteur # # dscontrol executor start # # Le répartiteur peut être arrêté à tout moment à l'aide des commandes # "dscontrol executor stop" et "dsserver stop" afin d'arrêter respectivement # l'exécuteur et le serveur avant d'arrêter le logiciel # Dispatcher. # # L'étape suivante de la configuration du répartiteur consiste à définir # l'adresse NFA (adresse de non-réacheminement) et les adresses de cluster. # # L'adresse NFA permet d'accéder à distance au répartiteur # afin d'effectuer des opérations d'administration ou de configuration. Cette # adresse est obligatoire étant donné que le répartiteur va acheminer des paquets # vers les adresses de cluster. # # L'adresse CLUSTER est le nom d'hôte (ou l'adresse IP) auquel # les clients éloignés vont se connecter. # # Vous pouvez indifféremment utiliser les noms d'hôte et # adresses IP. # # NFA=hostname.domain.name # CLUSTER=www.yourcompany.com # echo "Chargement de l'adresse de non-réacheminement" # dscontrol executor set nfa $NFA # # L'étape suivante dans la configuration du répartiteur consiste à créer # un cluster. Le répartiteur va acheminer les requêtes envoyées à # l'adresse de cluster vers les serveurs correspondants # définis pour ce cluster. Vous pouvez configurer plusieurs adresses de cluster V à l'aide du répartiteur. # Utilisez une configuration similaire pour CLUSTER2, CLUSTER3, etc. # # echo "Chargement de la première adresse CLUSTER" # dscontrol cluster add $CLUSTER # L'étape suivante consiste à définir les ports utilisés par ce cluster. Toute # requête reçue par le répartiteur sur un port défini # est réacheminée vers le port correspondant # de l'un des serveurs. # # echo "Création de ports pour CLUSTER@ $CLUSTER" # dscontrol port add $CLUSTER@20+21+80 # # La dernière étape consiste à associer chaque serveur # aux ports de ce cluster. # Vous pouvez également utiliser # le nom d'hôte ou l'adresse IP des serveurs. # # SERVER1=server1name.domain.name # SERVER2=server2name.domain.name # SERVER3=server3name.domain.name # echo "Ajout de serveurs" # dscontrol server add $CLUSTER@20+21+80@ # $SERVER1+$SERVER2+$SERVER3 # # Nous allons maintenant lancer les composants d'équilibrage de charge # du répartiteur. Le principal composant d'équilibrage de charge est # le gestionnaire, les autres étant # les conseillers. Si le gestionnaire et les conseillers ne # fonctionnent pas, le répartiteur envoie les requêtes au format # de permutation circulaire (round-robin). Une fois le gestionnaire lancé, les décisions de pondération # reposant sur le nombre de connexions nouvelles et actives sont utilisées, # et les requêtes entrantes sont envoyées au meilleur # serveur. Les conseillers donnent au gestionnaire des informations supplémentaires # sur la capacité du serveur à répondre aux requêtes et à détecter si le serveur # est actif ou non. Si un conseiller détecte qu'un serveur n'est pas actif, # cela est consigné (à condition que les proportions du gestionnaire soient définies # pour inclure les entrées de conseiller) # et aucune autre requête n'est acheminée vers le serveur. # La dernière étape de configuration des composants d'équilibrage de charge # consiste à définir les proportions du gestionnaire. Le # gestionnaire met à jour la pondération de chaque serveur en respectant # quatre règles : # 1. Le nombre de connexions actives sur chaque serveur # 2. Le nombre de nouvelles connexions sur chaque serveur. # 3. Les informations fournies par les conseillers. # 4. Les informations fournies par le conseiller au niveau système. # La somme de ces proportions doit être égale à 100. Par exemple, # si vous définissez les proportions du cluster à l'aide de # dscontrol manager sur 48 48 0 0, # 48 % des connexions proviendront des connexions actives, 48 % des connexions nouvelles, # les conseillers et les entrées # du système ne seront pas prises en compte. # REMARQUE : par défaut, les proportions du gestionnaire sont définies à 50 50 0 0. # echo "Démarrage du gestionnaire (manager)..." # dscontrol manager start # echo "Démarrage du conseiller (advisor) FTP sur le port 21..." # dscontrol advisor start ftp 21 # echo "Démarrage du conseiller HTTP sur le 80..." # dscontrol advisor start http 80 # echo "Démarrage du conseiller Telnet sur le port 23..." # dscontrol advisor start telnet 23 # echo "Démarrage du conseiller SMTP sur le port 25..." # dscontrol advisor start smtp 25 # echo "Démarrage du conseiller POP3 sur le 110..." # dscontrol advisor start pop3 110 # echo "Démarrage du conseiller NNTP sur le port 119..." # dscontrol advisor start nntp 119 # echo "Démarrage du conseiller SSL sur le 443..." # dscontrol advisor start ssl 443 # # echo "Définition des proportions du gestionnaire..." # dscontrol manager proportions 58 40 2 0 # # La dernière étape de configuration du répartiteur consiste à # attribuer un alias à la carte NIC (Network Interface Card). # # REMARQUE : n'utilisez PAS cette commande dans un environnement # à haute disponibilité. Les scripts go* configureront les cartes NIC et # le bouclage, le cas échéant. # dscontrol executor configure $CLUSTER # Si votre adresse de cluster se trouve sur une autre carte NIC ou sur un sous-réseau # différent de ceux de l'adresse NFA,utilisez le format suivant pour la commande de configuration de cluster. # dscontrol executor configure $CLUSTER tr0 0xfffff800 # où tr0 est votre carte NIC (tr1 pour la deuxième carte en anneau à jeton, en0 # pour la première carte Ethernet) et 0xfffff800 est un masque de sous-réseau # valide pour votre site. # # # Les valeurs par défaut ont été attribuées aux commandes suivantes. # Utilisez ces commandes pour modifier les valeurs par défaut : # dscontrol manager loglevel 1 # dscontrol manager logsize 1048576 # dscontrol manager sensitivity 5 # dscontrol manager interval 2 # dscontrol manager refresh 2 # # dscontrol advisor interval ftp 21 5 # dscontrol advisor loglevel ftp 21 1 # dscontrol advisor logsize ftp 21 1048576 # dscontrol advisor timeout ftp 21 unlimited # dscontrol advisor interval telnet 23 5 # dscontrol advisor loglevel telnet 23 1 # dscontrol advisor logsize telnet 23 1048576 # dscontrol advisor timeout telnet 23 unlimited # dscontrol advisor interval smtp 25 5 # dscontrol advisor loglevel smtp 25 1 # dscontrol advisor logsize smtp 25 1048576 # dscontrol advisor timeout smtp 25 unlimited # dscontrol advisor interval http 80 5 # dscontrol advisor loglevel http 80 1 # dscontrol advisor logsize http 80 1048576 # dscontrol advisor timeout http 80 unlimited # dscontrol advisor interval pop3 110 5 # dscontrol advisor loglevel pop3 110 1 # dscontrol advisor logsize pop3 110 1048576 # dscontrol advisor timeout pop3 110 unlimited # dscontrol advisor interval nntp 119 5 # dscontrol advisor loglevel nntp 119 1 # dscontrol advisor logsize nntp 119 1048576 # dscontrol advisor timeout nntp 119 unlimited # dscontrol advisor interval ssl 443 5 # dscontrol advisor loglevel ssl 443 1 # dscontrol advisor logsize ssl 443 1048576 # dscontrol advisor timeout ssl 443 unlimited #