Chez QS, nous utilisons les conteneurs LXC

Conteneurs LXC, qu’est ce que c’est?

LXC (pour Linux Container) est un système de conteneurs par isolation de processus sous Linux. Concrètement, cela vous permet d’isoler les différentes taches qu’un serveur physique peut réaliser (emails, web, fichiers, cloud, dns, …) avec un certains nombres de droits. Cette technologie est possible depuis 2003 avec l’introduction dans les noyaux Linux de la notion des espaces de noms (namespace). Cette solution est rapide à mettre en place, flexible, consomme beaucoup moins de ressources qu’une machine virtuelle classique.

D’ailleurs, dans le jargon on parle de conteneurisation et non de virtualisation.

La conteneurisation est revenue à la mode avec des solutions comme Docker. Cette dernière est en réalité une surcouche de LXC qui la rends plus accessible.

LXC chez QS :

Nos différents services sont découpés avec LXC sur notre serveur principal, comme suit :

  • Un conteneur « Zimbra » qui gère entièrement la suite collaborative
  • Un conteneur « Web » qui gère :
    • Plusieurs sites de nos clients et internes avec le combo Apache2/PHP5
    • Un serveur FTP pour gérer les sites
    • Le système de partage Owncloud
  • Un conteneur « MySQL » qui gère le système de base de données du même nom.
  • Un conteneur « Gogs » gérant l’outil du même nom (gestion de répertoires GIT)

Ainsi, quand vous accédez à cette page, votre requête est redirigée sur notre conteneurs dédié aux sites web, les accès et redirections étant gérés par le pare-feu de la machine mère.
LXC nous permet une plus grande souplesse dans l’administration des services. D’ailleurs, il est possible de découper davantage une architecture comme celle décrite ci-dessus.
Nous utilisons également LXC dans certaines de nos solutions.

Les machines virtuelles sont elles destinées à disparaitre?

Non. Les deux technologies sont utiles mais pour des usages différents. On utilisera les conteneurs lorsque :

  • La machine dispose de ressources limitées mais que vous souhaitez apporter une couche de sécurité supplémentaire
  • Dans un environnement de développement ou de tests. La rapidité de mise en place étant un atout.
  • Pour un environnement de production où vous avez un contrôle total (comme le serveur dédié de votre entreprise).

Dans les autres cas, il vaut mieux privilégier des machines virtuelles propulsée par QEMU, KVM ou des solutions propriétaires comme VMware ou Hyper-V. Ne vendez pas les conteneurs comme des VPS low-cost, vous risqueriez d’avoir des surprises au bout de quelques temps !

Si vous souhaitez approfondir le sujet des conteneurs :