70 votes

Le DNS Round-Robin est-il "suffisant" pour l'équilibrage de charge de contenu statique ?

Nous disposons d'un ensemble de contenu statique partagé que nous diffusons entre nos sites web à l'adresse suivante http://sstatic.net . Malheureusement, ce contenu n'est actuellement pas du tout équilibré en termes de charge - il est servi par un seul serveur. Si ce serveur a des problèmes, tous les sites qui en dépendent sont effectivement hors service car les ressources partagées sont des bibliothèques javascript et des images partagées essentielles.

Nous cherchons des moyens d'équilibrer la charge du contenu statique sur ce serveur, afin d'éviter la dépendance à un seul serveur.

Je me rends compte que le DNS round-robin est, au mieux, une solution de bas de gamme (certains pourraient même dire que c'est une solution de haut de gamme). ghetto ), mais je ne peux m'empêcher de me demander Le DNS round robin est-il une solution "suffisante" pour l'équilibrage de base de la charge d'un contenu statique ?

Il y a une discussion à ce sujet dans le [dns] [équilibrage de charge] et j'ai lu d'excellents articles sur le sujet.

Je suis conscient des inconvénients courants de l'équilibrage de la charge DNS par le biais de plusieurs enregistrements A round-robin :

  • il n'y a généralement pas de battements de cœur ou de détection de défaillance avec les enregistrements DNS, de sorte que si un serveur donné dans la rotation tombe en panne, son enregistrement A doit être supprimé manuellement des entrées DNS.
  • le temps de vie (TTL) doit nécessairement être fixé à un niveau très bas pour que cela fonctionne, puisque les entrées DNS sont mises en cache de manière agressive sur Internet.
  • les ordinateurs clients sont chargés de vérifier qu'il existe plusieurs enregistrements A et de choisir le bon.

Mais, le DNS round robin est-il suffisant comme solution de départ, mieux que rien, "pendant que nous recherchons et mettons en œuvre de meilleures alternatives" comme forme d'équilibrage de charge pour notre contenu statique ? Ou bien le DNS round robin ne vaut-il pas grand-chose dans le cadre de l'équilibrage de charge ? cualquier circonstances ?

3 votes

HAProxy n'est pas une option ?

7 votes

Comme je l'ai dit dans le message, il s'agit d'une question spécifique sur les points suivants este solution -- peut-on rester sur le sujet ?

4 votes

Équilibrage des charges ( fr.wikipedia.org/wiki/Load_balancing_%28computing%29 ) est très différente de la redondance ( fr.wikipedia.org/wiki/Redondance_%28ingénierie%29 ). Comme Jeff l'a indiqué dans son paragraphe d'introduction, il cherche un moyen d'éliminer un point de défaillance unique (redondance), et non un véritable équilibrage de la charge. Quelqu'un peut-il ré-étiqueter ?

1voto

hmallett Points 2375

Pour répondre succinctement à la question (le DNS round robin est-il suffisant comme solution de départ, mieux que rien, "pendant que nous recherchons et mettons en œuvre de meilleures alternatives" pour l'équilibrage de la charge de notre contenu statique ? est C'est mieux que rien, mais vous devez absolument continuer à chercher d'autres formes d'équilibrage de charge.

1voto

Lors de mes recherches sur l'équilibrage de la charge de Windows il y a plusieurs années, j'ai vu un document qui indiquait que la ferme web de Microsoft était configurée comme de multiples groupes d'équilibrage de la charge, avec un DNS round robin entre eux. Étant donné que plusieurs serveurs DNS peuvent répondre dans chaque espace de nommage et que l'équilibrage de charge de Microsoft est auto-réparateur, cela permet à la fois la redondance et l'équilibrage de charge.

Inconvénient : il faut au moins 4 serveurs (2 serveurs x 2 groupes).

Pour répondre au commentaire de Jeff sur la réponse de Schof, existe-t-il un moyen de faire du DNS round-robin entre les serveurs HAProxy ?

0voto

Warren Blanchet Points 881

Son utilisation est très marginale, suffisante pour vous permettre de vous en sortir le temps de mettre en place une véritable solution. Comme vous le dites, les TTL doivent être réglés assez bas. Cela a cependant l'avantage de retirer une machine problématique du DNS pendant qu'elle a des problèmes. Disons que vous avez SvrA, SvrB et SvrC qui distribuent votre contenu et que SvrA tombe en panne. Vous le retirez du DNS et après la courte période définie par votre TTL faible, les résolveurs trouveront un autre serveur (SvrB ou SvrC) qui est opérationnel. Vous remettez SvrA en ligne et le remettez dans le DNS. Un court temps d'arrêt pour certains, aucun pour d'autres. Ce n'est pas génial, mais c'est faisable. Plus vous mettez de serveurs statiques dans le mélange, moins vous aurez de chances d'avoir des groupes majoritaires d'utilisateurs hors service.

En raison de la topologie d'Internet, vous n'obtiendrez certainement pas la distribution équilibrée qu'offre une véritable solution d'équilibrage de la charge. Je continuerais à surveiller la charge sur tous les serveurs concernés.

0 votes

Le contenu est 100% statique, la charge est donc négligeable, même sur un seul serveur. C'est surtout de la bande passante.

1 votes

Tous sortis du même tuyau ?

0 votes

Les TTL ne sont la plupart du temps jamais utilisés par les DNS que vous rencontrerez en cours de route. Chaque DNS fait ce que son administrateur veut. Et la plupart d'entre eux n'autoriseront jamais un TTL de 5 minutes, ce qui signifie qu'il faudra recharger les données de la source DNS toutes les 5 minutes... la meilleure façon de mettre en panne un serveur DNS sans raison valable. Et vous vous trompez sur "l'utilisation marginale", Google l'utilise pour tous ses serveurs de recherche... et je doute vraiment qu'ils soient les seuls à le faire. RR-DNS est génial, quand on sait ce qu'il fait.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X