Description de l'hébergement du forum (pour les geeks...)

Un problème concernant le site ? Des suggestions ou des idées, pas de panique, c'est ici !
Avatar de l’utilisateur
schwomp
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Moto(s) : SV 650 S (un bi qu'il est bien !)
Signe particulier : Intégriste (mais j'me soigne...)
Localisation : Quimper
Messages : 2992
Inscription : 31 déc. 1976, 22:59

Description de l'hébergement du forum (pour les geeks...)

06 juin 2012, 03:26

Hello ! :)

Pour ceux que ça intéresse, et maintenant que tout est (presque !) en place, voyons plus en détails comment est hébergé le forum.

EDIT : la plate-forme d'hébergement a pas mal évolué depuis ce post : je vais faire un autre topic actualisé avec le retour d'expérience.

A) les serveurs

Le service est composé de 4 serveurs dont 2 principaux :

1) serveur primaire (www1) - c'est la machine qui bosse en temps normal et qui assure la visibilité du forum, la gestion des mails, etc.

2) serveur secondaire (www2) - machine prête à l'emploi en cas de panne du serveur primaire et qui exécute des services additionnels tels que les DNS secondaires ou le serveur de mail secondaire.

3) serveur de développement (dev) - machine qui sert lors des phases de programmation. Je fais les tests dessus et une fois que tout est ok, les fichiers sont synchronisés avec le serveur primaire.

4) serveur de sauvegardes (backup) - mini-PC qui sert de stockage afin d'archiver les données.

Le serveur primaire est situé à Vitry-Sur-Seine, le serveur secondaire est présent à Roubaix, enfin, les serveurs de développement ainsi que de sauvegarde sont situés près de Saint Malo.

La localisation des serveurs est importante : si un datacenter entier est impacté (genre une panne électrique généralisée, voir Panne monstre sur Internet), il y a peu de chance que ce soit le cas 250 kilomètres plus loin. (Ou alors on nous a balancé une bombe atomique sur le coin de la tronche et là, le fait que le forum ne soit plus en ligne, on s'en tape un peu...)

Pour rappel, un datacenter c'est un bâtiment où sont parquées (en rangs d'oignons) des milliers de machines.

Avant, ça ressemblait à peu près à ça, principalement des PC "standard" :



Mais depuis quelques années, et afin d'augmenter la rentabilité, la taille des serveurs à considérablement diminuée afin d'augmenter la densité au m² :



Donc, pour résumer, un serveur dédié c'est tout simplement une machine aux dimensions réduites, entassée dans une baie, et disposant d'une bande passante sympathique : entre 100 Mbit/s et 1 Gbit/s généralement.

B) le système d'exploitation

Sur chaque serveur est installé Proxmox VE 2 : c'est une solution de virtualisation Open-Source basée sur la distribution Debian.

http://fr.wikipedia.org/wiki/Proxmox_VE

La virtualisation permet d'exécuter, sur un même serveur physique, plusieurs serveurs virtuels gérant des tâches distinctes : du coup, au lieu d'avoir X machines physiques à administrer, on peut virtualiser le tout sur un même serveur, à condition bien sûr d'avoir les ressources nécessaires (mémoire, processeur, disque dur).

Mais ce qui m'intéressait surtout, c'était la partie gérée par OpenVZ car cela permet de faire (en langage barbare) de la "containerization", c'est à dire de la virtualisation par containeurs : toutes les machines virtuelles utilisent le même noyau Linux, celui du système hôte, car il n'y a pas d'émulation complète.

En résumé, tout fonctionne sous Linux.

C) les machines virtuelles (VM)

Chaque serveur physique fait tourner au minimum 5 serveurs virtuels, c'est le socle commun, et j'ai voulu qu'il soit le plus simple possible. D'autres machines virtuelles viennent s'ajouter mais ce n'est pas pertinent.

Voici les grandes lignes :

1) serveur DNS (interne)

Il s'agit d'un serveur DNS qui est seulement utilisé par les autres VMs. Il résout les requêtes en mode récursif et stocke en cache les résultats.

Chaque machine virtuelle ayant une adresse IP non routable, il gère également les zones DNS utilisées en internet afin que l'on puisse s'y retrouver facilement avec des FQDN.

2) serveur SQL (interne)

Cette VM s'occupe des bases de données, rien de spécial à signaler.

La plupart du temps ce service traite une petite centaine de requêtes par seconde mais quand il y a un pic au niveau du trafic, cela peut rapidement monter à 2500 requêtes/s.

La majorité des bases de données actives tiennent dans le cache donc les perfs sont plutôt bonnes. Toute requête qui prend plus d'une seconde pour s'exécuter est signalée dans un fichier log à part qui m'est ensuite envoyé par mail.

3) serveur DNS (public)

Le serveur primaire s'occupe du NS primaire, le serveur secondaire du NS secondaire, logique.

Le principal intérêt de gérer les zones DNS est que tout est centralisé : en cas changement global (pour basculer les services sur le serveur secondaire par exemple), tout peut se faire en quelques minutes depuis une seule et même interface d'administration.

En temps normal, le DNS secondaire se synchronise avec le serveur principal dès que celui-ci envoie des notifications pour informer que des changements ont eu lieu au niveau des zones DNS.

En cas de défaillance du DNS primaire, il est possible de reprendre rapidement la main avec le DNS secondaire en basculant les zones esclaves en zones maitres.

4) serveur de mails (public)

Comme pour les DNS, le serveur primaire s'occupe du serveur de mail primaire tandis que le serveur secondaire s'occupe du MX secondaire.

Cette VM assure l'envoi (SMTP), la réception (POP/IMAP), la vérification ou l'ajout de signatures (DKIM) et enfin le filtrage (greylisting & anti-spam) des mails.

L'envoi comme la réception des mails peut se faire de manière chiffrée (TLS ou SSL) mais ce n'est pas obligatoire.

Pour l'instant le serveur SMTP ne vérifie pas les enregistrements SPF des émetteurs mais je vais me pencher sur le sujet, tout comme sur l'implémentation du protocole DMARC.

En cas d'indisponibilité du serveur de mail primaire, le MX secondaire va réceptionner temporairement les mails et une fois que le service sera rétabli, il va renvoyer les mails vers le MX primaire.

La cadence d'émission des mails est contrôlée afin de ne pas envoyer trop de mails simultanément. Cela permet à des sites mal fichus de "bourrer" la file d'attente du serveur de mails (lors d'un mailing par exemple) sans que cela ne pose de problème car les mails partiront de manière régulière et toujours à la même vitesse.

5) serveur web (public)

Cette dernière VM assure l'affichage des sites et donc du forum.

Rien de spécial, c'est un serveur web classique (Apache) qui fait tourner PHP en mode CGI, les perfs sont amélioriées grâce à un cache d'opcode (APC) ainsi que d'un cache mémoire (Memcached).

D) les sauvegardes

Chaque machine virtuelle est sauvegardé 4 fois par jour et le delta est répliqué sur le serveur secondaire.

Ensuite, chaque machine virtuelle sauvegarde elle-même les fichiers nécessaires à son bon fonctionnement (configuration, données, logs, etc) et les backups sont également répliqués sur le serveur secondaire.

Enfin, de temps en temps je fais le ménage dans les sauvegardes et les données pertinentes sont stockées sur le serveur de sauvegarde.

Comme l'intégralité des données du serveur primaire est répliquée régulièrement sur le serveur secondaire, ce dernier peut prendre la relève à tout moment, moyennant quelques modifications et des changements au niveau des DNS.

En résumé, ce n'est pas de la haute disponibilité mais au moins ça permet de sauver les meubles.

E) Les problèmes rencontrés

* On peut affecter un quota d'espace disque à chaque machine virtuelle mais quand des dizaines de milliers de liens hard sont présents, le calcul des quotas est trèèèèèèès long.

* Bien que la sauvegarde et la restauration à chaud des machines virtuelles fonctionne, il y a des messages d'erreurs en provenance du noyau. C'est en cours d'investigation.

* Si une machine virtuelle perd la "boule" pour une raison ou une autre, il n'est pas toujours possible de la supprimer (pour l'instant j'ai pas trouvé donc je cherche)

* Le fait d'affecter une IP non routable à chaque machine virtuelle complique pas mal la gestion du routage : il faut jongler avec des règle DNAT et SNAT, pas très pratique.

* si on fait un mount bind entre deux machine virtuelles, cela pose problème lors de l'arrêt de la VM "source". Rien de dramatique, faut juste le prendre en compte.

Sinon rien à signaler.

F) le programme pour la suite

Pour l'instant c'est en stand-by car j'ai d'autres chats à fouetter mais en vrac, dans les cartons, il y a :

* Revoir toutes les règles fail2ban
* Installation d'un reverse proxy
* Installation d'un IPBX
* Installation d'un système de monitoring pro-actif
* Finalisation de la conf des VPNs entre les serveurs
* etc...

Voilà pour le tour d'horizon global. :wink:

A+
Avatar de l’utilisateur
dnstouron
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Contact :
Moto(s) : ZZR1100 D1 & GPZ500-E10
Signe particulier : regardez mon avatar :)
Localisation : A la campagne dans 28 proche Dreux
Messages : 10362
Inscription : 16 mai 2010, 17:36

Re: Description de l'hébergement du forum (pour les geeks...

06 juin 2012, 08:19

Merci pour ces précisions et explications :super:
Image
ZZR un jour, ZZR toujours
Club des 100 000
POST PouAaAAAAaaaa !!!
se
sergejbteam

Re: Description de l'hébergement du forum (pour les geeks...

06 juin 2012, 08:48

j'ai po encore tous lu mais très intéressant !!! merci ;)
Avatar de l’utilisateur
Titi_ZZR
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Localisation : Paris - GPZ 500
Messages : 1578
Inscription : 17 juin 2008, 16:59

Re: Description de l'hébergement du forum (pour les geeks...

06 juin 2012, 09:44

Ça a l'air d'être du costaud !

Féloches pour toute l'archi.
Kawasaki ZZR 1100, le seul TGV sans réservation.
Avatar de l’utilisateur
goldo
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Moto(s) : GPZ
Messages : 4971
Inscription : 25 oct. 2011, 21:52

Re: Description de l'hébergement du forum (pour les geeks...

06 juin 2012, 11:03

Bonjour .
C'est vraiment complexe , drôle de gestion et sacrées responsabilités. :clap2: :clap2: .
Avatar de l’utilisateur
Keryann
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Contact :
Moto(s) : 500 GPZ 1995; 500GPZ 2002
Localisation : Ardennes, Rethel
Messages : 1453
Inscription : 29 juil. 2011, 14:02

Re: Description de l'hébergement du forum (pour les geeks...

06 juin 2012, 12:02

Cool merci pour les explications Schwomp,
maintenant tu nous apprend à pirater??? :mrgreen:
La 1ère est toujours en bas.
Avatar de l’utilisateur
kawasutra
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Moto(s) : 500GPZ-post Retour aux sources!
Signe particulier : Vieux con :-)
Localisation : Au dessus de mes pieds (sud-42)
Messages : 5845
Inscription : 19 août 2011, 12:11

Re: Description de l'hébergement du forum (pour les geeks...

06 juin 2012, 16:57

Autant de serveurs, c'a me donne soif ! :dribble:
Purée, c'a bouge vite l'informatique.
Formé dans l'admin système et réseau en 2002, pourtant, j'ai pas tout compris :oops:
Bon, le principal, c'est que toi tu captes ! :coucou:
" À celui qui dit la vérité, offre lui un cheval, il en aura besoin pour s’enfuir." (proverbe Arabe)
Image
Comprendre la situation du covid viewtopic.php?f=71&t=22974 et en Ukraine:
viewtopic.php?f=71&t=23479
Avatar de l’utilisateur
cwalker9
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Moto(s) : gpz 94, gpz 90, gpx 89, cb twin 79
Signe particulier : Dénicheur de scoops
Messages : 1647
Inscription : 29 juil. 2009, 16:52

Re: Description de l'hébergement du forum (pour les geeks...

06 juin 2012, 23:03

stop!!!!!!! reprenons pour que je comprennes : c'est quoi un "hébergement de forum"? :mrgreen:
non je plaisante, j'y comprends rien mais en tout cas bravo pour tout :D
ce que je retiens, c'est que c'est à la base grâce à toi qu'on profite de notre forum chéri sans se soucier de rien, et pour ça :clap2: :clap2: :clap2:
la théorie, c'est quand rien ne marche mais tout le monde sait pourquoi; la pratique, c'est quand tout marche mais personne ne sait pourquoi; moi j'associe les deux : rien ne marche, et je sais pas pourquoi. (pis de toute façon, je n'aurai bientôt plus le temps de chercher....)
ImageImage
Avatar de l’utilisateur
arti
Ed'Bracame Team racing
Ed'Bracame Team racing
Moto(s) : gpz 500s
Localisation : alpes de haute provence
Messages : 704
Inscription : 04 juin 2012, 09:39

Re: Description de l'hébergement du forum (pour les geeks...

06 juin 2012, 23:27

merci tout plein
un bon motard est un vieux motard!!!Image
Avatar de l’utilisateur
schwomp
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Moto(s) : SV 650 S (un bi qu'il est bien !)
Signe particulier : Intégriste (mais j'me soigne...)
Localisation : Quimper
Messages : 2992
Inscription : 31 déc. 1976, 22:59

Re: Description de l'hébergement du forum (pour les geeks...

06 juin 2012, 23:57

Plop ! :D
Titi_ZZR a écrit :Ça a l'air d'être du costaud !
En fait non, c'est une petite "configuration". (Si, si...)

L'idéal serait de faire de la haute-disponibilité mais cela implique immédiatement des coûts supplémentaires... :?

Le principal problème quand tu loues des serveurs dédiés (au lieu de louer un quart de baie, par exemple, et d'y installer tes serveurs), c'est que tu es tributaire des fonctionnalités/restrictions du prestataire choisi. Donc, au final, pour être le plus "libre" possible, il ne faut en aucun cas reposer sur les services proposés.

C'est dans cette optique que j'ai réorganisé les serveurs : pas de dépendances, on peut bouger les services quand on veux.
Keryann a écrit :maintenant tu nous apprend à pirater??? :mrgreen:
Bon... Si tu veux t'amuser, il y a slowloris par exemple.

Je te rappelle quand même que jouer avec ce genre de script n'est pas "légal" et que si tu fais le con avec, ça va en énerver certains ! :mrgreen:

(Pour l'instant le serveur n'est pas protégé contre ce type d'attaque mais ça va être corrigé d'ici peu.)

Dernier point, si tu utilises des scripts kiddies, ne le fais pas depuis ta connexion Internet car tu vas te faire repérer comme un mickey...
kawasutra a écrit :Purée, c'a bouge vite l'informatique.
Oui et non : une fois que tu as les bases, se mettre à jour c'est pas trop compliqué en lisant les docs. Les logiciels évoluent mais les concepts principaux restent sensiblement les mêmes.

Au début je me précipitais sur les dernières nouveautés mais avec le temps, c'est devenu gonflant car il y a trop d'incertitudes (manque de visibilité) avec les différentes technos émergentes (dont la moitié qui sont des "vaporware").

Par exemple, le réseau c'est pas trop ma tasse de thé, j'ai juste quelques notions qui me permettent de comprendre les grandes lignes mais en cas de besoin, je me sers de Google pour approfondir le sujet en question.
cwalker9 a écrit :stop!!!!!!! reprenons pour que je comprennes : c'est quoi un "hébergement de forum"? :mrgreen:
Sachant que le serveur secondaire n'en branle pas une, je cogite sur la question.

Plus de news bientôt ! :wink:

A+
Avatar de l’utilisateur
Keryann
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Contact :
Moto(s) : 500 GPZ 1995; 500GPZ 2002
Localisation : Ardennes, Rethel
Messages : 1453
Inscription : 29 juil. 2011, 14:02

Re: Description de l'hébergement du forum (pour les geeks...

07 juin 2012, 19:38

schwomp a écrit :Plop ! :D
Keryann a écrit :maintenant tu nous apprend à pirater??? :mrgreen:
Bon... Si tu veux t'amuser, il y a slowloris par exemple.

Je te rappelle quand même que jouer avec ce genre de script n'est pas "légal" et que si tu fais le con avec, ça va en énerver certains ! :mrgreen:

(Pour l'instant le serveur n'est pas protégé contre ce type d'attaque mais ça va être corrigé d'ici peu.)
t'as peur hein t'as peur :lol: :lol: :lol:
Je vais reagrder ça, les scripts et tout le bazar je trouve ça laborieux mais j'aime bien savoir :mrgreen:
Dernier point, si tu utilises des scripts kiddies, ne le fais pas depuis ta connexion Internet car tu vas te faire repérer comme un mickey...
Eh oh tu me parle meilleur suis pas mickey moua :lol: :lol:
C'est quoi kinddies moi je connais kinder mais bon :heu: :heu:
La 1ère est toujours en bas.
Avatar de l’utilisateur
cwalker9
Membre à vie du GPZ Dream Team :D
Membre à vie du GPZ Dream Team :D
Moto(s) : gpz 94, gpz 90, gpx 89, cb twin 79
Signe particulier : Dénicheur de scoops
Messages : 1647
Inscription : 29 juil. 2009, 16:52

Re: Description de l'hébergement du forum (pour les geeks...

07 juin 2012, 20:27

schwomp a écrit :Plop ! :D

cwalker9 a écrit :stop!!!!!!! reprenons pour que je comprennes : c'est quoi un "hébergement de forum"? :mrgreen:
Sachant que le serveur secondaire n'en branle pas une, je cogite sur la question.

Plus de news bientôt ! :wink:

A+
et oh!!! tu m'appelle "serveur secondaire" maintenant :heu: :heu: :mrgreen:
la théorie, c'est quand rien ne marche mais tout le monde sait pourquoi; la pratique, c'est quand tout marche mais personne ne sait pourquoi; moi j'associe les deux : rien ne marche, et je sais pas pourquoi. (pis de toute façon, je n'aurai bientôt plus le temps de chercher....)
ImageImage
Avatar de l’utilisateur
jennygpz500
Administratrice
Administratrice
Moto(s) : V-Strom 650 (03) - Gpz 500 (90)
Signe particulier : Pizza Givi/ born to kill R.....t !
Localisation : Merville LE (grand) Noooooooord!! (59)
Messages : 15950
Inscription : 25 nov. 2007, 01:00

Re: Description de l'hébergement du forum (pour les geeks...

08 juin 2012, 09:11

J'avais presque compris jusqu'aux vidéos et puis il commence à parler d'oignons :heu: pc <--->

cuisine :heu: forum <---> bolognaise :heu: je vais arreter là pour aujourd'hui sinon moi aussi je vais avoir besoin d'un

système de sauvegarde :lol:

Bon remarquez y'est pas bien loin, il est à roubaix :D

Revenir à « Fonctionnement du forum »

Connexion · Inscription

Big brother

Au total, il y a 210 utilisateurs en ligne :: 3 inscrits, 0 invisible et 207 invités
Utilisateurs inscrits : Bing [Bot], Google [Bot], Skeyme
Le nombre maximal d’utilisateurs en ligne simultanément a été de 270 le 07 févr. 2024, 21:44
265167 messages
13059 sujets
6408 membres
Notre membre le plus récent est Stifion
Aucun membre ne fête son anniversaire aujourd’hui.