Nous sommes confrontés à un comportement inattendu de l'équilibrage de charge round-robin sur Apache lorsque l'un des serveurs Tomcat tombe en panne.
Notre configuration : nous avons 2 serveurs web Apache sur le front-end utilisant le module mod_jk pour l'équilibrage de charge avec une distribution de charge round-robin. Nous avons activé la permanence de la session. La charge est répartie entre 4 serveurs Tomcat sur lesquels les applications sont exécutées.
Parfois, en cas de forte charge, s'il y a une lenteur dans notre niveau de base de données, l'un des serveurs Tomcat se met en état d'arrêt et doit être redémarré. Au moment où nous faisons rebondir le serveur Tomcat, nous constatons un pic de demandes dans l'un des autres serveurs Tomcat, qui se met également en état de blocage et doit être redémarré.
Finalement, tous les serveurs Tomcat se bloquent de la même manière.
Pourquoi Apache transfère-t-il toute la charge sur un seul serveur au lieu de la répartir ?
Nous essayons maintenant le worker.balancer.method=B
pour voir si cela aide à résoudre notre problème.
Dans les images ci-dessous, nous voyons que les fils de service augmentent,
- sur le serveur 1 lorsque le serveur 4 tombe en panne vers 11 h 50.
- dans le serveur 2 lorsque le serveur 1 tombe en panne à environ 11h55.
0 votes
Installer un équilibreur de charge comme varnish ou f5 big-ip ?
0 votes
J'ai oublié de mentionner que nous avons un F5 avant les apaches, mais voulez-vous dire, utiliser le F5 au lieu des apaches ? C'est une chose, mais je voulais aussi savoir si c'était le comportement attendu dans l'équilibrage de charge round-robin.
0 votes
Comme vous n'avez que 4 tomcats, je mettrais en route 2 apaches supplémentaires et je configurerais chaque apache pour qu'il n'accède qu'à un seul tomcat : Ainsi, tout le loadblancing serait fait par f5 big ip.
0 votes
J'aimerais savoir s'il existe des informations concrètes indiquant que F5 peut mieux gérer ce problème. Comme il s'agit de notre environnement de production, il y a peu de place pour un diagnostic basé sur des essais.