2017-07-20 12 views
0

Je n'ai aucune expérience antérieure avec Wildfly ou JBOSS avant d'implémenter ce scénario. J'ai Wildfly 10 fonctionnant en mode Domaine. 2 hôtes exécutant chacun 1 serveur Wildfly connecté à une source de données unique. Server1 -Master- Contrôleur de domaine Server2 - Esclave La source de données est configurée sous le profil "DEFAULT" Le déploiement est sous le profil "FULL".Wildfly 10 Ajouter Load Balancer au domaine existant

J'ai maintenant besoin d'ajouter un équilibrage de charge dans l'équation, mais je veux seulement utiliser Wildfly. J'ai lu l'article suivant pour configurer un balancier Static Load comme un proxy inverse https://docs.jboss.org/author/display/WFLY10/Using+Wildfly+as+a+Load+Balancer

J'ai un 3ème serveur que je veux configurer en tant que Load Balancer. Est-ce que je configure cela comme un "SLAVE" dans le domaine mais l'ajoute au profil LOAD-BALANCER sur le contrôleur de domaine? Quand je fais cela, il ne peut pas trouver et se connecter au Master (Server1)!

S'il vous plaît quelqu'un peut-il me dire la configuration de base dont j'ai besoin sur ce serveur pour que je puisse suivre les étapes de l'article ci-dessus et le configurer comme un proxy inverse/équilibreur de charge statique?

Merci beaucoup

Répondre

1

Si vous souhaitez utiliser wildfly comme équilibreur de charge avec la configuration d'équilibrage de charge de modcluster/statique, alors vous ne pas besoin d'inclure le serveur (qui agira comme équilibreur de charge) en cluster/domaine. Vous pouvez appeler séparément le serveur d'équilibrage de charge. La distribution de Wildfly10 a déjà un fichier d'exemple - standalone-load-balancer.xml (à l'intérieur - \ docs \ examples \ configs), qui peut être utilisé directement.

La configuration minimale de ce fichier est requise pour l'utilisation de wildfly 10.1 en tant qu'équilibreur de charge. Une fois que le serveur utilise ce fichier, il découvre automatiquement les nœuds de travail qui participent à la mise en cluster (à condition que l'adresse de multidiffusion et les ports fonctionnent et soient accessibles sur le réseau). Notez également que tous les nœuds de travail doivent avoir un nom de nœud différent. Si certains nœuds se trouvent sur la même machine et s'ils ne sont pas appelés avec des noms de nœuds différents, ils peuvent être rejetés par le serveur d'équilibrage de charge.

est inférieure à la commande pour appeler le serveur wildfly avec le nom de noeud spécifique ---

standalone.bat -Djboss.node.name=<specify the node name here> 

La configuration de base sera comme ci-dessous -

[1] Invoquer les deux noeuds séparés (par exemple wildfly) avec la configuration - standalone-ha.xml/standalone-full-ha.xml avec une application web (par exemple cluster-demo.war). Veuillez noter que le descripteur de déploiement de l'application Web doit contenir une balise, sinon le cluster ne sera pas configuré après l'appel de deux nœuds de travail.

[2] Après le succès de la 1ère étape, l'utilisateur peut voir message - nouvelle vue de cluster reçue dans le journal de la console des nœuds de travail.

[3] charger la configuration de l'équilibreur -

[3.1] équilibrage dynamique à la charge (en utilisant la configuration de modcluser) --------

invoquer le troisième exemple de configuration avec wildfly - standalone- équilibreur de charge.xml

Si l'équilibreur de charge détecte tous les nœuds de travail, l'utilisateur verra le message de journal - nœud d'enregistrement - nomNoeud dans le journal de la console du serveur d'équilibrage de charge.

[3.2] CHARGE STATIQUE CONFIGURATION Balancer -----

cli ---

/sous-système = undertow/configuration = gestionnaire/reverse-proxy = my-handler1: ajouter()

/socket-binding-group = standard-sockets/remote-destination-outbound-socket-binding = hôte-distant111 /: add (hôte = hôte local, port = 9080) /socket-binding-group = prises standard/remote-destination-outbound-socket-binding = hôte-distant222 /: add (hôte = hôte local, port = 10080)

/subsystem = undertow/configuration = gestionnaire/reverse-proxy = mon-gestionnaire1/hôte = hôte11: ajout (outbound-socket-binding = hôte-distant111, schéma = http, instance-id = cluster-demoroute, chemin =/cluster-demo) /sous-système = undertow/configuration = gestionnaire/reverse-proxy = mon-gestionnaire1/hôte = hôte22: ajout (liaison-socket-outbound = hôte-distant222, schéma = http, instance-id = cluster-demoroute, path =/cluster demo)

/sous-système = undertow/server = default-server/host = default-hôte/location =/cluster demo: ajouter (gestionnaire = my-handler1)

configuration replacement- [A] Ajouter une balise reverse-proxy à l'intérieur du sous-système-u ndertow/gestionnaires tag--

<reverse-proxy name="my-handler1"> 
        <host name="host11" outbound-socket-binding="remote-host111" path="/cluster-demo" instance-id="cluster-demoroute"/> 
        <host name="host22" outbound-socket-binding="remote-host222" path="/cluster-demo" instance-id="cluster-demoroute"/> 
       </reverse-proxy> 

[B] Ajouter balise emplacement à l'intérieur sous-système - undertow/server = default-server/default-host

<location name="/cluster-demo" handler="my-handler1"/> 

[C] Ajouter ci-dessous à l'intérieur-prise Attaches- étiquette de groupe

<outbound-socket-binding name="remote-host111"> 
      <remote-destination host="localhost" port="9080"/> 
     </outbound-socket-binding> 
     <outbound-socket-binding name="remote-host222"> 
      <remote-destination host="localhost" port="10080"/> 
     </outbound-socket-binding>