Serveur DNS avancé

18 réponses
AuteurMessage

Rano |
Modérateur

Photo de Rano

Inscrit le : 13/04/2005

# Le 09/06/2010 à 11:11

Salut,

Pour un service, je gère des milliers de sous domaines. J'ai plusieurs serveurs frontaux et pour l'instant, j'ai simplement mis dans les dns les IPS des différents serveurs, donc ça pointe sur l'un ou les autres.

Ce que je souhaiterai c'est pouvoir faire quelque chose comme ça :
- par exemple ssdom.dom.tld
- le serveur DNS récupère ssdom, calcule par exemple le MD5, puis en fonction du MD5 pointe vers un serveur frontal en particulier.

Et j'ai pas envie d'indiquer "à la main" (ou par un script) les milliers de sous domaines. Il existe des serveurs DNS qui permettent de répondre après avoir exécuté un petit script comme dans mon exemple ?

Chambres d'hote tavelOuvrir dans une nouvelle fenetre
Séjours en provenceOuvrir dans une nouvelle fenetre
Forum mariageOuvrir dans une nouvelle fenetre

MathieuC | Mathieu
Modérateur

Photo de MathieuC

Inscrit le : 15/07/2005

# Le 09/06/2010 à 11:48

Pourquoi ne pas partager le trafic globalement sur tes frontaux plutôt que d'essayer d'assigner certains sous-domaines sur certains frontaux ?

En cas de panne d'un frontal, tu vas "perdre" x% des tes sous-domaines, alors que si tous les frontaux servent tous les sous-domaines, tu sort le serveur en panne du pool et tu perds rien.

Sinon, j'ai jamais entendu parler de serveur DNS qui sache faire du scripting avant de répondre

acti | Stéphane
Modérateur

Photo de acti

Inscrit le : 13/11/2005

# Le 09/06/2010 à 11:54

Rano a dit :
Salut,

Pour un service, je gère des milliers de sous domaines. J'ai plusieurs serveurs frontaux et pour l'instant, j'ai simplement mis dans les dns les IPS des différents serveurs, donc ça pointe sur l'un ou les autres.

Ce que je souhaiterai c'est pouvoir faire quelque chose comme ça :
- par exemple ssdom.dom.tld
- le serveur DNS récupère ssdom, calcule par exemple le MD5, puis en fonction du MD5 pointe vers un serveur frontal en particulier.

Et j'ai pas envie d'indiquer "à la main" (ou par un script) les milliers de sous domaines. Il existe des serveurs DNS qui permettent de répondre après avoir exécuté un petit script comme dans mon exemple ?


Tu cherches sûrement compliqué alors qu'il peut y avoir plus simple ; il faudrait détailler plus amplement ton problème... A quoi servent ces sous-domaines ? Pourquoi un frontal en particulier ?

Stéphane

Rano | Jean
Modérateur

Photo de Rano

Inscrit le : 13/04/2005

# Le 09/06/2010 à 12:07

J'ai X frontaux, et un serveur de cache Memcache avec un trafic qui commence à être monstrueux entre les frontaux et le serveur Memcache (qui débite pret de 70Mbs juste de donnée Memcache). Donc je me suis dit : "Ok, on a qu'à mettre memcache sur les serveurs frontaux pour répartir. Et dans mon code, je met une règle MD5 en fonction du sous domaine pour que ça pointe bien toujours vers le meme serveur memcache histoire de pas perdre de donnée". Et puis tant qu'à faire, autant que ça pointe vers le serveur memcache "local" pour économiser en ressources et en trafic. D'où l'assignation d'un frontal en particulier à chaque ssdom...

Chambres d'hote tavelOuvrir dans une nouvelle fenetre
Séjours en provenceOuvrir dans une nouvelle fenetre
Forum mariageOuvrir dans une nouvelle fenetre

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 09/06/2010 à 12:11

Sinon NginX gère ça, mais au niveau HTTP. Si ça correspond à tes besoins...

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

Rano | Jean
Modérateur

Photo de Rano

Inscrit le : 13/04/2005

# Le 09/06/2010 à 12:19

Ouais, mais sans VRACK chez ovh, on est obligé de faire ça :
Client arrive sur A -> A renvoie à B -> B retourne à A -> A répond au client
Non ?

Si on veut faire :
Client arrive sur A -> A renvoie à B -> B retourne au client
il faut un VRACK non ?

Parce que dans le premier cas, je me fais exploser la limite de BP sur le serveur A

Chambres d'hote tavelOuvrir dans une nouvelle fenetre
Séjours en provenceOuvrir dans une nouvelle fenetre
Forum mariageOuvrir dans une nouvelle fenetre

MathieuC | Mathieu
Modérateur

Photo de MathieuC

Inscrit le : 15/07/2005

# Le 09/06/2010 à 13:37

Et pourquoi pas un memcache local sur chaque machine qui fait du cache du memcache central actuel ?

99% du temps tu lira juste sur le memcache local.
Si une mise a jour des donnees est necessaires, tu mets a jour le central + le local depuis Mysql, et les frontaux suivants verront que le central est a jour et mettront leur local a jour depuis ce central sans charger mysql.

Non ?

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 09/06/2010 à 13:41

dans ce cas tu utilises LVS (Linux Virtual Server) en mode DirectRouting, mais tu retrouves avec la solution de Mathieu : un load balancer "classique".

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

Rano | Jean
Modérateur

Photo de Rano

Inscrit le : 13/04/2005

# Le 09/06/2010 à 14:09

Mais justement, je peux pas faire du DirectRouting, c'est bloqué par le réseau OVH il me semble (par mes tests et déjà lu sur la ML). Ce serait effectivement le plus simple.

Il faut que je vois pour le cache local en plus du distant, mais comme c'est jamais infaillible (genre connexion qui échoue, meme 1 cas sur 100k), ça risque de foutre la pagaille.

Bon, l'idée du DNS "intelligent", c'était au cas ou ça existait, mais s'il y a pas, je trouverai autrement

Merci pour les suggestions

Chambres d'hote tavelOuvrir dans une nouvelle fenetre
Séjours en provenceOuvrir dans une nouvelle fenetre
Forum mariageOuvrir dans une nouvelle fenetre

MathieuC | Mathieu
Modérateur

Photo de MathieuC

Inscrit le : 15/07/2005

# Le 09/06/2010 à 14:32

Moi non plus je n'ai jamais reussi a faire du LVS en mode directRouting chez OVH, leurs switchs doivent bloquer des trucs


Il faut que je vois pour le cache local en plus du distant, mais comme c'est jamais infaillible (genre connexion qui échoue, meme 1 cas sur 100k), ça risque de foutre la pagaille.

Bah justement, Memcache permet d'eviter ce genre de probleme, cas d'utilisation :

Tu as une donnée A sur Mysql que tu as besoin de lire sur chacune de tes pages, l'algo de ta page est le suivant :
1- Lire A sur Memcache local
2- Si A n'est pas disponible
3--- Lire A sur Memcache central
4--- Si A n'est pas disponible
5----- Lire A sur Mysql
6----- Si on a bien reussi a recuperer A
7------- Stocker A sur memcache central
8------- Stocker A sur memcache local


Les cas ou une connection peut planter :
En 1: Si ca plante, ca fait comme si A etait pas dispo
En 3: Idem
En 5: Si ca plante, tu met pas a jour tes Memcache, et ta page sera plantée parce qu'elle aura pas reussi a récuperer A, mais la prochaine fois que la page sera chargée, ca devrait mieux se passer


Et apres, quand tu mets a jour A sur ton serveur Mysql (donnée de référence), tu as juste à virer A du memcache central + de tous les memcache locaux. Sachant que la mise a jour doit pas arriver trop souvent, dans ce process la tu peut te permettre de re-essayer de supprimer A des memcaches si la connection n'a pas fonctionne.

Donc une connection qui echoue (meme 0.00001%) n'impactera QUE la page ou la connection echoue et pas toute l'archi.

Rano | Jean
Modérateur

Photo de Rano

Inscrit le : 13/04/2005

# Le 09/06/2010 à 14:43

Oui voilà, le point faible c'est la mise à jour du cache, mais comme tu dis, on peut réessayer plusieurs fois si ça échoue...

Chambres d'hote tavelOuvrir dans une nouvelle fenetre
Séjours en provenceOuvrir dans une nouvelle fenetre
Forum mariageOuvrir dans une nouvelle fenetre

Liliandev | Lilian
Membre

Photo de Liliandev

Inscrit le : 06/03/2009

# Le 09/06/2010 à 15:39

Sans avoir tout lu ... je propose PowerDNS avec un backend en python, php, ruby ou autre ...

PowerDNS accepte les scripts en execution.

Lilian | High-TechOuvrir dans une nouvelle fenetre - Communauté WebmasterOuvrir dans une nouvelle fenetre - Communauté InformatiqueOuvrir dans une nouvelle fenetre - Comparateur de prixOuvrir dans une nouvelle fenetre

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 09/06/2010 à 15:44

Sinon tu prends l'option VRACK, ça t'ouvre les portes de tous les softs de failover / balancing, et tu te prendras plus la tête coté soft. Enfin pour ça faudrait aussi qu'ils arrêtent de faire des travaux dessus, c'est chiant d'être beta testeur sur ce genre de service.

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

Liliandev | Lilian
Membre

Photo de Liliandev

Inscrit le : 06/03/2009

# Le 09/06/2010 à 15:47

@Rano : le direct routing ne fonctionne pas mais le tunneling fonctionne très bien ... Le Direct Routing ne fonctionne pas car OVH a restreint la partie ARP par contre ils autorisent n'importe quelle IP de leur réseau à répondre même si elle n'appartient pas à ce serveur en question.

LVS-TUN à la place de LVS-DR

Déjà testé et ça ne fonctionne pas : il est pas possible par exemple de prendre un serveur Dedibox et un serveur OVH et de vouloir faire du LVS-TUN avec les 2 : l'IP Dedibox n'étant pas sur le réseau OVH, les routeurs vont dropper les paquets par contre : un kimsufi et une box OVH, ou 2 box OVH ça fonctionne très bien.

Lilian | High-TechOuvrir dans une nouvelle fenetre - Communauté WebmasterOuvrir dans une nouvelle fenetre - Communauté InformatiqueOuvrir dans une nouvelle fenetre - Comparateur de prixOuvrir dans une nouvelle fenetre

MathieuC | Mathieu
Modérateur

Photo de MathieuC

Inscrit le : 15/07/2005

# Le 09/06/2010 à 15:51

@Lilian: Oui mais en LVS-TUN tu as tout le trafic qui passe par le load balancer, une horreur !

@bool: oui, c'est vraiment le cote galere d'OVH, moi ca m'insupporte

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 09/06/2010 à 16:22

non c'est en LVS-NAT que le trafic passe par le load balancer. En DR et en TUN y a que le trafic entrant qui y passe.
Par contre le LVS-TUN marchait effectivement chez OVH, mais a été bloqué début 2009 il me semble. Tu as fait tes tests quand Lilian ?

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

krucial | Jean Christophe
Administrateur

Photo de krucial

Inscrit le : 09/03/2005

# Le 09/06/2010 à 17:30

LVS-TUN marchait très bien chez OVH oui.

JC - Mes sitesOuvrir dans une nouvelle fenetre | Affiliation devis travauxOuvrir dans une nouvelle fenetre | Cotes voitures anciennesOuvrir dans une nouvelle fenetre

Liliandev | Lilian
Membre

Photo de Liliandev

Inscrit le : 06/03/2009

# Le 09/06/2010 à 23:26

Mes tests remontent, de mémoire de la fin d'année 2009 et ça fonctionnait encore ... ça reste à confirmer.

Rappelons juste que l'ARP n'est pas routable : c'est pour cela que l'on ne peut pas se servir du LVS-DR, le seul moyen est de router via tunnel. Le load balancer se comporte pareil qu'en LVS-DR sauf que c'est la méthode d'envoi des paquets du load balancer vers le node qui change.

En gros : 1 connexion entrante sur le load balancer ne ressortira pas sur le load balancer.

Lilian | High-TechOuvrir dans une nouvelle fenetre - Communauté WebmasterOuvrir dans une nouvelle fenetre - Communauté InformatiqueOuvrir dans une nouvelle fenetre - Comparateur de prixOuvrir dans une nouvelle fenetre

Rano | Jean
Modérateur

Photo de Rano

Inscrit le : 13/04/2005

# Le 10/06/2010 à 09:03

Je pensais que c'était bloqué aussi. Je testerai ça

Chambres d'hote tavelOuvrir dans une nouvelle fenetre
Séjours en provenceOuvrir dans une nouvelle fenetre
Forum mariageOuvrir dans une nouvelle fenetre

Répondre

Vous ne pouvez pas participer au forum, car votre inscription n'a pas été validée. Pour vous faire valider en tant que Membre, cliquez ici.

© MHN - Tous droits réservés | CNIL N°844440 | 23/11/2024 22:38:59 | Généré en 10.19ms | Contacts | Mentions légales |