Construction d’une armoire et installation du serveur

../../../../2013/10/28/construction-installation-serveur/
Antoine Van-Elstraete (antoine@van-elstraete.net)
lundi 28 octobre 2013





6 min.

Image d'illustration

N.B : Article récupéré depuis mon ancien blog WordPress. Les images sont manquantes.

Cet article fait partie de la série sur l’auto-hébergement.

Ce site est auto-hébergé sur un serveur Dell au format 2U. C’est à dire que c’est une machine qui mesure 8,5 cm de haut, 48 cm de large et 70 cm de profondeur, pour un poids d’environ 25 kg. Autant dire qu’on ne va pas simplement le poser sur le bureau…

J’ai donc entrepris de construire un petit meuble pour le ranger, avec ses accessoires (onduleur, disques externes, commutateur réseau, …).

Direction une grande enseigne de bricolage, pour acheter quelques planches à la découpe, et des roulettes qui permettront de déplacer facilement l’engin si besoin. Et voilà, une demie journée de travail plus tard, l’armoire est prête. Dans sa première version, il n’y avait pas le support central, qui évite que les planches ne cintrent sous le poids.

J’ai également modifié la ventilation globale :

  • changement des ventilateurs du système par des modèles plus silencieux (mais moins efficaces) ;
  • ajout d’une sortie d’air chaud par le dessus (ventilateur de 120x120) ;
  • ajoute de deux entrées d’air ambiant sur le côté, une à l’avant et l’autre à l’arrière de la machine.

Finalement, rangement des câbles et accessoires pour donner au final un pratique meuble de serveur.

Pour information, à pleine charge (compilation importante, ou conversion vidéo), les températures maximales relevées sont de 70 °C pour le CPU, 55 °C dans la partie enfermant le serveur, avec une température ambiante de 37 °C, en plein été.

Internet

La connection en internet et le serveur est effectué via une ligne ADSL, fournit par OVH. Celle-ci m’attribut une IPv4 et un groupe d’IPv6 (techniquement, un /64). Le débit montant est de 811 kbps réel (1 mbps théorique), soit environ 100 ko/s. Ce débit, bien que faible, permet dejà de faire pas mal de choses.

Le serveur

Parlons un peu du serveur en lui-même.

Hardware

C’est un Dell PowerEdge 2650 :

  • 2 processeurs Intel Xéon @ 3,06 Ghz, hyperthreadés, soit 4 processeurs virtuels ;
  • 3 Go de mémoire vive (6x512 Mo) ;
  • 4 disques interne d’environ 36 Go en SCSI ;
  • 3 disques externe de 1 To (USB 2, via un adaptateur PCI-X) ;
  • Ethernet Gigabit.

Il faut garder à l’esprit que c’est une machine de recyclage, d’où des spécificités un peu anciennes. Néanmoins, cela reste une machine très robuste et plutôt puissante. De plus un onduleur est là pour gérer les variations et coupures électriques en amont.

Software

Rien d’extraordinaire, une distribution Arch Linux.

Configuration

Pour gérer les disques durs, j’utilise LVM. J’ai un peu testé le RAID matériel de Dell, ça a été pour moi une catastrophe… Avec LVM, je peux très facilement gérer l’espace disponible pour les partitions, l’agrandir à chaud par exemple. De plus, LVM permet de faire du RAID, j’utilise particulièrement du RAID1 et du RAID5, pour la redondance. Voici mon schéma de partition :

  • boot : sur un partition séparée, la seule qui ne fait pas partie du LVM (250 Mo) ;
  • root : LVM en RAID1 sur deux disques internes (8 Go) ;
  • var : LVM en RAID5 réparti sur les 4 disques internes (5 Go) ;
  • home : LVM en RAID5 réparti sur les 4 disques internes (5 Go) ;
  • srv : LVM en RAID5 réparti sur les 4 disques internes (65 Go) ;
  • films : LVM s’étendant sur 2 disques externes (1,5 To) ;
  • musiques : LVM s’étendant sur 1 disque externe (150 Go) ;
  • backups : LVM en RAID1 sur deux disques externes (10 Go) ;

L’addition de tous ces espaces (1,7 To) est inférieure à l’addition de tout l’espace disponible (théoriquement 2,8 To), cela me permet d’avoir de la place pour agrandir une partition en cas de necessité.

J’ai scindé ces volumes en deux groupes : Stockage (contenant les disques externes) et PE2650-FRONT (contenant les disques internes). Ce qui donne (pvs) :

PV         VG           Fmt  Attr PSize   PFree
/dev/sda1  PE2650-FRONT lvm2 a--   33,91g 916,00m
/dev/sdb1  PE2650-FRONT lvm2 a--   34,25g   1,23g
/dev/sdc1  PE2650-FRONT lvm2 a--   33,91g   8,90g
/dev/sdd1  PE2650-FRONT lvm2 a--   34,00g   8,98g
/dev/sde1  Stockage     lvm2 a--  931,51g 921,50g
/dev/sdf1  Stockage     lvm2 a--  931,51g      0
/dev/sdg2  Stockage     lvm2 a--  931,51g  92,01g

N.B. : les volumes « films » et « musiques » ne sont pas là pour inciter au téléchargement illégal. Par exemple, j’ai de nombreux disques vinyl que je numérise pour les écouter dans la voiture ou sur la tablette. De même concernant mes DVD.

Politique de sauvegarde

Avoir toutes ces données centralisées, c’est très pratique, mais que ce passe-t-il en cas de crash d’un disque dur ? Tout d’abord, l’utilisation de RAID permet de diminuer la casse grâce à la redondance de donnée : RAID1 conserve un mirroir parfait entre deux disques, RAID5 permet la tolérance d’un disque en panne dans le groupe. Dans ma configuration tous les volumes critiques tolèrent une panne de disque dur. La panne est rapidement identifiée grâce aux outils SMART (test complet hebdomadaire et envoie de mail d’alerte à la moindre erreur d’E/S). Le remplacement du disque peut être effectué directement, sans nécessité une coupure du serveur, grâce à la souplesse de LVM et de SCSI. Néanmoins on remarquera que « films » et « musiques » n’ont aucune politique de sauvegarde dans cette configuration. Si l’un des disques hébergeant ces volumes devient inaccessilble, ces volumes deviennent également inaccessible. L’ajout de nouveaux disques dans le groupe « Stockage » pourrait résoudre ce problème. Transformer un volume LVM en LVM-RAID5 (par exemple) est très simple et se fait à chaud.

De plus  il existe un volume, « backups », qui contient des sauvegardes des fichiers importants. Pour cela, j’utilise « backup-manager » qui gère cette sauvegarde journalière. Le volume « backup » étant lui-même en RAID1, ces données sont bien sécurisées.

Mais je suis aller encore plus loin, car imaginons un incendie ou un incident électrique grave : tout le matériel est détruit. Et bien dans cette situation, je peux récupérer le contenu du volume « backups » qui est envoyé sur un serveur extérieur, en l’occurence dans le cloud Amazon S3. De plus, certains gros répertoires où la méthode de sauvegarde n’est pas adaptée (par exemple celui contenant toutes les photos, ~30 Go), bénéficient d’une synchronisation journalière sur S3 (au moyen de s3cmd).

J’ai déjà effectué une simulation de ce scénario « destruction totale » : en 48H les services web et mails sont de nouveau en ligne :

  1. récupération des données depuis S3 (la partie la plus longue !) ;
  2. lancement d’une machine virtuelle sur un autre ordinateur ;
  3. réinstallation de Arch Linux à l’identique du serveur grâce à la liste des paquets sauvegardés et reconfiguration très rapide car « /etc » également sauvegardé ;
  4. mise à jour des DNS.

Durant le downtime, un MX secondaire s’occupe de récupérer les courriels et les stocke en attedant le retour du serveur de principal. La seule perte de données concerne la période entre deux sauvegardes : 24h.

Un article plus précis est à venir sur cette politique de sauvegarde.

Conclusion

Cette machine, mon serveur, me permet donc de nombreuses choses :

  • L’auto-hébergement de sites web ;
  • L’auto-hébergement de courriels ;
  • De service d’espace de stockage centralisé (NAS) ;
  • La mise en place d’un cloud privé ;
  • De disposer d’une puissance de calculs (par exemple, lancer des travaux de conversions vidéos du camescope (DV) vers un format plus portable (AVC)) ;
  • Proxy web / tunnel SSH, utilent dans certaines situations particulières.
 Tags